001/** 002 * Copyright 2005-2014 The Kuali Foundation 003 * 004 * Licensed under the Educational Community License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.opensource.org/licenses/ecl2.php 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016package org.kuali.rice.krms.impl.repository; 017 018import org.junit.Before; 019import org.junit.Test; 020import org.kuali.rice.krms.api.repository.language.NaturalLanguageTemplate; 021import org.kuali.rice.krms.test.AbstractBoTest; 022import org.kuali.rice.test.BaselineTestCase; 023 024import java.util.HashMap; 025import java.util.Map; 026 027/** 028 * @author Kuali Rice Team (rice.collab@kuali.org) 029 */ 030@BaselineTestCase.BaselineMode(BaselineTestCase.Mode.CLEAR_DB) 031public class RuleManagementIntegrationTest extends AbstractBoTest { 032 033 RuleManagementServiceImpl ruleManagementServiceImpl; 034 035 @Before 036 public void setup() { 037 ruleManagementServiceImpl = new RuleManagementServiceImpl(); 038 NaturalLanguageTemplateBoServiceImpl naturalLanguageTemplateBoServiceImpl = new NaturalLanguageTemplateBoServiceImpl(); 039 naturalLanguageTemplateBoServiceImpl.setNaturalLanguageTemplater(NaturalLanguageTemplateIntegrationGenTest.newStringReplaceTemplater()); 040 ruleManagementServiceImpl.setNaturalLanguageTemplateBoService(naturalLanguageTemplateBoServiceImpl); 041 ruleManagementServiceImpl.setDataObjectService(getDataObjectService()); // Business Object Service gets set to other Services 042 } 043 044 @Test 045 public void naturalLanguage() { 046 // create a new nlt, which we will use to get a created def, that we will add attributes to. 047 NaturalLanguageTemplateIntegrationGenTest nltTest = new NaturalLanguageTemplateIntegrationGenTest(); 048 nltTest.setup(); 049 nltTest.test_createNaturalLanguageTemplate(); 050 NaturalLanguageTemplate nlt = nltTest.getNaturalLanguageTemplate(); 051 052 // get a def from the default test. 053 NaturalLanguageTemplateBo nltBo = NaturalLanguageTemplateBo.from(nlt); 054 // add the attributes for templating 055 Map<String, String> attributes = new HashMap<String, String>(); 056 attributes.put("TEMPLATE", "template"); 057 nltBo.setAttributes(attributes); 058 059 String krmsObjectId = "ID"; 060// TODO when attributes are working correctly, the getNaturalLanguageForType should not through an exception, and the two asserts after it should pass. 061// String result = ruleManagementServiceImpl.getNaturalLanguageForType(nlt.getNaturalLanguageUsageId(), nlt.getTypeId(), krmsObjectId, nlt.getLanguageCode()); 062// assertNotNull(result); 063// assertEquals("template", result); 064 } 065} 066