<artifactId>commons-httpclient</artifactId>\r
<version>3.1</version>\r
</dependency>\r
+ <dependency>\r
+ <groupId>javax.security</groupId>\r
+ <artifactId>jaas</artifactId>\r
+ <version>1.0.01</version>\r
+ <scope>provided</scope>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>dom4j</groupId>\r
+ <artifactId>dom4j</artifactId>\r
+ <version>1.6.1</version>\r
+ <scope>provided</scope>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>jaxen</groupId>\r
+ <artifactId>jaxen</artifactId>\r
+ <version>1.1.1</version>\r
+ <scope>provided</scope>\r
+ </dependency>\r
+ <dependency>\r
+ <groupId>org.apache.commons</groupId>\r
+ <artifactId>commons-jexl</artifactId>\r
+ <version>2.0.1</version>\r
+ </dependency>\r
</dependencies>\r
\r
<build>\r
<finalName>collectionspace-services-IntegrationTests</finalName>\r
+ <plugins>\r
+ <plugin>\r
+ <groupId>org.apache.maven.plugins</groupId>\r
+ <artifactId>maven-jar-plugin</artifactId>\r
+ <executions>\r
+ <execution>\r
+ <goals>\r
+ <goal>test-jar</goal>\r
+ </goals>\r
+ </execution>\r
+ </executions>\r
+ </plugin>\r
+ <plugin>\r
+ <!-- The way this works, is you call:\r
+ cd C:\src\trunk\services\IntegrationTests\\r
+ mvn exec:java\r
+ or, with an override:\r
+ mvn exec:java -DxmlReplayBaseDir=C:/my/override/directory\r
+ or:\r
+ mvn -DskipTests exec:java -DtestID=testfoo -DtestGroupID=bar -DxmlReplayBaseDir=mojo -DautoDeletePOSTS=true\r
+ -->\r
+ <groupId>org.codehaus.mojo</groupId>\r
+ <artifactId>exec-maven-plugin</artifactId>\r
+ <executions>\r
+ <execution>\r
+ <goals>\r
+ <goal>java</goal>\r
+ </goals>\r
+ </execution>\r
+ </executions>\r
+ <configuration>\r
+ <mainClass>org.collectionspace.services.IntegrationTests.xmlreplay.XmlReplay</mainClass>\r
+ <arguments>\r
+ <argument>-xmlReplayBaseDir</argument>\r
+ <argument>${basedir}/src/test/resources/test-data/xmlreplay</argument>\r
+ </arguments>\r
+ <systemProperties>\r
+ </systemProperties>\r
+ </configuration>\r
+ </plugin>\r
+\r
+ </plugins>\r
</build>\r
</project>\r
\r
<artifactId>org.collectionspace.services.client</artifactId>\r
<version>${project.version}</version>\r
</dependency>\r
+ \r
+ <dependency>\r
+ <groupId>org.collectionspace.services</groupId>\r
+ <artifactId>org.collectionspace.services.IntegrationTests</artifactId>\r
+ <version>${project.version}</version>\r
+ </dependency>\r
+ \r
<!-- External dependencies -->\r
<dependency>\r
<groupId>org.testng</groupId>\r
--- /dev/null
+package org.collectionspace.services.client.test;\r
+\r
+import org.collectionspace.services.IntegrationTests.xmlreplay.ServiceResult;\r
+import org.collectionspace.services.IntegrationTests.xmlreplay.XmlReplay;\r
+import org.collectionspace.services.IntegrationTests.xmlreplay.XmlReplayTest;\r
+import org.testng.annotations.Test;\r
+\r
+import java.util.List;\r
+\r
+/**\r
+ * User: laramie\r
+ * $LastChangedRevision: $\r
+ * $LastChangedDate: $\r
+ */\r
+public class DimensionXmlReplayTest extends XmlReplayTest { \r
+\r
+ @Test\r
+ public void runMaster() throws Exception {\r
+ XmlReplay replay = createXmlReplayUsingIntegrationTestsModule("../../");\r
+ List<List<ServiceResult>> list = replay.runMaster("dimension-master.xml");\r
+ logTestForGroup(list, "runMaster");\r
+ }\r
+\r
+ @Test\r
+ public void runOneTest() throws Exception {\r
+ XmlReplay replay = createXmlReplayForModule();\r
+ replay.readOptionsFromMasterConfigFile("dimension-master.xml");\r
+ replay.setControlFileName("dimension.xml");\r
+\r
+ ServiceResult res = replay.runTest("dimensionTestGroup", "dimension1");\r
+ logTest(res, "runOneTest");\r
+ }\r
+\r
+}\r
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>\r
+<xmlReplayMaster>\r
+ <protoHostPort>http://localhost:8280</protoHostPort>\r
+ \r
+ <!-- legal values for dumpServiceResult=[minimal,detailed,full] -->\r
+ <dump payloads="false" dumpServiceResult="minimal" />\r
+ \r
+ <auths default="test">\r
+ <auth ID="test">dGVzdDp0ZXN0</auth>\r
+ </auths>\r
+\r
+ \r
+ <run controlFile="./dimension.xml" testGroup="dimensionTestGroup" />\r
+ \r
+</xmlReplayMaster>\r
+\r
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>\r
+<xmlReplay>\r
+ <auths>\r
+ <!-- IMPORTANT: THESE ARE STICKY :: THEY STICK AROUND UNTIL RESET, IN EXEC ORDER OF THIS FILE. -->\r
+ <auth ID="test">dGVzdDp0ZXN0</auth>\r
+ <auth ID="bigbird2010">YmlnYmlyZDIwMTA6YmlnYmlyZDIwMTA=</auth>\r
+ </auths>\r
+ \r
+ <!-- ================================================================================ -->\r
+ \r
+ <testGroup ID="dimensionTestGroup" autoDeletePOSTS="false">\r
+ <!-- should fail on auth="bigbird2010" since bigbird2010 is not defined on back end. -->\r
+ <test ID="dimension1" auth="bigbird2010">\r
+ <expectedCodes>403</expectedCodes>\r
+ <method>POST</method>\r
+ <uri>/cspace-services/dimensions/</uri>\r
+ <part>\r
+ <label>dimensions_common</label>\r
+ <filename>dimension/1.xml</filename>\r
+ </part>\r
+ </test>\r
+\r
+ <!-- should succeed on auth="test" since test is admin user. -->\r
+ <test ID="dimension2" auth="test">\r
+ <method>POST</method>\r
+ <uri>/cspace-services/dimensions/</uri>\r
+ <part>\r
+ <label>dimensions_common</label>\r
+ <filename>dimension/1.xml</filename>\r
+ </part>\r
+ </test>\r
+\r
+ \r
+ </testGroup>\r
+</xmlReplay>\r
+ \r
+
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\r
+<ns2:dimensions_common\r
+xmlns:ns2="http://collectionspace.org/services/dimension"\r
+xmlns:ns3="http://collectionspace.org/services/jaxb">\r
+ <dimension>dimensionType-1288727556164</dimension>\r
+ <value>entryNumber-1288727556164</value>\r
+ <valueDate>entryDate-1288727556164</valueDate>\r
+</ns2:dimensions_common>\r
+\r