001 /*
002 * Copyright 2011 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.osedu.org/licenses/ECL-2.0
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 */
016 package org.kuali.student.contract.mojo;
017
018 import java.io.File;
019 import java.util.ArrayList;
020 import java.util.List;
021 import org.junit.After;
022 import org.junit.AfterClass;
023 import org.junit.Before;
024 import org.junit.BeforeClass;
025 import org.junit.Test;
026 import static org.junit.Assert.*;
027 /**
028 *
029 * @author nwright
030 */
031 public class KSDictionaryCreatorMojoTest {
032
033 private static final String CORE_DIRECTORY =
034 "C:/svn/ks-1.3/ks-core/ks-core-api/src/main/java";
035 // "C:/svn/maven-dictionary-generator/trunk/src/main/java/org/kuali/student/core";
036 private static final String COMMON_DIRECTORY =
037 "C:/svn/ks-1.3/ks-common/ks-common-api/src/main/java";
038 private static final String ENROLL_SRC_MAIN = "C:/svn/ks-1.3/ks-enroll/ks-enroll-api/src/main";
039 private static final String ENROLL_JAVA_DIRECTORY = ENROLL_SRC_MAIN + "/java";
040 private static final String ENROLL_RESOURCES_DIRECTORY = ENROLL_SRC_MAIN + "/resources";
041 ;
042 private static final String LUM_DIRECTORY =
043 "C:/svn/ks-1.3/ks-lum/ks-lum-api/src/main/java";
044 private static final String RICE_DIRECTORY =
045 "C:/svn/rice/rice-release-1-0-2-1-br/api/src/main/java";
046 private static final String TEST_SOURCE_DIRECTORY =
047 "src/test/java/org/kuali/student/contract/model/test/source";
048 private static final String XML_DICTIONARY_DIRECTORY = "target/xml/dictionary";
049 private static final String RESOURCES_DIRECTORY =
050 // "C:/svn/student/ks-core/ks-core-api/src/main/java";
051 "src/main/resources";
052 private static final String PESC_CORE_MAIN = RESOURCES_DIRECTORY
053 + "/CoreMain_v1.8.0.xsd";
054
055 public KSDictionaryCreatorMojoTest() {
056 }
057
058 @BeforeClass
059 public static void setUpClass() throws Exception {
060 }
061
062 @AfterClass
063 public static void tearDownClass() throws Exception {
064 }
065
066 @Before
067 public void setUp() {
068 }
069
070 @After
071 public void tearDown() {
072 }
073
074 /**
075 * Test of execute method, of class KSDictionaryCreatorMojo.
076 */
077 @Test
078 public void testExecute() throws Exception {
079 System.out.println("execute");
080 List<String> srcDirs = new ArrayList<String>();
081 // srcDirs.add(TEST_SOURCE_DIRECTORY);
082 srcDirs.add(ENROLL_JAVA_DIRECTORY);
083 // srcDirs.add(CORE_DIRECTORY);
084 // srcDirs.add(COMMON_DIRECTORY);
085 // srcDirs.add(LUM_DIRECTORY);
086 KSDictionaryCreatorMojo instance = new KSDictionaryCreatorMojo();
087 instance.setSourceDirs(srcDirs);
088 instance.setOutputDirectory(new File (XML_DICTIONARY_DIRECTORY));
089 // Be careful when you uncomment this one
090 // instance.setOutputDirectory(new File(ENROLL_RESOURCES_DIRECTORY));
091 instance.setWriteManual(true);
092 instance.setWriteGenerated(false);
093 List<String> classNames = new ArrayList();
094 // Atp
095 classNames.add("AtpInfo");
096 classNames.add("MilestoneInfo");
097 classNames.add("AtpMilestoneRelationInfo");
098 classNames.add("AtpAtpRelationInfo");
099 // Acal
100 classNames.add("AcademicCalendarInfo");
101 classNames.add("CampusCalendarInfo");
102 classNames.add("TermInfo");
103 classNames.add("RegistrationDateGroupInfo");
104 classNames.add("HolidayInfo");
105 classNames.add("KeyDateInfo");
106 // LPR
107 classNames.add("LuiPersonRelationInfo");
108 // Hold
109 classNames.add("HoldInfo");
110 classNames.add("IssueInfo");
111 classNames.add("RestrictionInfo");
112 // LUI
113 classNames.add("LuiInfo");
114 classNames.add("LuiLuiRelationInfo");
115 classNames.add("LuiCapacityInfo");
116 // Course Offering
117 classNames.add("CourseOfferingInfo");
118 classNames.add("ActivityOfferingInfo");
119 classNames.add("RegistrationGroupInfo");
120 classNames.add("SeatPoolDefinitionInfo");
121 instance.setClassNames(classNames);
122 instance.execute();
123 assertTrue(new File(instance.getOutputDirectory() + "/" + "ks-AtpInfo-dictionary.xml").exists());
124 }
125 }