001: /*
002: * Licensed to the Apache Software Foundation (ASF) under one
003: * or more contributor license agreements. See the NOTICE file
004: * distributed with this work for additional information
005: * regarding copyright ownership. The ASF licenses this file
006: * to you under the Apache License, Version 2.0 (the
007: * "License"); you may not use this file except in compliance
008: * with the License. You may obtain a copy of the License at
009: *
010: * http://www.apache.org/licenses/LICENSE-2.0
011: *
012: * Unless required by applicable law or agreed to in writing,
013: * software distributed under the License is distributed on an
014: * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
015: * KIND, either express or implied. See the License for the
016: * specific language governing permissions and limitations
017: * under the License.
018: */
019: package org.apache.axis2.deployment;
020:
021: import junit.framework.TestCase;
022: import org.apache.axis2.AxisFault;
023: import org.apache.axis2.AbstractTestCase;
024: import org.apache.axis2.context.ConfigurationContextFactory;
025: import org.apache.axis2.description.AxisModule;
026: import org.apache.axis2.engine.AxisConfiguration;
027: import org.apache.axis2.util.Utils;
028:
029: import java.util.Iterator;
030:
031: public class ModuleversionTest extends TestCase {
032:
033: public void testDefautModuleVersion() throws AxisFault {
034: String filename = AbstractTestCase.basedir
035: + "/test-resources/deployment/moduleVersion/Test1/axis2.xml";
036: AxisConfiguration ac = ConfigurationContextFactory
037: .createConfigurationContextFromFileSystem(null,
038: filename).getAxisConfiguration();
039: assertNotNull(ac);
040: assertEquals(ac.getDefaultModuleVersion("abc"), "1.23");
041: assertEquals(ac.getDefaultModuleVersion("foo"), "0.89");
042: }
043:
044: public void testCalculateDefaultModuleVersions() throws AxisFault {
045: AxisConfiguration axisConfiguration = new AxisConfiguration();
046: AxisModule module1 = new AxisModule();
047: module1.setName("Module1");
048: axisConfiguration.addModule(module1);
049:
050: AxisModule module2 = new AxisModule();
051: module2.setName("Module2-0.94");
052: axisConfiguration.addModule(module2);
053:
054: AxisModule module3 = new AxisModule();
055: module3.setName("Module2-0.95");
056: axisConfiguration.addModule(module3);
057:
058: AxisModule module4 = new AxisModule();
059: module4.setName("Module2-0.93");
060: axisConfiguration.addModule(module4);
061:
062: AxisModule module5 = new AxisModule();
063: module5.setName("testModule-1.93");
064: axisConfiguration.addModule(module5);
065:
066: Utils.calculateDefaultModuleVersion(axisConfiguration
067: .getModules(), axisConfiguration);
068: assertEquals(module1, axisConfiguration
069: .getDefaultModule("Module1"));
070: assertEquals(module3, axisConfiguration
071: .getDefaultModule("Module2"));
072: assertEquals(module5, axisConfiguration
073: .getDefaultModule("testModule"));
074: axisConfiguration.engageModule("Module2");
075: axisConfiguration.engageModule("Module1");
076: axisConfiguration.engageModule("testModule", "1.93");
077:
078: Iterator engageModules = axisConfiguration.getEngagedModules()
079: .iterator();
080: boolean found1 = false;
081: boolean found2 = false;
082: boolean found3 = false;
083: while (engageModules.hasNext()) {
084: String name = ((AxisModule) engageModules.next()).getName();
085: if (name.equals("Module2-0.95")) {
086: found1 = true;
087: }
088: if (name.equals("Module1")) {
089: found2 = true;
090: }
091: if (name.equals("testModule-1.93")) {
092: found3 = true;
093: }
094: }
095:
096: if (!found1) {
097: fail("Didn't find Module2-0.95");
098: }
099: if (!found2) {
100: fail("Didn't find Module1");
101: }
102: if (!found3) {
103: fail("Didn't find testModule-1.93");
104: }
105: }
106:
107: public void testModuleWithSNAPSHOT() throws AxisFault {
108: AxisConfiguration axisConfiguration = new AxisConfiguration();
109: AxisModule module1 = new AxisModule();
110: module1.setName("Module1");
111: axisConfiguration.addModule(module1);
112:
113: AxisModule module2 = new AxisModule();
114: module2.setName("Module1-SNAPSHOT");
115: axisConfiguration.addModule(module2);
116:
117: AxisModule module3 = new AxisModule();
118: module3.setName("Module1-0.95");
119: axisConfiguration.addModule(module3);
120: Utils.calculateDefaultModuleVersion(axisConfiguration
121: .getModules(), axisConfiguration);
122: assertEquals(module2, axisConfiguration
123: .getDefaultModule("Module1"));
124: }
125:
126: public void testModuleWithSNAPSHOT2() throws AxisFault {
127: AxisConfiguration axisConfiguration = new AxisConfiguration();
128: AxisModule module1 = new AxisModule();
129: module1.setName("Module1-a");
130: axisConfiguration.addModule(module1);
131:
132: AxisModule module2 = new AxisModule();
133: module2.setName("Module1-a-SNAPSHOT");
134: axisConfiguration.addModule(module2);
135:
136: AxisModule module3 = new AxisModule();
137: module3.setName("Module1-a-0.95");
138: axisConfiguration.addModule(module3);
139: Utils.calculateDefaultModuleVersion(axisConfiguration
140: .getModules(), axisConfiguration);
141: Utils.calculateDefaultModuleVersion(axisConfiguration
142: .getModules(), axisConfiguration);
143: assertEquals(module2, axisConfiguration
144: .getDefaultModule("Module1-a"));
145: }
146: }
|