/* * The Kuali Financial System, a comprehensive financial management system for higher education. * * Copyright 2005-2014 The Kuali Foundation * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ package org.kuali.kfs.coa.businessobject; import java.util.Collection; import java.util.HashMap; import java.util.List; import java.util.Map; import org.kuali.kfs.sys.ConfigureContext; import org.kuali.kfs.sys.KFSConstants; import org.kuali.kfs.sys.context.KualiTestBase; import org.kuali.kfs.sys.context.SpringContext; import org.kuali.rice.krad.service.BusinessObjectService; @ConfigureContext public class AccountDelegateModelTest extends KualiTestBase { AccountDelegateModelDetail model; @Override protected void setUp() throws Exception { super.setUp(); Map<String, String> fieldValues = new HashMap<String, String>(); fieldValues.put(KFSConstants.CHART_OF_ACCOUNTS_CODE_PROPERTY_NAME, "BL"); fieldValues.put(KFSConstants.ORGANIZATION_CODE_PROPERTY_NAME, "CLAS"); List<AccountDelegateModelDetail> results = (List<AccountDelegateModelDetail>) SpringContext.getBean(BusinessObjectService.class).findMatching(AccountDelegateModelDetail.class, fieldValues); assertFalse("no models found", results.isEmpty()); model = results.get(0); } public void testSaveModel() { String name = model.getAccountDelegateModelName(); AccountDelegateModelDetail routingModel = new AccountDelegateModelDetail(); routingModel.setAccountDelegateModelName(name); routingModel.setChartOfAccountsCode(model.getChartOfAccountsCode()); routingModel.setOrganizationCode(model.getOrganizationCode()); routingModel.setAccountDelegateUniversalId(model.getAccountDelegateUniversalId()); routingModel.setFinancialDocumentTypeCode("GDLM"); SpringContext.getBean(BusinessObjectService.class).save(routingModel); assertTrue(loadModel(name, model.getClass())); } private boolean loadModel(String name, Class clazz) { Map<String, String> fieldValues = new HashMap<String, String>(); fieldValues.put("accountDelegateModelName", name); Collection<AccountDelegateModelDetail> foundModel = SpringContext.getBean(BusinessObjectService.class).findMatching(clazz, fieldValues); // List<AccountDelegateGlobalDetail> delegateGlobals = new ArrayList<AccountDelegateGlobalDetail>(); // // for (AccountDelegateModelDetail model : foundModel) { // delegateGlobals.add(new AccountDelegateGlobalDetail(model)); // } return (foundModel != null && !foundModel.isEmpty()); } }