[INFO] Scanning for projects...
[WARNING] 
[WARNING] Some problems were encountered while building the effective model for org.jclouds.api:cloudsigma:bundle:1.6.0-SNAPSHOT
[WARNING] 'parent.relativePath' of POM org.jclouds:jclouds-project:1.6.0-SNAPSHOT (/private/tmp/jclouds/project/pom.xml) points at org.jclouds:jclouds-multi instead of org.sonatype.oss:oss-parent, please verify your project structure @ org.jclouds:jclouds-project:1.6.0-SNAPSHOT, /private/tmp/jclouds/project/pom.xml, line 24, column 13
[WARNING] 
[WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
[WARNING] 
[WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
[WARNING] 
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building jclouds CloudSigma API 1.6.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- maven-clean-plugin:2.4.1:clean (default-clean) @ cloudsigma ---
[INFO] 
[INFO] --- maven-enforcer-plugin:1.1.1:enforce (enforce-maven) @ cloudsigma ---
[INFO] 
[INFO] --- maven-enforcer-plugin:1.1.1:enforce (enforce-banned-dependencies) @ cloudsigma ---
[INFO] 
[INFO] --- maven-enforcer-plugin:1.1.1:enforce (enforce-java) @ cloudsigma ---
[INFO] 
[INFO] --- maven-remote-resources-plugin:1.4:process (process-remote-resources) @ cloudsigma ---
[INFO] 
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ cloudsigma ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /private/tmp/jclouds/apis/cloudsigma/src/main/clojure
[INFO] Copying 1 resource
[INFO] Copying 2 resources
[INFO] 
[INFO] --- maven-compiler-plugin:2.5.1:compile (default-compile) @ cloudsigma ---
[INFO] Compiling 73 source files to /private/tmp/jclouds/apis/cloudsigma/target/classes
[INFO] 
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ cloudsigma ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /private/tmp/jclouds/apis/cloudsigma/src/test/clojure
[INFO] Copying 11 resources
[INFO] Copying 2 resources
[INFO] 
[INFO] --- maven-compiler-plugin:2.5.1:testCompile (default-testCompile) @ cloudsigma ---
[INFO] Compiling 28 source files to /private/tmp/jclouds/apis/cloudsigma/target/test-classes
[INFO] 
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ cloudsigma ---
[INFO] Surefire report directory: /private/tmp/jclouds/apis/cloudsigma/target/surefire-reports

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running TestSuite
Configuring TestNG with: org.apache.maven.surefire.testng.conf.TestNG652Configurator@65faba46
Starting test testComplete(org.jclouds.cloudsigma.binders.BindDriveDataToPlainTextStringTest)
Starting test testComplete(org.jclouds.cloudsigma.functions.BaseDriveToMapTest)
Starting test testDefault(org.jclouds.cloudsigma.binders.BindCloneDriveOptionsToPlainTextStringTest)
Starting test testBasics(org.jclouds.cloudsigma.functions.BaseDriveToMapTest)
Starting test testWithSize(org.jclouds.cloudsigma.binders.BindCloneDriveOptionsToPlainTextStringTest)
[pool-1-thread-2] Test testComplete(org.jclouds.cloudsigma.functions.BaseDriveToMapTest) succeeded: 9ms
Test suite progress: tests succeeded: 1, failed: 0, skipped: 0.
[pool-1-thread-1] Test testBasics(org.jclouds.cloudsigma.functions.BaseDriveToMapTest) succeeded: 9ms
Test suite progress: tests succeeded: 2, failed: 0, skipped: 0.
Starting test testSimple(org.jclouds.cloudsigma.binders.BindDriveDataToPlainTextStringTest)
Starting test testComplete(org.jclouds.cloudsigma.binders.BindDriveToPlainTextStringTest)
[pool-1-thread-4] Test testWithSize(org.jclouds.cloudsigma.binders.BindCloneDriveOptionsToPlainTextStringTest) succeeded: 26ms
Test suite progress: tests succeeded: 3, failed: 0, skipped: 0.
[pool-1-thread-1] Test testSimple(org.jclouds.cloudsigma.binders.BindDriveDataToPlainTextStringTest) succeeded: 18ms
Test suite progress: tests succeeded: 4, failed: 0, skipped: 0.
[pool-1-thread-3] Test testDefault(org.jclouds.cloudsigma.binders.BindCloneDriveOptionsToPlainTextStringTest) succeeded: 27ms
Test suite progress: tests succeeded: 5, failed: 0, skipped: 0.
Starting test testSimple(org.jclouds.cloudsigma.binders.BindDriveToPlainTextStringTest)
[pool-1-thread-2] Test testComplete(org.jclouds.cloudsigma.binders.BindDriveToPlainTextStringTest) succeeded: 18ms
Test suite progress: tests succeeded: 6, failed: 0, skipped: 0.
Starting test testSimple(org.jclouds.cloudsigma.binders.BindServerToPlainTextStringTest)
[pool-1-thread-5] Test testComplete(org.jclouds.cloudsigma.binders.BindDriveDataToPlainTextStringTest) succeeded: 27ms
Test suite progress: tests succeeded: 7, failed: 0, skipped: 0.
Starting test testHddAffinity(org.jclouds.cloudsigma.options.CloneDriveOptionsTest)
[pool-1-thread-4] Test testSimple(org.jclouds.cloudsigma.binders.BindDriveToPlainTextStringTest) succeeded: 0ms
Starting test testHddAffinityAfterTags(org.jclouds.cloudsigma.options.CloneDriveOptionsTest)
Test suite progress: tests succeeded: 8, failed: 0, skipped: 0.
Starting test testHddAffinityBeforeTags(org.jclouds.cloudsigma.options.CloneDriveOptionsTest)
Starting test testHddAffinityStatic(org.jclouds.cloudsigma.options.CloneDriveOptionsTest)
[pool-1-thread-1] Test testSimple(org.jclouds.cloudsigma.binders.BindServerToPlainTextStringTest) succeeded: 1ms
Test suite progress: tests succeeded: 9, failed: 0, skipped: 0.
Starting test testNullSize(org.jclouds.cloudsigma.options.CloneDriveOptionsTest)
[pool-1-thread-3] Test testHddAffinity(org.jclouds.cloudsigma.options.CloneDriveOptionsTest) succeeded: 2ms
Test suite progress: tests succeeded: 10, failed: 0, skipped: 0.
[pool-1-thread-1] Test testNullSize(org.jclouds.cloudsigma.options.CloneDriveOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 11, failed: 0, skipped: 0.
[pool-1-thread-5] Test testHddAffinityBeforeTags(org.jclouds.cloudsigma.options.CloneDriveOptionsTest) succeeded: 1ms
Starting test testNullTags(org.jclouds.cloudsigma.options.CloneDriveOptionsTest)
Test suite progress: tests succeeded: 12, failed: 0, skipped: 0.
[pool-1-thread-4] Test testHddAffinityStatic(org.jclouds.cloudsigma.options.CloneDriveOptionsTest) succeeded: 1ms
Starting test testSize(org.jclouds.cloudsigma.options.CloneDriveOptionsTest)
Test suite progress: tests succeeded: 13, failed: 0, skipped: 0.
[pool-1-thread-3] Test testNullTags(org.jclouds.cloudsigma.options.CloneDriveOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 14, failed: 0, skipped: 0.
[pool-1-thread-1] Test testSize(org.jclouds.cloudsigma.options.CloneDriveOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 15, failed: 0, skipped: 0.
Starting test testSizeStatic(org.jclouds.cloudsigma.options.CloneDriveOptionsTest)
[pool-1-thread-4] Test testSizeStatic(org.jclouds.cloudsigma.options.CloneDriveOptionsTest) succeeded: 0ms
Starting test testSsdAffinity(org.jclouds.cloudsigma.options.CloneDriveOptionsTest)
Test suite progress: tests succeeded: 16, failed: 0, skipped: 0.
Starting test testSsdAffinityAfterTags(org.jclouds.cloudsigma.options.CloneDriveOptionsTest)
[pool-1-thread-3] Test testSsdAffinity(org.jclouds.cloudsigma.options.CloneDriveOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 17, failed: 0, skipped: 0.
Starting test testSizeNegative(org.jclouds.cloudsigma.options.CloneDriveOptionsTest)
Starting test testSsdAffinityBeforeTags(org.jclouds.cloudsigma.options.CloneDriveOptionsTest)
[pool-1-thread-5] Test testSizeNegative(org.jclouds.cloudsigma.options.CloneDriveOptionsTest) succeeded: 1ms
Starting test testSsdAffinityStatic(org.jclouds.cloudsigma.options.CloneDriveOptionsTest)
Test suite progress: tests succeeded: 18, failed: 0, skipped: 0.
[pool-1-thread-3] Test testSsdAffinityStatic(org.jclouds.cloudsigma.options.CloneDriveOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 19, failed: 0, skipped: 0.
Starting test testTags(org.jclouds.cloudsigma.options.CloneDriveOptionsTest)
[pool-1-thread-5] Test testTags(org.jclouds.cloudsigma.options.CloneDriveOptionsTest) succeeded: 0ms
Starting test testTagsStatic(org.jclouds.cloudsigma.options.CloneDriveOptionsTest)
Test suite progress: tests succeeded: 20, failed: 0, skipped: 0.
[pool-1-thread-3] Test testTagsStatic(org.jclouds.cloudsigma.options.CloneDriveOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 21, failed: 0, skipped: 0.
Starting test test400MakesIllegalArgumentException(org.jclouds.cloudsigma.handlers.CloudSigmaErrorHandlerTest)
Starting test test400MakesResourceNotFoundExceptionOnInfo(org.jclouds.cloudsigma.handlers.CloudSigmaErrorHandlerTest)
[pool-1-thread-4] Test testSsdAffinityBeforeTags(org.jclouds.cloudsigma.options.CloneDriveOptionsTest) succeeded: 3ms
Test suite progress: tests succeeded: 22, failed: 0, skipped: 0.
[pool-1-thread-2] Test testHddAffinityAfterTags(org.jclouds.cloudsigma.options.CloneDriveOptionsTest) succeeded: 6ms
Test suite progress: tests succeeded: 23, failed: 0, skipped: 0.
Starting test test400MakesResourceNotFoundExceptionOnMessageNotFound(org.jclouds.cloudsigma.handlers.CloudSigmaErrorHandlerTest)
Starting test test401MakesAuthorizationException(org.jclouds.cloudsigma.handlers.CloudSigmaErrorHandlerTest)
[pool-1-thread-1] Test testSsdAffinityAfterTags(org.jclouds.cloudsigma.options.CloneDriveOptionsTest) succeeded: 4ms
Test suite progress: tests succeeded: 24, failed: 0, skipped: 0.
Starting test test404MakesResourceNotFoundException(org.jclouds.cloudsigma.handlers.CloudSigmaErrorHandlerTest)
[pool-1-thread-2] Test test401MakesAuthorizationException(org.jclouds.cloudsigma.handlers.CloudSigmaErrorHandlerTest) succeeded: 119ms
Test suite progress: tests succeeded: 25, failed: 0, skipped: 0.
[pool-1-thread-4] Test test400MakesResourceNotFoundExceptionOnMessageNotFound(org.jclouds.cloudsigma.handlers.CloudSigmaErrorHandlerTest) succeeded: 120ms
Test suite progress: tests succeeded: 26, failed: 0, skipped: 0.
[pool-1-thread-3] Test test400MakesResourceNotFoundExceptionOnInfo(org.jclouds.cloudsigma.handlers.CloudSigmaErrorHandlerTest) succeeded: 121ms
Test suite progress: tests succeeded: 27, failed: 0, skipped: 0.
[pool-1-thread-1] Test test404MakesResourceNotFoundException(org.jclouds.cloudsigma.handlers.CloudSigmaErrorHandlerTest) succeeded: 119ms
Test suite progress: tests succeeded: 28, failed: 0, skipped: 0.
[pool-1-thread-5] Test test400MakesIllegalArgumentException(org.jclouds.cloudsigma.handlers.CloudSigmaErrorHandlerTest) succeeded: 121ms
Test suite progress: tests succeeded: 29, failed: 0, skipped: 0.
Starting test test405MakesIllegalArgumentException(org.jclouds.cloudsigma.handlers.CloudSigmaErrorHandlerTest)
Starting test testComplete(org.jclouds.cloudsigma.functions.DriveDataToMapTest)
Starting test testRenameKeyWhenFound(org.jclouds.cloudsigma.functions.DriveDataToMapTest)
[pool-1-thread-1] Test testComplete(org.jclouds.cloudsigma.functions.DriveDataToMapTest) succeeded: 0ms
Starting test testBasics(org.jclouds.cloudsigma.functions.DriveDataToMapTest)
Starting test test409MakesIllegalStateException(org.jclouds.cloudsigma.handlers.CloudSigmaErrorHandlerTest)
Test suite progress: tests succeeded: 30, failed: 0, skipped: 0.
[pool-1-thread-3] Test testBasics(org.jclouds.cloudsigma.functions.DriveDataToMapTest) succeeded: 0ms
Test suite progress: tests succeeded: 31, failed: 0, skipped: 0.
Starting test testRenameKeyWhenNotFound(org.jclouds.cloudsigma.functions.DriveDataToMapTest)
[pool-1-thread-1] Test testRenameKeyWhenNotFound(org.jclouds.cloudsigma.functions.DriveDataToMapTest) succeeded: 0ms
Starting test testNone(org.jclouds.cloudsigma.functions.KeyValuesDelimitedByBlankLinesToDriveInfoTest)
Test suite progress: tests succeeded: 32, failed: 0, skipped: 0.
Starting test testOne(org.jclouds.cloudsigma.functions.KeyValuesDelimitedByBlankLinesToDriveInfoTest)
[pool-1-thread-2] Test test405MakesIllegalArgumentException(org.jclouds.cloudsigma.handlers.CloudSigmaErrorHandlerTest) succeeded: 2ms
Test suite progress: tests succeeded: 33, failed: 0, skipped: 0.
Starting test testNone(org.jclouds.cloudsigma.functions.KeyValuesDelimitedByBlankLinesToProfileInfoTest)
[pool-1-thread-2] Test testNone(org.jclouds.cloudsigma.functions.KeyValuesDelimitedByBlankLinesToProfileInfoTest) succeeded: 0ms
Test suite progress: tests succeeded: 34, failed: 0, skipped: 0.
[pool-1-thread-3] Test testNone(org.jclouds.cloudsigma.functions.KeyValuesDelimitedByBlankLinesToDriveInfoTest) succeeded: 1ms
Test suite progress: tests succeeded: 35, failed: 0, skipped: 0.
Starting test testOne(org.jclouds.cloudsigma.functions.KeyValuesDelimitedByBlankLinesToProfileInfoTest)
Starting test testNew(org.jclouds.cloudsigma.functions.KeyValuesDelimitedByBlankLinesToServerInfoTest)
[pool-1-thread-4] Test test409MakesIllegalStateException(org.jclouds.cloudsigma.handlers.CloudSigmaErrorHandlerTest) succeeded: 4ms
Test suite progress: tests succeeded: 36, failed: 0, skipped: 0.
Starting test testNone(org.jclouds.cloudsigma.functions.KeyValuesDelimitedByBlankLinesToServerInfoTest)
[pool-1-thread-5] Test testRenameKeyWhenFound(org.jclouds.cloudsigma.functions.DriveDataToMapTest) succeeded: 4ms
Test suite progress: tests succeeded: 37, failed: 0, skipped: 0.
[pool-1-thread-4] Test testNone(org.jclouds.cloudsigma.functions.KeyValuesDelimitedByBlankLinesToServerInfoTest) succeeded: 0ms
Test suite progress: tests succeeded: 38, failed: 0, skipped: 0.
Starting test testNone(org.jclouds.cloudsigma.functions.KeyValuesDelimitedByBlankLinesToVLANInfoTest)
[pool-1-thread-4] Test testNone(org.jclouds.cloudsigma.functions.KeyValuesDelimitedByBlankLinesToVLANInfoTest) succeeded: 0ms
Test suite progress: tests succeeded: 39, failed: 0, skipped: 0.
[pool-1-thread-2] Test testOne(org.jclouds.cloudsigma.functions.KeyValuesDelimitedByBlankLinesToProfileInfoTest) succeeded: 3ms
Test suite progress: tests succeeded: 40, failed: 0, skipped: 0.
Starting test testOne(org.jclouds.cloudsigma.functions.KeyValuesDelimitedByBlankLinesToVLANInfoTest)
[pool-1-thread-1] Test testOne(org.jclouds.cloudsigma.functions.KeyValuesDelimitedByBlankLinesToDriveInfoTest) succeeded: 5ms
Test suite progress: tests succeeded: 41, failed: 0, skipped: 0.
Starting test testNone(org.jclouds.cloudsigma.functions.ListOfKeyValuesDelimitedByBlankLinesToDriveInfoSetTest)
Starting test testOne(org.jclouds.cloudsigma.functions.KeyValuesDelimitedByBlankLinesToServerInfoTest)
Starting test testOne(org.jclouds.cloudsigma.functions.ListOfKeyValuesDelimitedByBlankLinesToDriveInfoSetTest)
[pool-1-thread-2] Test testNone(org.jclouds.cloudsigma.functions.ListOfKeyValuesDelimitedByBlankLinesToDriveInfoSetTest) succeeded: 0ms
Test suite progress: tests succeeded: 42, failed: 0, skipped: 0.
[pool-1-thread-4] Test testOne(org.jclouds.cloudsigma.functions.KeyValuesDelimitedByBlankLinesToVLANInfoTest) succeeded: 1ms
Test suite progress: tests succeeded: 43, failed: 0, skipped: 0.
Starting test testNone(org.jclouds.cloudsigma.functions.ListOfKeyValuesDelimitedByBlankLinesToListOfMapsTest)
[pool-1-thread-3] Test testNew(org.jclouds.cloudsigma.functions.KeyValuesDelimitedByBlankLinesToServerInfoTest) succeeded: 4ms
Test suite progress: tests succeeded: 44, failed: 0, skipped: 0.
Starting test testOneMap(org.jclouds.cloudsigma.functions.ListOfKeyValuesDelimitedByBlankLinesToListOfMapsTest)
[pool-1-thread-2] Test testNone(org.jclouds.cloudsigma.functions.ListOfKeyValuesDelimitedByBlankLinesToListOfMapsTest) succeeded: 1ms
Starting test testTwoMaps(org.jclouds.cloudsigma.functions.ListOfKeyValuesDelimitedByBlankLinesToListOfMapsTest)
Test suite progress: tests succeeded: 45, failed: 0, skipped: 0.
[pool-1-thread-4] Test testOneMap(org.jclouds.cloudsigma.functions.ListOfKeyValuesDelimitedByBlankLinesToListOfMapsTest) succeeded: 1ms
Starting test testValueEncodesNewlines(org.jclouds.cloudsigma.functions.ListOfKeyValuesDelimitedByBlankLinesToListOfMapsTest)
Test suite progress: tests succeeded: 46, failed: 0, skipped: 0.
[pool-1-thread-2] Test testValueEncodesNewlines(org.jclouds.cloudsigma.functions.ListOfKeyValuesDelimitedByBlankLinesToListOfMapsTest) succeeded: 0ms
Test suite progress: tests succeeded: 47, failed: 0, skipped: 0.
Starting test testNone(org.jclouds.cloudsigma.functions.ListOfKeyValuesDelimitedByBlankLinesToServerInfoSetTest)
[pool-1-thread-3] Test testTwoMaps(org.jclouds.cloudsigma.functions.ListOfKeyValuesDelimitedByBlankLinesToListOfMapsTest) succeeded: 1ms
Test suite progress: tests succeeded: 48, failed: 0, skipped: 0.
[pool-1-thread-4] Test testNone(org.jclouds.cloudsigma.functions.ListOfKeyValuesDelimitedByBlankLinesToServerInfoSetTest) succeeded: 1ms
Test suite progress: tests succeeded: 49, failed: 0, skipped: 0.
Starting test testOne(org.jclouds.cloudsigma.functions.ListOfKeyValuesDelimitedByBlankLinesToServerInfoSetTest)
[pool-1-thread-1] Test testOne(org.jclouds.cloudsigma.functions.ListOfKeyValuesDelimitedByBlankLinesToDriveInfoSetTest) succeeded: 3ms
Test suite progress: tests succeeded: 50, failed: 0, skipped: 0.
Starting test testOne(org.jclouds.cloudsigma.functions.ListOfKeyValuesDelimitedByBlankLinesToVLANInfoSetTest)
Starting test testNone(org.jclouds.cloudsigma.functions.ListOfMapsToListOfKeyValuesDelimitedByBlankLinesTest)
[pool-1-thread-1] Test testNone(org.jclouds.cloudsigma.functions.ListOfMapsToListOfKeyValuesDelimitedByBlankLinesTest) succeeded: 1ms
Test suite progress: tests succeeded: 51, failed: 0, skipped: 0.
Starting test testNone(org.jclouds.cloudsigma.functions.ListOfKeyValuesDelimitedByBlankLinesToVLANInfoSetTest)
[pool-1-thread-3] Test testNone(org.jclouds.cloudsigma.functions.ListOfKeyValuesDelimitedByBlankLinesToVLANInfoSetTest) succeeded: 0ms
Starting test testOneMap(org.jclouds.cloudsigma.functions.ListOfMapsToListOfKeyValuesDelimitedByBlankLinesTest)
Test suite progress: tests succeeded: 52, failed: 0, skipped: 0.
[pool-1-thread-1] Test testOneMap(org.jclouds.cloudsigma.functions.ListOfMapsToListOfKeyValuesDelimitedByBlankLinesTest) succeeded: 0ms
Test suite progress: tests succeeded: 53, failed: 0, skipped: 0.
Starting test testTwoMaps(org.jclouds.cloudsigma.functions.ListOfMapsToListOfKeyValuesDelimitedByBlankLinesTest)
[pool-1-thread-5] Test testOne(org.jclouds.cloudsigma.functions.KeyValuesDelimitedByBlankLinesToServerInfoTest) succeeded: 6ms
Test suite progress: tests succeeded: 54, failed: 0, skipped: 0.
Starting test testValueEncodesNewlines(org.jclouds.cloudsigma.functions.ListOfMapsToListOfKeyValuesDelimitedByBlankLinesTest)
[pool-1-thread-3] Test testTwoMaps(org.jclouds.cloudsigma.functions.ListOfMapsToListOfKeyValuesDelimitedByBlankLinesTest) succeeded: 0ms
Test suite progress: tests succeeded: 55, failed: 0, skipped: 0.
[pool-1-thread-1] Test testValueEncodesNewlines(org.jclouds.cloudsigma.functions.ListOfMapsToListOfKeyValuesDelimitedByBlankLinesTest) succeeded: 0ms
Test suite progress: tests succeeded: 56, failed: 0, skipped: 0.
Starting test testBasics(org.jclouds.cloudsigma.functions.MapToDriveInfoTest)
[pool-1-thread-5] Test testBasics(org.jclouds.cloudsigma.functions.MapToDriveInfoTest) succeeded: 1ms
Test suite progress: tests succeeded: 57, failed: 0, skipped: 0.
Starting test testEmptyMapReturnsNull(org.jclouds.cloudsigma.functions.MapToDriveInfoTest)
Starting test testComplete(org.jclouds.cloudsigma.functions.MapToDriveInfoTest)
[pool-1-thread-1] Test testEmptyMapReturnsNull(org.jclouds.cloudsigma.functions.MapToDriveInfoTest) succeeded: 0ms
Test suite progress: tests succeeded: 58, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.MapToProfileInfoTest)
[pool-1-thread-4] Test testOne(org.jclouds.cloudsigma.functions.ListOfKeyValuesDelimitedByBlankLinesToVLANInfoSetTest) succeeded: 3ms
Test suite progress: tests succeeded: 59, failed: 0, skipped: 0.
Starting test testEmptyMapReturnsNull(org.jclouds.cloudsigma.functions.MapToProfileInfoTest)
[pool-1-thread-1] Test testEmptyMapReturnsNull(org.jclouds.cloudsigma.functions.MapToProfileInfoTest) succeeded: 0ms
Starting test testBasics(org.jclouds.cloudsigma.functions.MapToServerInfoTest)
Test suite progress: tests succeeded: 60, failed: 0, skipped: 0.
[pool-1-thread-2] Test testOne(org.jclouds.cloudsigma.functions.ListOfKeyValuesDelimitedByBlankLinesToServerInfoSetTest) succeeded: 4ms
Test suite progress: tests succeeded: 61, failed: 0, skipped: 0.
Starting test testComplete(org.jclouds.cloudsigma.functions.MapToServerInfoTest)
[pool-1-thread-4] Test testBasics(org.jclouds.cloudsigma.functions.MapToServerInfoTest) succeeded: 0ms
Test suite progress: tests succeeded: 62, failed: 0, skipped: 0.
Starting test testEmptyMapReturnsNull(org.jclouds.cloudsigma.functions.MapToServerInfoTest)
[pool-1-thread-5] Test test(org.jclouds.cloudsigma.functions.MapToProfileInfoTest) succeeded: 2ms
Test suite progress: tests succeeded: 63, failed: 0, skipped: 0.
[pool-1-thread-2] Test testEmptyMapReturnsNull(org.jclouds.cloudsigma.functions.MapToServerInfoTest) succeeded: 0ms
Starting test testNew(org.jclouds.cloudsigma.functions.MapToServerInfoTest)
Test suite progress: tests succeeded: 64, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.MapToVLANInfoTest)
[pool-1-thread-3] Test testComplete(org.jclouds.cloudsigma.functions.MapToDriveInfoTest) succeeded: 3ms
Test suite progress: tests succeeded: 65, failed: 0, skipped: 0.
Starting test testEmptyMapReturnsNull(org.jclouds.cloudsigma.functions.MapToVLANInfoTest)
[pool-1-thread-2] Test testEmptyMapReturnsNull(org.jclouds.cloudsigma.functions.MapToVLANInfoTest) succeeded: 0ms
Test suite progress: tests succeeded: 66, failed: 0, skipped: 0.
[pool-1-thread-5] Test test(org.jclouds.cloudsigma.functions.MapToVLANInfoTest) succeeded: 2ms
Starting test testBasics(org.jclouds.cloudsigma.functions.ServerToMapTest)
Test suite progress: tests succeeded: 67, failed: 0, skipped: 0.
[pool-1-thread-4] Test testNew(org.jclouds.cloudsigma.functions.MapToServerInfoTest) succeeded: 2ms
Test suite progress: tests succeeded: 68, failed: 0, skipped: 0.
[pool-1-thread-1] Test testComplete(org.jclouds.cloudsigma.functions.MapToServerInfoTest) succeeded: 3ms
Test suite progress: tests succeeded: 69, failed: 0, skipped: 0.
[pool-1-thread-2] Test testBasics(org.jclouds.cloudsigma.functions.ServerToMapTest) succeeded: 1ms
Starting test test(org.jclouds.cloudsigma.functions.SplitNewlinesTest)
Test suite progress: tests succeeded: 70, failed: 0, skipped: 0.
[pool-1-thread-5] Test test(org.jclouds.cloudsigma.functions.SplitNewlinesTest) succeeded: 7ms
Test suite progress: tests succeeded: 71, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 3ms
Test suite progress: tests succeeded: 72, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 0ms
Test suite progress: tests succeeded: 73, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 0ms
Test suite progress: tests succeeded: 74, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 0ms
Test suite progress: tests succeeded: 75, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 1ms
Test suite progress: tests succeeded: 76, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 0ms
Test suite progress: tests succeeded: 77, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 0ms
Test suite progress: tests succeeded: 78, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 0ms
Test suite progress: tests succeeded: 79, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 0ms
Test suite progress: tests succeeded: 80, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 1ms
Test suite progress: tests succeeded: 81, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 1ms
Test suite progress: tests succeeded: 82, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 0ms
Test suite progress: tests succeeded: 83, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 1ms
Test suite progress: tests succeeded: 84, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 0ms
Test suite progress: tests succeeded: 85, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 1ms
Test suite progress: tests succeeded: 86, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 0ms
Test suite progress: tests succeeded: 87, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 0ms
Test suite progress: tests succeeded: 88, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 0ms
Test suite progress: tests succeeded: 89, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 1ms
Test suite progress: tests succeeded: 90, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 0ms
Test suite progress: tests succeeded: 91, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 0ms
Test suite progress: tests succeeded: 92, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 0ms
Test suite progress: tests succeeded: 93, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 0ms
Test suite progress: tests succeeded: 94, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 1ms
Test suite progress: tests succeeded: 95, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 1ms
Test suite progress: tests succeeded: 96, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 1ms
Test suite progress: tests succeeded: 97, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 0ms
Test suite progress: tests succeeded: 98, failed: 0, skipped: 0.
Starting test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest)
[pool-1-thread-3] Test test(org.jclouds.cloudsigma.functions.ParseOsFamilyVersion64BitFromImageNameTest) succeeded: 0ms
Test suite progress: tests succeeded: 99, failed: 0, skipped: 0.
Starting test testAllContains(org.jclouds.cloudsigma.CloudSigmaApiMetadataTest)
Starting test testTransformableToContains(org.jclouds.cloudsigma.CloudSigmaApiMetadataTest)
Starting test testWithId(org.jclouds.cloudsigma.CloudSigmaApiMetadataTest)
[pool-2-thread-1] Test testAllContains(org.jclouds.cloudsigma.CloudSigmaApiMetadataTest) succeeded: 4ms
Test suite progress: tests succeeded: 100, failed: 0, skipped: 0.
[pool-2-thread-2] Test testTransformableToContains(org.jclouds.cloudsigma.CloudSigmaApiMetadataTest) succeeded: 4ms
Test suite progress: tests succeeded: 101, failed: 0, skipped: 0.
[pool-2-thread-3] Test testWithId(org.jclouds.cloudsigma.CloudSigmaApiMetadataTest) succeeded: 5ms
Test suite progress: tests succeeded: 102, failed: 0, skipped: 0.
Starting test testCloneDrive(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
Starting test testCreateStaticIP(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
Starting test testCloneDriveOptions(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
Starting test testCreateDrive(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
Starting test testCreateServer(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
[pool-3-thread-5] Test testCreateStaticIP(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 53ms
Test suite progress: tests succeeded: 103, failed: 0, skipped: 0.
Starting test testCreateVLAN(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
[pool-3-thread-3] Test testCreateDrive(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 54ms
Test suite progress: tests succeeded: 104, failed: 0, skipped: 0.
Starting test testDestroyDrive(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
[pool-3-thread-4] Test testCreateServer(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 58ms
Test suite progress: tests succeeded: 105, failed: 0, skipped: 0.
[pool-3-thread-2] Test testCloneDriveOptions(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 59ms
Test suite progress: tests succeeded: 106, failed: 0, skipped: 0.
[pool-3-thread-1] Test testCloneDrive(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 59ms
Test suite progress: tests succeeded: 107, failed: 0, skipped: 0.
Starting test testDestroyServer(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
Starting test testDestroyVLAN(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
Starting test testDestroyStaticIP(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
[pool-3-thread-2] Test testDestroyStaticIP(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 7ms
Test suite progress: tests succeeded: 108, failed: 0, skipped: 0.
[pool-3-thread-1] Test testDestroyVLAN(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 8ms
Test suite progress: tests succeeded: 109, failed: 0, skipped: 0.
[pool-3-thread-4] Test testDestroyServer(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 9ms
Test suite progress: tests succeeded: 110, failed: 0, skipped: 0.
[pool-3-thread-3] Test testDestroyDrive(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 13ms
Test suite progress: tests succeeded: 111, failed: 0, skipped: 0.
Starting test testGetServerInfo(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
Starting test testGetDriveInfo(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
Starting test testGetProfileInfo(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
Starting test testGetStaticIPInfo(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
[pool-3-thread-5] Test testCreateVLAN(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 17ms
Test suite progress: tests succeeded: 112, failed: 0, skipped: 0.
Starting test testGetVLANInfo(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
[pool-3-thread-1] Test testGetProfileInfo(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 113, failed: 0, skipped: 0.
[pool-3-thread-3] Test testGetStaticIPInfo(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 114, failed: 0, skipped: 0.
[pool-3-thread-2] Test testGetDriveInfo(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 6ms
Test suite progress: tests succeeded: 115, failed: 0, skipped: 0.
Starting test testListDriveInfo(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
[pool-3-thread-4] Test testGetServerInfo(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 7ms
Test suite progress: tests succeeded: 116, failed: 0, skipped: 0.
Starting test testListDrives(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
Starting test testListServerInfo(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
Starting test testListServers(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
[pool-3-thread-5] Test testGetVLANInfo(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 117, failed: 0, skipped: 0.
[pool-3-thread-1] Test testListDriveInfo(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 1ms
Test suite progress: tests succeeded: 118, failed: 0, skipped: 0.
Starting test testListStandardCds(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
Starting test testListStandardDrives(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
[pool-3-thread-4] Test testListServerInfo(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 1ms
Test suite progress: tests succeeded: 119, failed: 0, skipped: 0.
Starting test testListStandardImages(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
[pool-3-thread-5] Test testListStandardCds(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 3ms
Test suite progress: tests succeeded: 120, failed: 0, skipped: 0.
[pool-3-thread-1] Test testListStandardDrives(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 3ms
Test suite progress: tests succeeded: 121, failed: 0, skipped: 0.
Starting test testListStaticIPs(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
Starting test testListStaticIPInfo(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
[pool-3-thread-4] Test testListStandardImages(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 3ms
Test suite progress: tests succeeded: 122, failed: 0, skipped: 0.
Starting test testListVLANInfo(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
[pool-3-thread-5] Test testListStaticIPInfo(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 2ms
Test suite progress: tests succeeded: 123, failed: 0, skipped: 0.
Starting test testListVLANs(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
[pool-3-thread-4] Test testListVLANInfo(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 2ms
Test suite progress: tests succeeded: 124, failed: 0, skipped: 0.
Starting test testRenameVLAN(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
[pool-3-thread-5] Test testListVLANs(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 125, failed: 0, skipped: 0.
[pool-3-thread-4] Test testRenameVLAN(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 126, failed: 0, skipped: 0.
[pool-3-thread-1] Test testListStaticIPs(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 8ms
Test suite progress: tests succeeded: 127, failed: 0, skipped: 0.
[pool-3-thread-2] Test testListServers(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 13ms
Test suite progress: tests succeeded: 128, failed: 0, skipped: 0.
[pool-3-thread-3] Test testListDrives(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 15ms
Test suite progress: tests succeeded: 129, failed: 0, skipped: 0.
Starting test testResetServer(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
Starting test testSetDriveData(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
Starting test testSetServerConfiguration(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
Starting test testShutdownServer(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
Starting test testStartServer(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
[pool-3-thread-5] Test testResetServer(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 3ms
Test suite progress: tests succeeded: 130, failed: 0, skipped: 0.
Starting test testStopServer(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest)
[pool-3-thread-3] Test testStartServer(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 3ms
Test suite progress: tests succeeded: 131, failed: 0, skipped: 0.
[pool-3-thread-2] Test testShutdownServer(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 4ms
Test suite progress: tests succeeded: 132, failed: 0, skipped: 0.
[pool-3-thread-4] Test testSetDriveData(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 133, failed: 0, skipped: 0.
[pool-3-thread-1] Test testSetServerConfiguration(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 134, failed: 0, skipped: 0.
[pool-3-thread-5] Test testStopServer(org.jclouds.cloudsigma.CloudSigmaAsyncClientTest) succeeded: 2ms
Test suite progress: tests succeeded: 135, failed: 0, skipped: 0.
Tests run: 135, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 2.131 sec

Results :

Tests run: 135, Failures: 0, Errors: 0, Skipped: 0

[INFO] 
[INFO] --- maven-bundle-plugin:2.3.7:bundle (default-bundle) @ cloudsigma ---
[INFO] 
[INFO] --- maven-jar-plugin:2.4:test-jar (default) @ cloudsigma ---
[INFO] Building jar: /private/tmp/jclouds/apis/cloudsigma/target/cloudsigma-1.6.0-SNAPSHOT-tests.jar
[INFO] 
[INFO] --- maven-surefire-plugin:2.12.4:test (integration) @ cloudsigma ---
[INFO] Surefire report directory: /private/tmp/jclouds/apis/cloudsigma/target/surefire-reports

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running TestSuite
Configuring TestNG with: org.apache.maven.surefire.testng.conf.TestNG652Configurator@43b09468
Starting test testCreateAndDestroyVLAN(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)
Starting test setServiceDefaults(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest)
[TestNG] Test setServiceDefaults(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 1, failed: 0, skipped: 0.
Starting test testCompareSizes(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest)
[TestNG] Test testCreateAndDestroyVLAN(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) failed.
Test suite progress: tests succeeded: 1, failed: 1, skipped: 0.
Starting test testCreateDrive(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)
[TestNG] Test testCreateDrive(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) succeeded: 12686ms
Test suite progress: tests succeeded: 2, failed: 1, skipped: 0.
Starting test testGetDrive(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)
Fedora 15 Linux 64bit Preinstalled System with Automated SSH Access
Windows Web Server 2008 R2 64bit English with VirtIO support
Ubuntu 11.04 Desktop Edition Linux 64bit Preinstalled System pub
Windows Server Standard 2008 R2 64bit English
Centos 6.2 Linux 64bit Preinstalled System with automated SSH Access and VirtIO enabled
Windows Server Standard 2008 R2 64bit English
Windows Server 2008 Standard R2 SP1 64bit English with VirtIO and sysprep pub
CernVM batch-node 2.5.1-3-1 x86_64 Pre-install System
CernVM batch-node 2.4.0-1.1-1 x86_64 Pre-installed System
CentOS 6.1 64bit minimal Preinstalled System with Automated SSH Access and VirtIO enabled
Ubuntu 10.04 Linux Server Edition 64bit Preinstalled System with Automated SSH Access
CernVM basic 2.5.1-3-1 x86_64 Pre-installed System
CernVM basic 2.4.0-1.1-1 x86_64 Pre-installed System
CernVM desktop 2.4.0-1.1-1 x86_64 Pre-installed System
Ubuntu 12.04 Desktop Edition Linux 32bit Preinstalled System with Automated SSH Access and VirtIO enabled
CernVM head-node 2.5.1-3-1 x86_64 Pe-installed System
Ubuntu 10.04 LTS Server 32bit Preinstalled System and VirtIO enabled
CentOS 5.7 Linux 64bit Preinstalled System with Automated SSH Access and VirtIO enabled pub
stackato-new pub
Ubuntu 10.4.3 LTS Linux Server Edition 32bit Preinstalled System with automated SSH Access and VirtIO enabled
Windows Server 2008 Standard 32bit English
Ubuntu 10.04.4 LTS Linux Server Edition 64bit Preinstalled System with automated SSH and VirtIO enabled
CernVM head-node 2.4.0-1.1-1 x86_64 Pre-installed System
Ubuntu 10.04 Linux Server Edition 64bit Preinstalled System with automated SSH Access
CernVM desktop 2.5.1-3-1 x86_64 Pre-installed System
Slackware 13.37 32bit pub
halon-vsp-2.3.4
CentOS 6.0 Linux 64bit Preinstalled System with Automated SSH Access and VirtIO enabled
Ubuntu 10.04 Linux Server Edition 64bit Preinstalled System with automated SSH Access and VirtIO enabled
Ubuntu 11.04 Linux Server Edition 64bit Preinstalled System with Automated SSH Access and VirtIO enabled
SQL Server Standard 2008 R2 - Windows Server Standard 2008 R2 - 64bit English and VirtIO enabled
Ubuntu 12.04 Linux Server Edition 64bit Preinstalled System with Automated SSH Access and VirtIO enabled
SmartPay pub
Oracle Solaris 11 Express Preinstalled System pub
stackato-new pub
Windows Server 2008 Standard 32bit English
Debian 6.0 No X Minimal Linux 64bit Preinstalled System and VirtIO enabled
Ubuntu 10.4.3 LTS Linux Server Edition 64bit Preinstalled System with automated SSH Access and VirtIO enabled
Ubuntu 11.10 Desktop Edition Linux 32bit Preinstalled System with Automated SSH Access and VirtIO enabled
Windows Server 2008 Standard 32bit English with VirtIO support
Windows SQL Server 2008 R2 Web Edition 64bit English with VirtIO support
FreeBSD 9.0 Preinstalled System and VirtIO enabled
Centos 5.7 Linux 64bit Preinstalled System with automated SSH Access
Fedora 17 Linux 64bit Preinstalled System with SSH and VirtIO support
[TestNG] Test testCompareSizes(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) failed.
Test suite progress: tests succeeded: 2, failed: 2, skipped: 0.
Starting test testCorrectExceptionRunningNodesNotFound(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest)
Windows Server 2003 Standard 64bit English
[TestNG] Test testCorrectExceptionRunningNodesNotFound(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) succeeded: 1015ms
Test suite progress: tests succeeded: 3, failed: 2, skipped: 0.
Starting test testGetAssignableLocations(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest)
[TestNG] Test testGetAssignableLocations(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) succeeded: 4ms
Test suite progress: tests succeeded: 4, failed: 2, skipped: 0.
Starting test testImageById(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest)
[TestNG] Test testImageById(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) failed.
Test suite progress: tests succeeded: 4, failed: 3, skipped: 0.
Starting test testImagesCache(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest)
[TestNG] Test testImagesCache(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 5, failed: 3, skipped: 0.
Starting test testListImages(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest)
[TestNG] Test testListImages(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 6, failed: 3, skipped: 0.
Starting test testListSizes(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest)
[TestNG] Test testListSizes(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 7, failed: 3, skipped: 0.
Starting test testOptionToNotBlock(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest)
[TestNG] Test testOptionToNotBlock(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 8, failed: 3, skipped: 0.
Starting test testCreateAndRunAService(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest)
[TestNG] Test testCreateAndRunAService(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) failed.
Test suite progress: tests succeeded: 8, failed: 4, skipped: 0.
Starting test testCorrectAuthException(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest)
[TestNG] Test testCorrectAuthException(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) succeeded: 1142ms
Test suite progress: tests succeeded: 9, failed: 4, skipped: 0.
[TestNG] Test testAScriptExecutionAfterBootWithBasicTemplate(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 9, failed: 4, skipped: 1.
[TestNG] Test testConcurrentUseOfComputeServiceToCreateNodes(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 9, failed: 4, skipped: 2.
Starting test testTemplateMatch(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest)
[TestNG] Test testTemplateMatch(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) failed.
Test suite progress: tests succeeded: 9, failed: 5, skipped: 2.
[TestNG] Test testCreateTwoNodesWithRunScript(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 9, failed: 5, skipped: 3.
[TestNG] Test testCreateAnotherNodeWithANewContextToEnsureSharedMemIsntRequired(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 9, failed: 5, skipped: 4.
[TestNG] Test testCredentialsCache(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 9, failed: 5, skipped: 5.
[TestNG] Test testGet(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 9, failed: 5, skipped: 6.
[TestNG] Test testReboot(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 9, failed: 5, skipped: 7.
[TestNG] Test testSuspendResume(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 9, failed: 5, skipped: 8.
[TestNG] Test testGetNodesWithDetails(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 9, failed: 5, skipped: 9.
[TestNG] Test testListNodes(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 9, failed: 5, skipped: 10.
[TestNG] Test testListNodesByIds(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 9, failed: 5, skipped: 11.
[TestNG] Test testDestroyNodes(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 9, failed: 5, skipped: 12.
[TestNG] Test testGetDrive(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) succeeded: 203147ms
Test suite progress: tests succeeded: 10, failed: 5, skipped: 12.
Starting test testGetProfileInfo(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)
[TestNG] Test testGetProfileInfo(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) succeeded: 1030ms
Test suite progress: tests succeeded: 11, failed: 5, skipped: 12.
Starting test testGetServer(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)
[TestNG] Test testGetServer(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) succeeded: 1237ms
Test suite progress: tests succeeded: 12, failed: 5, skipped: 12.
Starting test testGetStaticIP(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)
[TestNG] Test testGetStaticIP(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) succeeded: 11571ms
Test suite progress: tests succeeded: 13, failed: 5, skipped: 12.
Starting test testGetVLAN(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)
[TestNG] Test testGetVLAN(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) succeeded: 1241ms
Test suite progress: tests succeeded: 14, failed: 5, skipped: 12.
Starting test testListDriveInfo(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)
[TestNG] Test testListDriveInfo(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) succeeded: 7544ms
Test suite progress: tests succeeded: 15, failed: 5, skipped: 12.
Starting test testListDrives(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)
[TestNG] Test testListDrives(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) succeeded: 1029ms
Test suite progress: tests succeeded: 16, failed: 5, skipped: 12.
Starting test testListServerInfo(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)
[TestNG] Test testListServerInfo(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) succeeded: 1225ms
Test suite progress: tests succeeded: 17, failed: 5, skipped: 12.
Starting test testListServers(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)
[TestNG] Test testListServers(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) succeeded: 995ms
Test suite progress: tests succeeded: 18, failed: 5, skipped: 12.
Starting test testListStandardCds(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)
[TestNG] Test testListStandardCds(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) succeeded: 1028ms
Test suite progress: tests succeeded: 19, failed: 5, skipped: 12.
Starting test testListStandardDrives(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)
[TestNG] Test testListStandardDrives(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) succeeded: 1055ms
Test suite progress: tests succeeded: 20, failed: 5, skipped: 12.
Starting test testListStandardImages(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)
[TestNG] Test testListStandardImages(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) succeeded: 1119ms
Test suite progress: tests succeeded: 21, failed: 5, skipped: 12.
Starting test testListStaticIPInfo(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)
[TestNG] Test testListStaticIPInfo(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) succeeded: 992ms
Test suite progress: tests succeeded: 22, failed: 5, skipped: 12.
Starting test testListStaticIPs(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)
[TestNG] Test testListStaticIPs(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) succeeded: 1208ms
Test suite progress: tests succeeded: 23, failed: 5, skipped: 12.
Starting test testListVLANInfo(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)
[TestNG] Test testListVLANInfo(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) succeeded: 1181ms
Test suite progress: tests succeeded: 24, failed: 5, skipped: 12.
Starting test testListVLANs(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)
[TestNG] Test testListVLANs(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) succeeded: 1452ms
Test suite progress: tests succeeded: 25, failed: 5, skipped: 12.
Starting test testSetDriveData(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)
[TestNG] Test testSetDriveData(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) succeeded: 1947ms
Test suite progress: tests succeeded: 26, failed: 5, skipped: 12.
Starting test testCreateAndDestroyStaticIP(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)
[TestNG] Test testCreateAndDestroyStaticIP(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) failed.
Test suite progress: tests succeeded: 26, failed: 6, skipped: 12.
[TestNG] Test testCreateAndStartServer(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) skipped.
Test suite progress: tests succeeded: 26, failed: 6, skipped: 13.
[TestNG] Test testConnectivity(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) skipped.
Test suite progress: tests succeeded: 26, failed: 6, skipped: 14.
[TestNG] Test testLifeCycle(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) skipped.
Test suite progress: tests succeeded: 26, failed: 6, skipped: 15.
[TestNG] Test testSetServerConfiguration(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) skipped.
Test suite progress: tests succeeded: 26, failed: 6, skipped: 16.
[TestNG] Test testDestroyServer(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) skipped.
Test suite progress: tests succeeded: 26, failed: 6, skipped: 17.
[TestNG] Test testDestroyDrive(org.jclouds.cloudsigma.CloudSigmaClientLiveTest) skipped.
Test suite progress: tests succeeded: 26, failed: 6, skipped: 18.
Tests run: 50, Failures: 6, Errors: 0, Skipped: 18, Time elapsed: 256.078 sec <<< FAILURE!
testCreateAndDestroyVLAN(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)  Time elapsed: 1.547 sec  <<< FAILURE!
java.lang.IllegalArgumentException: errors:system VLAN could not be created as you do not have a current unused VLAN subscription. Please purchase an additional VLAN subscription then try again.
	at org.jclouds.cloudsigma.handlers.CloudSigmaErrorHandler.handleError(CloudSigmaErrorHandler.java:69)
	at org.jclouds.http.handlers.DelegatingErrorHandler.handleError(DelegatingErrorHandler.java:69)
	at org.jclouds.http.internal.BaseHttpCommandExecutorService.shouldContinue(BaseHttpCommandExecutorService.java:182)
	at org.jclouds.http.internal.BaseHttpCommandExecutorService.invoke(BaseHttpCommandExecutorService.java:152)
	at org.jclouds.rest.internal.InvokeSyncToAsyncHttpMethod.invoke(InvokeSyncToAsyncHttpMethod.java:133)
	at org.jclouds.rest.internal.InvokeSyncToAsyncHttpMethod.apply(InvokeSyncToAsyncHttpMethod.java:99)
	at org.jclouds.rest.internal.InvokeSyncToAsyncHttpMethod.apply(InvokeSyncToAsyncHttpMethod.java:60)
	at org.jclouds.rest.internal.DelegatesToInvocationFunction.handle(DelegatesToInvocationFunction.java:159)
	at org.jclouds.rest.internal.DelegatesToInvocationFunction.invoke(DelegatesToInvocationFunction.java:126)
	at com.sun.proxy.$Proxy56.createVLAN(Unknown Source)
	at org.jclouds.cloudsigma.CloudSigmaClientLiveTest.testCreateAndDestroyVLAN(CloudSigmaClientLiveTest.java:242)
Caused by: org.jclouds.http.HttpResponseException: command: POST https://api.cloudsigma.com/resources/vlan/create HTTP/1.1 failed with response: HTTP/1.1 400 Bad Request; content: [errors:system VLAN could not be created as you do not have a current unused VLAN subscription. Please purchase an additional VLAN subscription then try again.]
	at org.jclouds.cloudsigma.handlers.CloudSigmaErrorHandler.handleError(CloudSigmaErrorHandler.java:56)
	... 31 more

testCompareSizes(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest)  Time elapsed: 195.356 sec  <<< FAILURE!
java.util.NoSuchElementException: imageId(f3c7c665-cd54-4a78-8fd2-7ec2f028cf29) not found
	at org.jclouds.compute.domain.internal.TemplateBuilderImpl.throwNoSuchElementExceptionAfterLoggingImageIds(TemplateBuilderImpl.java:723)
	at org.jclouds.compute.domain.internal.TemplateBuilderImpl.findImageWithId(TemplateBuilderImpl.java:708)
	at org.jclouds.compute.domain.internal.TemplateBuilderImpl.build(TemplateBuilderImpl.java:661)
	at org.jclouds.compute.domain.internal.TemplateBuilderImpl.build(TemplateBuilderImpl.java:648)
	at org.jclouds.compute.internal.BaseComputeServiceLiveTest.testCompareSizes(BaseComputeServiceLiveTest.java:803)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:80)
	at org.testng.internal.Invoker.invokeMethod(Invoker.java:714)
	at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:901)
	at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1231)
	at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127)
	at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)
	at org.testng.TestRunner.privateRun(TestRunner.java:767)
	at org.testng.TestRunner.run(TestRunner.java:617)
	at org.testng.SuiteRunner.runTest(SuiteRunner.java:334)
	at org.testng.SuiteRunner.access$000(SuiteRunner.java:37)
	at org.testng.SuiteRunner$SuiteWorker.run(SuiteRunner.java:368)
	at org.testng.internal.thread.ThreadUtil$2.call(ThreadUtil.java:64)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
	at java.lang.Thread.run(Thread.java:680)

testImageById(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest)  Time elapsed: 0.001 sec  <<< FAILURE!
java.util.NoSuchElementException: imageId(f3c7c665-cd54-4a78-8fd2-7ec2f028cf29) not found
	at org.jclouds.compute.domain.internal.TemplateBuilderImpl.throwNoSuchElementExceptionAfterLoggingImageIds(TemplateBuilderImpl.java:723)
	at org.jclouds.compute.domain.internal.TemplateBuilderImpl.findImageWithId(TemplateBuilderImpl.java:708)
	at org.jclouds.compute.domain.internal.TemplateBuilderImpl.build(TemplateBuilderImpl.java:661)
	at org.jclouds.compute.domain.internal.TemplateBuilderImpl.build(TemplateBuilderImpl.java:648)
	at org.jclouds.compute.internal.BaseComputeServiceLiveTest.testImageById(BaseComputeServiceLiveTest.java:207)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:80)
	at org.testng.internal.Invoker.invokeMethod(Invoker.java:714)
	at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:901)
	at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1231)
	at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127)
	at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)
	at org.testng.TestRunner.privateRun(TestRunner.java:767)
	at org.testng.TestRunner.run(TestRunner.java:617)
	at org.testng.SuiteRunner.runTest(SuiteRunner.java:334)
	at org.testng.SuiteRunner.access$000(SuiteRunner.java:37)
	at org.testng.SuiteRunner$SuiteWorker.run(SuiteRunner.java:368)
	at org.testng.internal.thread.ThreadUtil$2.call(ThreadUtil.java:64)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
	at java.lang.Thread.run(Thread.java:680)

testCreateAndRunAService(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest)  Time elapsed: 2.08 sec  <<< FAILURE!
java.util.NoSuchElementException: imageId(f3c7c665-cd54-4a78-8fd2-7ec2f028cf29) not found
	at org.jclouds.compute.domain.internal.TemplateBuilderImpl.throwNoSuchElementExceptionAfterLoggingImageIds(TemplateBuilderImpl.java:723)
	at org.jclouds.compute.domain.internal.TemplateBuilderImpl.findImageWithId(TemplateBuilderImpl.java:708)
	at org.jclouds.compute.domain.internal.TemplateBuilderImpl.build(TemplateBuilderImpl.java:661)
	at org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:234)
	at org.jclouds.compute.internal.BaseComputeServiceLiveTest.createAndRunAServiceInGroup(BaseComputeServiceLiveTest.java:673)
	at org.jclouds.compute.internal.BaseComputeServiceLiveTest.testCreateAndRunAService(BaseComputeServiceLiveTest.java:660)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:80)
	at org.testng.internal.Invoker.invokeMethod(Invoker.java:714)
	at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:901)
	at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1231)
	at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127)
	at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)
	at org.testng.TestRunner.privateRun(TestRunner.java:767)
	at org.testng.TestRunner.run(TestRunner.java:617)
	at org.testng.SuiteRunner.runTest(SuiteRunner.java:334)
	at org.testng.SuiteRunner.access$000(SuiteRunner.java:37)
	at org.testng.SuiteRunner$SuiteWorker.run(SuiteRunner.java:368)
	at org.testng.internal.thread.ThreadUtil$2.call(ThreadUtil.java:64)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
	at java.lang.Thread.run(Thread.java:680)

testTemplateMatch(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest)  Time elapsed: 0.001 sec  <<< FAILURE!
java.util.NoSuchElementException: imageId(f3c7c665-cd54-4a78-8fd2-7ec2f028cf29) not found
	at org.jclouds.compute.domain.internal.TemplateBuilderImpl.throwNoSuchElementExceptionAfterLoggingImageIds(TemplateBuilderImpl.java:723)
	at org.jclouds.compute.domain.internal.TemplateBuilderImpl.findImageWithId(TemplateBuilderImpl.java:708)
	at org.jclouds.compute.domain.internal.TemplateBuilderImpl.build(TemplateBuilderImpl.java:661)
	at org.jclouds.compute.domain.internal.TemplateBuilderImpl.build(TemplateBuilderImpl.java:648)
	at org.jclouds.compute.internal.BaseComputeServiceLiveTest.buildTemplate(BaseComputeServiceLiveTest.java:489)
	at org.jclouds.compute.internal.BaseComputeServiceLiveTest.testTemplateMatch(BaseComputeServiceLiveTest.java:325)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:80)
	at org.testng.internal.Invoker.invokeMethod(Invoker.java:714)
	at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:901)
	at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1231)
	at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127)
	at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)
	at org.testng.TestRunner.privateRun(TestRunner.java:767)
	at org.testng.TestRunner.run(TestRunner.java:617)
	at org.testng.SuiteRunner.runTest(SuiteRunner.java:334)
	at org.testng.SuiteRunner.access$000(SuiteRunner.java:37)
	at org.testng.SuiteRunner$SuiteWorker.run(SuiteRunner.java:368)
	at org.testng.internal.thread.ThreadUtil$2.call(ThreadUtil.java:64)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
	at java.lang.Thread.run(Thread.java:680)

testCreateAndDestroyStaticIP(org.jclouds.cloudsigma.CloudSigmaClientLiveTest)  Time elapsed: 1.011 sec  <<< FAILURE!
java.lang.IllegalArgumentException: errors:system IP address could not be created as you do not have a current unused static IP address subscription. Please purchase an additional static IP address subscription then try again.
	at org.jclouds.cloudsigma.handlers.CloudSigmaErrorHandler.handleError(CloudSigmaErrorHandler.java:69)
	at org.jclouds.http.handlers.DelegatingErrorHandler.handleError(DelegatingErrorHandler.java:69)
	at org.jclouds.http.internal.BaseHttpCommandExecutorService.shouldContinue(BaseHttpCommandExecutorService.java:182)
	at org.jclouds.http.internal.BaseHttpCommandExecutorService.invoke(BaseHttpCommandExecutorService.java:152)
	at org.jclouds.rest.internal.InvokeSyncToAsyncHttpMethod.invoke(InvokeSyncToAsyncHttpMethod.java:133)
	at org.jclouds.rest.internal.InvokeSyncToAsyncHttpMethod.apply(InvokeSyncToAsyncHttpMethod.java:99)
	at org.jclouds.rest.internal.InvokeSyncToAsyncHttpMethod.apply(InvokeSyncToAsyncHttpMethod.java:60)
	at org.jclouds.rest.internal.DelegatesToInvocationFunction.handle(DelegatesToInvocationFunction.java:159)
	at org.jclouds.rest.internal.DelegatesToInvocationFunction.invoke(DelegatesToInvocationFunction.java:126)
	at com.sun.proxy.$Proxy56.createStaticIP(Unknown Source)
	at org.jclouds.cloudsigma.CloudSigmaClientLiveTest.testCreateAndDestroyStaticIP(CloudSigmaClientLiveTest.java:258)
Caused by: org.jclouds.http.HttpResponseException: command: POST https://api.cloudsigma.com/resources/ip/create HTTP/1.1 failed with response: HTTP/1.1 400 Bad Request; content: [errors:system IP address could not be created as you do not have a current unused static IP address subscription. Please purchase an additional static IP address subscription then try again.]
	at org.jclouds.cloudsigma.handlers.CloudSigmaErrorHandler.handleError(CloudSigmaErrorHandler.java:56)
	... 31 more


Results :

Failed tests:   testCreateAndDestroyVLAN(org.jclouds.cloudsigma.CloudSigmaClientLiveTest): errors:system VLAN could not be created as you do not have a current unused VLAN subscription. Please purchase an additional VLAN subscription then try again.
  testCompareSizes(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest): imageId(f3c7c665-cd54-4a78-8fd2-7ec2f028cf29) not found
  testImageById(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest): imageId(f3c7c665-cd54-4a78-8fd2-7ec2f028cf29) not found
  testCreateAndRunAService(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest): imageId(f3c7c665-cd54-4a78-8fd2-7ec2f028cf29) not found
  testTemplateMatch(org.jclouds.cloudsigma.compute.CloudSigmaComputeServiceLiveTest): imageId(f3c7c665-cd54-4a78-8fd2-7ec2f028cf29) not found
  testCreateAndDestroyStaticIP(org.jclouds.cloudsigma.CloudSigmaClientLiveTest): errors:system IP address could not be created as you do not have a current unused static IP address subscription. Please purchase an additional static IP address subscription then try again.

Tests run: 50, Failures: 6, Errors: 0, Skipped: 18

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4:25.343s
[INFO] Finished at: Sat Apr 27 13:24:34 PDT 2013
[INFO] Final Memory: 18M/125M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.12.4:test (integration) on project cloudsigma: There are test failures.
[ERROR] 
[ERROR] Please refer to /private/tmp/jclouds/apis/cloudsigma/target/surefire-reports for the individual test results.
[ERROR] -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
