Return-Path: Delivered-To: apmail-geronimo-scm-archive@www.apache.org Received: (qmail 63490 invoked from network); 15 Apr 2006 19:33:00 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 15 Apr 2006 19:33:00 -0000 Received: (qmail 19838 invoked by uid 500); 15 Apr 2006 19:32:59 -0000 Delivered-To: apmail-geronimo-scm-archive@geronimo.apache.org Received: (qmail 19830 invoked by uid 500); 15 Apr 2006 19:32:59 -0000 Mailing-List: contact scm-help@geronimo.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Reply-To: dev@geronimo.apache.org List-Id: Delivered-To: mailing list scm@geronimo.apache.org Received: (qmail 19819 invoked by uid 99); 15 Apr 2006 19:32:59 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 15 Apr 2006 12:32:59 -0700 X-ASF-Spam-Status: No, hits=-9.4 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [209.237.227.194] (HELO minotaur.apache.org) (209.237.227.194) by apache.org (qpsmtpd/0.29) with SMTP; Sat, 15 Apr 2006 12:32:58 -0700 Received: (qmail 63341 invoked by uid 65534); 15 Apr 2006 19:32:37 -0000 Message-ID: <20060415193237.63340.qmail@minotaur.apache.org> Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r394359 - in /geronimo/branches/1.1/modules/upgrade/src: java/org/apache/geronimo/upgrade/ test-data/ test/org/apache/geronimo/upgrade/ Date: Sat, 15 Apr 2006 19:32:36 -0000 To: scm@geronimo.apache.org From: djencks@apache.org X-Mailer: svnmailer-1.0.7 X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Author: djencks Date: Sat Apr 15 12:32:34 2006 New Revision: 394359 URL: http://svn.apache.org/viewcvs?rev=394359&view=rev Log: upgrade dependencies, improve tests Added: geronimo/branches/1.1/modules/upgrade/src/test-data/appclient_dep_1.xml geronimo/branches/1.1/modules/upgrade/src/test-data/appclient_dep_1_result.xml geronimo/branches/1.1/modules/upgrade/src/test-data/appclient_ejb_1_result.xml Modified: geronimo/branches/1.1/modules/upgrade/src/java/org/apache/geronimo/upgrade/Upgrade1_0To1_1.java geronimo/branches/1.1/modules/upgrade/src/test/org/apache/geronimo/upgrade/Upgrade1_0To1_1Test.java Modified: geronimo/branches/1.1/modules/upgrade/src/java/org/apache/geronimo/upgrade/Upgrade1_0To1_1.java URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/upgrade/src/java/org/apache/geronimo/upgrade/Upgrade1_0To1_1.java?rev=394359&r1=394358&r2=394359&view=diff ============================================================================== --- geronimo/branches/1.1/modules/upgrade/src/java/org/apache/geronimo/upgrade/Upgrade1_0To1_1.java (original) +++ geronimo/branches/1.1/modules/upgrade/src/java/org/apache/geronimo/upgrade/Upgrade1_0To1_1.java Sat Apr 15 12:32:34 2006 @@ -102,6 +102,7 @@ insertEnvironment(configId, parentId, cursor, ENVIRONMENT_QNAME, suppressDefaultEnvironment); } + } } @@ -119,6 +120,7 @@ environment.addDependency(parentId, ImportType.ALL); } environment.setSuppressDefaultEnvironment(suppressDefaultEnvironment); + extractDependencies(cursor, environment); EnvironmentType environmentType = EnvironmentBuilder.buildEnvironmentType(environment); cursor.beginElement(environmentQname); XmlCursor element = environmentType.newCursor(); @@ -129,6 +131,56 @@ } } + private static void extractDependencies(XmlCursor cursor, Environment environment) { + if (cursor.getName() == null) { + //no dependencies, do nothing + return; + } + cursor.push(); + do { + if (cursor.getName().getLocalPart().equals("dependency")) { + extractDependency(cursor, environment); + } else { + break; + } + } while (cursor.toNextSibling()); + cursor.pop(); + } + + private static void extractDependency(XmlCursor cursor, Environment environment) { + cursor.push(); + cursor.toFirstChild(); + Artifact artifact; + if (cursor.getName().getLocalPart().equals("uri")) { + String uri = cursor.getTextValue(); + artifact = Artifact.create(uri); + } else { + checkName(cursor, "groupId"); + String groupId = cursor.getTextValue(); + cursor.toNextSibling(); + String type = "jar"; + if (cursor.getName().getLocalPart().equals("type")) { + type = cursor.getTextValue(); + cursor.toNextSibling(); + } + checkName(cursor, "artifactId"); + String artifactId = cursor.getTextValue(); + cursor.toNextSibling(); + checkName(cursor, "version"); + String version = cursor.getTextValue(); + artifact = new Artifact(groupId, artifactId, version, type); + } + environment.addDependency(artifact, ImportType.ALL); + cursor.pop(); + cursor.removeXml(); + } + + private static void checkName(XmlCursor cursor, String localName) { + if (!cursor.getName().getLocalPart().equals(localName)) { + throw new IllegalArgumentException("Expected element: " + localName + " but actually: " + cursor.getName().getLocalPart()); + } + + } private static void positionEnvironment(XmlCursor cursor) { XmlCursor.TokenType token; while ((token = cursor.toNextToken()) != XmlCursor.TokenType.START && token != XmlCursor.TokenType.END) { Added: geronimo/branches/1.1/modules/upgrade/src/test-data/appclient_dep_1.xml URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/upgrade/src/test-data/appclient_dep_1.xml?rev=394359&view=auto ============================================================================== --- geronimo/branches/1.1/modules/upgrade/src/test-data/appclient_dep_1.xml (added) +++ geronimo/branches/1.1/modules/upgrade/src/test-data/appclient_dep_1.xml Sat Apr 15 12:32:34 2006 @@ -0,0 +1,107 @@ + + + + + appclient_dep_resref_single_client.jar + + + + geronimo/geronimo-common/${geronimo_version}/jar + + + + geronimo/geronimo-mail/${geronimo_version}/jar + + + org.apache.geronimo.specs + jar + geronimo-activation_1.0.2_spec + ${geronimo_spec_javamail_version} + + + org.apache.geronimo.specs + geronimo-javamail_1.3.1_spec + ${geronimo_spec_javamail_version} + + + + url/URL + http://${webserverHost}:${webserverPort}/appclient_dep/test.jsp + + + jms/myQueueConnectionFactory + DefaultActiveMQConnectionFactory + + + jms/myTopicConnectionFactory + DefaultActiveMQConnectionFactory + + + activemq/activemq-ra/${activemq_version}/rar + + + + ActiveMQ RA + tcp://localhost:61616 + geronimo + geronimo + + DefaultWorkManager + + + + + javax.jms.ConnectionFactory + + DefaultActiveMQConnectionFactory + javax.jms.QueueConnectionFactory + javax.jms.TopicConnectionFactory + + + + + + 10 + 5000 + + + + + + + + + javax.jms.Queue + org.codehaus.activemq.message.ActiveMQQueue + + Queue + Queue + + + + javax.jms.Topic + org.codehaus.activemq.message.ActiveMQTopic + + Topic + Topic + + + + + + + mail.smtp.host=mail.apache.com + + + + + + Added: geronimo/branches/1.1/modules/upgrade/src/test-data/appclient_dep_1_result.xml URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/upgrade/src/test-data/appclient_dep_1_result.xml?rev=394359&view=auto ============================================================================== --- geronimo/branches/1.1/modules/upgrade/src/test-data/appclient_dep_1_result.xml (added) +++ geronimo/branches/1.1/modules/upgrade/src/test-data/appclient_dep_1_result.xml Sat Apr 15 12:32:34 2006 @@ -0,0 +1,157 @@ + + + + default + appclient_dep + 1-default + car + + + + ${pom.groupId} + server-security + ${pom.currentVersion} + car + + + + + + + appclient_dep_resref_single_client.jar + + + + default + appclient_dep_appclient_dep_client + 1-default + car + + + + ${pom.groupId} + client-database + ${pom.currentVersion} + car + + + geronimo + geronimo-common + ${geronimo_version} + jar + + + geronimo + geronimo-mail + ${geronimo_version} + jar + + + org.apache.geronimo.specs + geronimo-activation_1.0.2_spec + ${geronimo_spec_activation_version} + jar + + + org.apache.geronimo.specs + geronimo-javamail_1.3.1_spec + ${geronimo_spec_javamail_version} + jar + + + + + + + + default + bar + 1-default + car + + + + + + + url/URL + http://${webserverHost}:${webserverPort}/appclient_dep/test.jsp + + + jms/myQueueConnectionFactory + DefaultActiveMQConnectionFactory + + + jms/myTopicConnectionFactory + DefaultActiveMQConnectionFactory + + + activemq/activemq-ra/${activemq_version}/rar + + + + default + org.codehaus.activemq.ra_default + 1-default + car + + + + + + + + + ActiveMQ RA + tcp://localhost:61616 + geronimo + geronimo + + DefaultWorkManager + + + + + javax.jms.ConnectionFactory + + DefaultActiveMQConnectionFactory + javax.jms.QueueConnectionFactory + javax.jms.TopicConnectionFactory + + + + + + 10 + 5000 + + + + + + + + + javax.jms.Queue + org.codehaus.activemq.message.ActiveMQQueue + + Queue + Queue + + + + javax.jms.Topic + org.codehaus.activemq.message.ActiveMQTopic + + Topic + Topic + + + + + + mail.smtp.host=mail.apache.com + + + + Added: geronimo/branches/1.1/modules/upgrade/src/test-data/appclient_ejb_1_result.xml URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/upgrade/src/test-data/appclient_ejb_1_result.xml?rev=394359&view=auto ============================================================================== --- geronimo/branches/1.1/modules/upgrade/src/test-data/appclient_ejb_1_result.xml (added) +++ geronimo/branches/1.1/modules/upgrade/src/test-data/appclient_ejb_1_result.xml Sat Apr 15 12:32:34 2006 @@ -0,0 +1,91 @@ + + + + default + appclient_ejb_1 + 1-default + car + + + + ${pom.groupId} + server-security + ${pom.currentVersion} + car + + + + + + + appclient_ejb_1_ejb.jar + + + + default + ejb + 1-default + car + + + + + + + jdbc/DB1 + + + + CMP20 + CMP20_APPCLIENT_TABLE1 + + id + ID + + + + CMP11 + CMP20_APPCLIENT_TABLE2 + + KEY_ID + ID + + + + + + + appclient_ejb_1_client.jar + + + + default + appclient_ejb_1_appclient_ejb_1_client + 1-default + car + + + + ${pom.groupId} + client-database + ${pom.currentVersion} + car + + + + + + + + default + bar + 1-default + car + + + + + + + + Modified: geronimo/branches/1.1/modules/upgrade/src/test/org/apache/geronimo/upgrade/Upgrade1_0To1_1Test.java URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/upgrade/src/test/org/apache/geronimo/upgrade/Upgrade1_0To1_1Test.java?rev=394359&r1=394358&r2=394359&view=diff ============================================================================== --- geronimo/branches/1.1/modules/upgrade/src/test/org/apache/geronimo/upgrade/Upgrade1_0To1_1Test.java (original) +++ geronimo/branches/1.1/modules/upgrade/src/test/org/apache/geronimo/upgrade/Upgrade1_0To1_1Test.java Sat Apr 15 12:32:34 2006 @@ -41,26 +41,28 @@ private final ClassLoader classLoader = this.getClass().getClassLoader(); public void test1() throws Exception { -// InputStream srcXml = classLoader.getResourceAsStream("jms-plan.xml"); - InputStream srcXml = classLoader.getResourceAsStream("appclient_ejb_1.xml"); + test("appclient_ejb_1"); + } + + public void test2() throws Exception { + test("appclient_dep_1"); + } + + private void test(String testName) throws Exception { + InputStream srcXml = classLoader.getResourceAsStream(testName + ".xml"); Writer targetXml = new StringWriter(); Upgrade1_0To1_1.upgrade(srcXml, targetXml); String targetString = targetXml.toString(); - System.out.println(targetString); XmlObject targetXmlObject = XmlObject.Factory.parse(targetString); - //uncomment fail to see output -// fail(); -// URL expectedOutputXml = classLoader.getResource("appclient_dep_ejblink_single.ear.xml"); -// XmlObject xmlObject = XmlObject.Factory.parse(srcXml); -// XmlObject expected = XmlObject.Factory.parse(expectedOutputXml); -// SchemaConversionUtils.validateDD(expected); -// xmlObject = SchemaConversionUtils.convertToApplicationClientSchema(xmlObject); -// System.out.println(xmlObject.toString()); -// System.out.println(expected.toString()); -// List problems = new ArrayList(); -// boolean ok = compareXmlObjects(xmlObject, expected, problems); -// assertTrue("Differences: " + problems, ok); + URL expectedOutputXml = classLoader.getResource(testName + "_result.xml"); + XmlObject expected = XmlObject.Factory.parse(expectedOutputXml); + List problems = new ArrayList(); + boolean ok = compareXmlObjects(targetXmlObject, expected, problems); + if (!ok) { + System.out.println(targetString); + } + assertTrue("Differences: " + problems, ok); } private boolean compareXmlObjects(XmlObject xmlObject, XmlObject expectedObject, List problems) {