[INFO] Scanning for projects...
[WARNING] 
[WARNING] Some problems were encountered while building the effective model for org.jclouds.api:ec2: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 jcloud ec2 api 1.6.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- maven-clean-plugin:2.4.1:clean (default-clean) @ ec2 ---
[INFO] 
[INFO] --- maven-enforcer-plugin:1.1.1:enforce (enforce-maven) @ ec2 ---
[INFO] 
[INFO] --- maven-enforcer-plugin:1.1.1:enforce (enforce-banned-dependencies) @ ec2 ---
[INFO] 
[INFO] --- maven-enforcer-plugin:1.1.1:enforce (enforce-java) @ ec2 ---
[INFO] 
[INFO] --- maven-remote-resources-plugin:1.4:process (process-remote-resources) @ ec2 ---
[INFO] 
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ ec2 ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 4 resources
[INFO] Copying 1 resource
[INFO] Copying 2 resources
[INFO] 
[INFO] --- maven-compiler-plugin:2.5.1:compile (default-compile) @ ec2 ---
[INFO] Compiling 188 source files to /private/tmp/jclouds/apis/ec2/target/classes
[INFO] 
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ ec2 ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /private/tmp/jclouds/apis/ec2/src/test/clojure
[INFO] Copying 59 resources
[INFO] Copying 2 resources
[INFO] 
[INFO] --- maven-compiler-plugin:2.5.1:testCompile (default-testCompile) @ ec2 ---
[INFO] Compiling 115 source files to /private/tmp/jclouds/apis/ec2/target/test-classes
[INFO] 
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ ec2 ---
[INFO] Surefire report directory: /private/tmp/jclouds/apis/ec2/target/surefire-reports

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running TestSuite
Configuring TestNG with: org.apache.maven.surefire.testng.conf.TestNG652Configurator@2b275d39
Starting test testNullIsBad(org.jclouds.ec2.binders.BindBlockDeviceMappingToIndexedFormParamsTest)
Starting test test(org.jclouds.ec2.binders.BindBundleIdsToIndexedFormParamsTest)
Starting test testMustBeBlockDeviceMapping(org.jclouds.ec2.binders.BindBlockDeviceMappingToIndexedFormParamsTest)
Starting test testMappingOrdersLexicographically(org.jclouds.ec2.binders.BindBlockDeviceMappingToIndexedFormParamsTest)
Starting test testMustBeArray(org.jclouds.ec2.binders.BindBundleIdsToIndexedFormParamsTest)
[pool-1-thread-3] Test testNullIsBad(org.jclouds.ec2.binders.BindBlockDeviceMappingToIndexedFormParamsTest) succeeded: 6ms
Test suite progress: tests succeeded: 1, failed: 0, skipped: 0.
[pool-1-thread-2] Test testMustBeBlockDeviceMapping(org.jclouds.ec2.binders.BindBlockDeviceMappingToIndexedFormParamsTest) succeeded: 7ms
Test suite progress: tests succeeded: 2, failed: 0, skipped: 0.
Starting test testNullIsBad(org.jclouds.ec2.binders.BindBundleIdsToIndexedFormParamsTest)
Starting test test(org.jclouds.ec2.binders.BindFiltersToIndexedFormParamsTest)
[pool-1-thread-3] Test testNullIsBad(org.jclouds.ec2.binders.BindBundleIdsToIndexedFormParamsTest) succeeded: 0ms
Test suite progress: tests succeeded: 3, failed: 0, skipped: 0.
Starting test testMustBeMultimap(org.jclouds.ec2.binders.BindFiltersToIndexedFormParamsTest)
[pool-1-thread-5] Test testMustBeArray(org.jclouds.ec2.binders.BindBundleIdsToIndexedFormParamsTest) succeeded: 8ms
Test suite progress: tests succeeded: 4, failed: 0, skipped: 0.
[pool-1-thread-3] Test testMustBeMultimap(org.jclouds.ec2.binders.BindFiltersToIndexedFormParamsTest) succeeded: 1ms
Test suite progress: tests succeeded: 5, failed: 0, skipped: 0.
Starting test testNullIsBad(org.jclouds.ec2.binders.BindFiltersToIndexedFormParamsTest)
[pool-1-thread-5] Test testNullIsBad(org.jclouds.ec2.binders.BindFiltersToIndexedFormParamsTest) succeeded: 0ms
Test suite progress: tests succeeded: 6, failed: 0, skipped: 0.
Starting test test(org.jclouds.ec2.binders.BindGroupNamesToIndexedFormParamsTest)
Starting test testMustBeArray(org.jclouds.ec2.binders.BindGroupNamesToIndexedFormParamsTest)
[pool-1-thread-5] Test testMustBeArray(org.jclouds.ec2.binders.BindGroupNamesToIndexedFormParamsTest) succeeded: 0ms
Test suite progress: tests succeeded: 7, failed: 0, skipped: 0.
Starting test testNullIsBad(org.jclouds.ec2.binders.BindGroupNamesToIndexedFormParamsTest)
[pool-1-thread-5] Test testNullIsBad(org.jclouds.ec2.binders.BindGroupNamesToIndexedFormParamsTest) succeeded: 0ms
Test suite progress: tests succeeded: 8, failed: 0, skipped: 0.
Starting test test(org.jclouds.ec2.binders.BindInstanceIdsToIndexedFormParamsTest)
[pool-1-thread-1] Test testMappingOrdersLexicographically(org.jclouds.ec2.binders.BindBlockDeviceMappingToIndexedFormParamsTest) succeeded: 13ms
Test suite progress: tests succeeded: 9, failed: 0, skipped: 0.
[pool-1-thread-2] Test test(org.jclouds.ec2.binders.BindFiltersToIndexedFormParamsTest) succeeded: 5ms
Test suite progress: tests succeeded: 10, failed: 0, skipped: 0.
[pool-1-thread-5] Test test(org.jclouds.ec2.binders.BindInstanceIdsToIndexedFormParamsTest) succeeded: 2ms
Test suite progress: tests succeeded: 11, failed: 0, skipped: 0.
[pool-1-thread-3] Test test(org.jclouds.ec2.binders.BindGroupNamesToIndexedFormParamsTest) succeeded: 4ms
Starting test testNullIsBad(org.jclouds.ec2.binders.BindInstanceIdsToIndexedFormParamsTest)
Test suite progress: tests succeeded: 12, failed: 0, skipped: 0.
Starting test testMustBeArray(org.jclouds.ec2.binders.BindInstanceIdsToIndexedFormParamsTest)
[pool-1-thread-4] Test test(org.jclouds.ec2.binders.BindBundleIdsToIndexedFormParamsTest) succeeded: 14ms
Test suite progress: tests succeeded: 13, failed: 0, skipped: 0.
Starting test test(org.jclouds.ec2.binders.BindKeyNamesToIndexedFormParamsTest)
[pool-1-thread-1] Test testMustBeArray(org.jclouds.ec2.binders.BindInstanceIdsToIndexedFormParamsTest) succeeded: 0ms
Test suite progress: tests succeeded: 14, failed: 0, skipped: 0.
Starting test testMustBeArray(org.jclouds.ec2.binders.BindKeyNamesToIndexedFormParamsTest)
[pool-1-thread-2] Test testNullIsBad(org.jclouds.ec2.binders.BindInstanceIdsToIndexedFormParamsTest) succeeded: 0ms
Test suite progress: tests succeeded: 15, failed: 0, skipped: 0.
[pool-1-thread-3] Test testMustBeArray(org.jclouds.ec2.binders.BindKeyNamesToIndexedFormParamsTest) succeeded: 0ms
Test suite progress: tests succeeded: 16, failed: 0, skipped: 0.
Starting test test(org.jclouds.ec2.binders.BindProductCodesToIndexedFormParamsTest)
Starting test testMustBeIterable(org.jclouds.ec2.binders.BindProductCodesToIndexedFormParamsTest)
Starting test testNullIsBad(org.jclouds.ec2.binders.BindKeyNamesToIndexedFormParamsTest)
Starting test testNullIsBad(org.jclouds.ec2.binders.BindProductCodesToIndexedFormParamsTest)
[pool-1-thread-5] Test test(org.jclouds.ec2.binders.BindKeyNamesToIndexedFormParamsTest) succeeded: 1ms
Test suite progress: tests succeeded: 17, failed: 0, skipped: 0.
[pool-1-thread-4] Test testNullIsBad(org.jclouds.ec2.binders.BindKeyNamesToIndexedFormParamsTest) succeeded: 0ms
Test suite progress: tests succeeded: 18, failed: 0, skipped: 0.
Starting test test(org.jclouds.ec2.binders.BindPublicIpsToIndexedFormParamsTest)
[pool-1-thread-2] Test testMustBeIterable(org.jclouds.ec2.binders.BindProductCodesToIndexedFormParamsTest) succeeded: 0ms
Test suite progress: tests succeeded: 19, failed: 0, skipped: 0.
[pool-1-thread-3] Test testNullIsBad(org.jclouds.ec2.binders.BindProductCodesToIndexedFormParamsTest) succeeded: 0ms
Test suite progress: tests succeeded: 20, failed: 0, skipped: 0.
Starting test testMustBeArray(org.jclouds.ec2.binders.BindPublicIpsToIndexedFormParamsTest)
Starting test testNullIsBad(org.jclouds.ec2.binders.BindPublicIpsToIndexedFormParamsTest)
Starting test test(org.jclouds.ec2.binders.BindResourceIdsToIndexedFormParamsTest)
[pool-1-thread-4] Test testMustBeArray(org.jclouds.ec2.binders.BindPublicIpsToIndexedFormParamsTest) succeeded: 0ms
Test suite progress: tests succeeded: 21, failed: 0, skipped: 0.
[pool-1-thread-1] Test test(org.jclouds.ec2.binders.BindProductCodesToIndexedFormParamsTest) succeeded: 1ms
Test suite progress: tests succeeded: 22, failed: 0, skipped: 0.
[pool-1-thread-2] Test testNullIsBad(org.jclouds.ec2.binders.BindPublicIpsToIndexedFormParamsTest) succeeded: 0ms
Test suite progress: tests succeeded: 23, failed: 0, skipped: 0.
Starting test testMustBeArray(org.jclouds.ec2.binders.BindResourceIdsToIndexedFormParamsTest)
Starting test testNullIsBad(org.jclouds.ec2.binders.BindResourceIdsToIndexedFormParamsTest)
[pool-1-thread-3] Test test(org.jclouds.ec2.binders.BindResourceIdsToIndexedFormParamsTest) succeeded: 0ms
Test suite progress: tests succeeded: 24, failed: 0, skipped: 0.
[pool-1-thread-4] Test testMustBeArray(org.jclouds.ec2.binders.BindResourceIdsToIndexedFormParamsTest) succeeded: 1ms
Starting test test(org.jclouds.ec2.binders.BindTagKeysToIndexedFormParamsTest)
Test suite progress: tests succeeded: 25, failed: 0, skipped: 0.
[pool-1-thread-5] Test test(org.jclouds.ec2.binders.BindPublicIpsToIndexedFormParamsTest) succeeded: 2ms
Starting test testMustBeIterable(org.jclouds.ec2.binders.BindTagKeysToIndexedFormParamsTest)
Test suite progress: tests succeeded: 26, failed: 0, skipped: 0.
[pool-1-thread-1] Test testNullIsBad(org.jclouds.ec2.binders.BindResourceIdsToIndexedFormParamsTest) succeeded: 1ms
Test suite progress: tests succeeded: 27, failed: 0, skipped: 0.
Starting test testNullIsBad(org.jclouds.ec2.binders.BindTagKeysToIndexedFormParamsTest)
Starting test test(org.jclouds.ec2.binders.BindTagsToIndexedFormParamsTest)
[pool-1-thread-3] Test testMustBeIterable(org.jclouds.ec2.binders.BindTagKeysToIndexedFormParamsTest) succeeded: 0ms
Test suite progress: tests succeeded: 28, failed: 0, skipped: 0.
[pool-1-thread-4] Test testNullIsBad(org.jclouds.ec2.binders.BindTagKeysToIndexedFormParamsTest) succeeded: 0ms
Test suite progress: tests succeeded: 29, failed: 0, skipped: 0.
Starting test testEmpty(org.jclouds.ec2.binders.BindTagsToIndexedFormParamsTest)
Starting test testMustBeArray(org.jclouds.ec2.binders.BindTagsToIndexedFormParamsTest)
Starting test testNullIsBad(org.jclouds.ec2.binders.BindTagsToIndexedFormParamsTest)
[pool-1-thread-5] Test test(org.jclouds.ec2.binders.BindTagsToIndexedFormParamsTest) succeeded: 1ms
Test suite progress: tests succeeded: 30, failed: 0, skipped: 0.
[pool-1-thread-4] Test testNullIsBad(org.jclouds.ec2.binders.BindTagsToIndexedFormParamsTest) succeeded: 0ms
Test suite progress: tests succeeded: 31, failed: 0, skipped: 0.
[pool-1-thread-1] Test testEmpty(org.jclouds.ec2.binders.BindTagsToIndexedFormParamsTest) succeeded: 0ms
Starting test test(org.jclouds.ec2.binders.BindUserGroupsToIndexedFormParamsTest)
Test suite progress: tests succeeded: 32, failed: 0, skipped: 0.
[pool-1-thread-2] Test test(org.jclouds.ec2.binders.BindTagKeysToIndexedFormParamsTest) succeeded: 1ms
Test suite progress: tests succeeded: 33, failed: 0, skipped: 0.
Starting test testMustBeIterable(org.jclouds.ec2.binders.BindUserGroupsToIndexedFormParamsTest)
Starting test testNullIsBad(org.jclouds.ec2.binders.BindUserGroupsToIndexedFormParamsTest)
[pool-1-thread-5] Test test(org.jclouds.ec2.binders.BindUserGroupsToIndexedFormParamsTest) succeeded: 1ms
Test suite progress: tests succeeded: 34, failed: 0, skipped: 0.
[pool-1-thread-4] Test testMustBeIterable(org.jclouds.ec2.binders.BindUserGroupsToIndexedFormParamsTest) succeeded: 0ms
Starting test testOnlyAllIsValid(org.jclouds.ec2.binders.BindUserGroupsToIndexedFormParamsTest)
Test suite progress: tests succeeded: 35, failed: 0, skipped: 0.
Starting test testMustBeUserIdGroupPair(org.jclouds.ec2.binders.BindUserIdGroupPairToSourceSecurityGroupFormParamsTest)
[pool-1-thread-3] Test testMustBeArray(org.jclouds.ec2.binders.BindTagsToIndexedFormParamsTest) succeeded: 1ms
Test suite progress: tests succeeded: 36, failed: 0, skipped: 0.
Starting test testNullIsBad(org.jclouds.ec2.binders.BindUserIdGroupPairToSourceSecurityGroupFormParamsTest)
[pool-1-thread-2] Test testOnlyAllIsValid(org.jclouds.ec2.binders.BindUserGroupsToIndexedFormParamsTest) succeeded: 0ms
Test suite progress: tests succeeded: 37, failed: 0, skipped: 0.
[pool-1-thread-4] Test testNullIsBad(org.jclouds.ec2.binders.BindUserIdGroupPairToSourceSecurityGroupFormParamsTest) succeeded: 1ms
Test suite progress: tests succeeded: 38, failed: 0, skipped: 0.
[pool-1-thread-1] Test testNullIsBad(org.jclouds.ec2.binders.BindUserGroupsToIndexedFormParamsTest) succeeded: 1ms
Test suite progress: tests succeeded: 39, failed: 0, skipped: 0.
Starting test test(org.jclouds.ec2.binders.BindUserIdsToIndexedFormParamsTest)
Starting test testMustBeIterable(org.jclouds.ec2.binders.BindUserIdsToIndexedFormParamsTest)
Starting test testNullIsBad(org.jclouds.ec2.binders.BindUserIdsToIndexedFormParamsTest)
[pool-1-thread-1] Test testMustBeIterable(org.jclouds.ec2.binders.BindUserIdsToIndexedFormParamsTest) succeeded: 0ms
Test suite progress: tests succeeded: 40, failed: 0, skipped: 0.
Starting test testUserIdGroupPair(org.jclouds.ec2.binders.BindUserIdGroupPairToSourceSecurityGroupFormParamsTest)
[pool-1-thread-3] Test test(org.jclouds.ec2.binders.BindUserIdsToIndexedFormParamsTest) succeeded: 1ms
Test suite progress: tests succeeded: 41, failed: 0, skipped: 0.
Starting test test(org.jclouds.ec2.binders.BindVolumeIdsToIndexedFormParamsTest)
Starting test testMustBeArray(org.jclouds.ec2.binders.BindVolumeIdsToIndexedFormParamsTest)
[pool-1-thread-2] Test testUserIdGroupPair(org.jclouds.ec2.binders.BindUserIdGroupPairToSourceSecurityGroupFormParamsTest) succeeded: 0ms
Test suite progress: tests succeeded: 42, failed: 0, skipped: 0.
[pool-1-thread-5] Test testMustBeUserIdGroupPair(org.jclouds.ec2.binders.BindUserIdGroupPairToSourceSecurityGroupFormParamsTest) succeeded: 2ms
Test suite progress: tests succeeded: 43, failed: 0, skipped: 0.
Starting test testNullIsBad(org.jclouds.ec2.binders.BindVolumeIdsToIndexedFormParamsTest)
Starting test testAssignability(org.jclouds.ec2.options.BundleInstanceS3StorageOptionsTest)
[pool-1-thread-2] Test testNullIsBad(org.jclouds.ec2.binders.BindVolumeIdsToIndexedFormParamsTest) succeeded: 0ms
Test suite progress: tests succeeded: 44, failed: 0, skipped: 0.
[pool-1-thread-4] Test testNullIsBad(org.jclouds.ec2.binders.BindUserIdsToIndexedFormParamsTest) succeeded: 2ms
Test suite progress: tests succeeded: 45, failed: 0, skipped: 0.
Starting test testBucketOwnedBy(org.jclouds.ec2.options.BundleInstanceS3StorageOptionsTest)
[pool-1-thread-1] Test test(org.jclouds.ec2.binders.BindVolumeIdsToIndexedFormParamsTest) succeeded: 1ms
Starting test testBucketOwnedByNPE(org.jclouds.ec2.options.BundleInstanceS3StorageOptionsTest)
Test suite progress: tests succeeded: 46, failed: 0, skipped: 0.
Starting test testBucketOwnedByStatic(org.jclouds.ec2.options.BundleInstanceS3StorageOptionsTest)
[pool-1-thread-3] Test testMustBeArray(org.jclouds.ec2.binders.BindVolumeIdsToIndexedFormParamsTest) succeeded: 2ms
Test suite progress: tests succeeded: 47, failed: 0, skipped: 0.
Starting test testNullBucketOwnedBy(org.jclouds.ec2.options.BundleInstanceS3StorageOptionsTest)
[pool-1-thread-5] Test testAssignability(org.jclouds.ec2.options.BundleInstanceS3StorageOptionsTest) succeeded: 2ms
Test suite progress: tests succeeded: 48, failed: 0, skipped: 0.
Starting test testNullBucketOwnedByNotInjected(org.jclouds.ec2.options.BundleInstanceS3StorageOptionsTest)
[pool-1-thread-4] Test testBucketOwnedByNPE(org.jclouds.ec2.options.BundleInstanceS3StorageOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 49, failed: 0, skipped: 0.
Starting test testDefault(org.jclouds.ec2.functions.ConvertUnencodedBytesToBase64EncodedStringTest)
[pool-1-thread-5] Test testNullBucketOwnedByNotInjected(org.jclouds.ec2.options.BundleInstanceS3StorageOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 50, failed: 0, skipped: 0.
[pool-1-thread-3] Test testNullBucketOwnedBy(org.jclouds.ec2.options.BundleInstanceS3StorageOptionsTest) succeeded: 2ms
Test suite progress: tests succeeded: 51, failed: 0, skipped: 0.
Starting test testAssignability(org.jclouds.ec2.options.CreateImageOptionsTest)
[pool-1-thread-1] Test testBucketOwnedByStatic(org.jclouds.ec2.options.BundleInstanceS3StorageOptionsTest) succeeded: 3ms
Starting test testNoReboot(org.jclouds.ec2.options.CreateImageOptionsTest)
Test suite progress: tests succeeded: 52, failed: 0, skipped: 0.
[pool-1-thread-2] Test testBucketOwnedBy(org.jclouds.ec2.options.BundleInstanceS3StorageOptionsTest) succeeded: 4ms
Starting test testNoRebootStatic(org.jclouds.ec2.options.CreateImageOptionsTest)
Test suite progress: tests succeeded: 53, failed: 0, skipped: 0.
[pool-1-thread-5] Test testAssignability(org.jclouds.ec2.options.CreateImageOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 54, failed: 0, skipped: 0.
Starting test testNullWithDescription(org.jclouds.ec2.options.CreateImageOptionsTest)
Starting test testWithDescription(org.jclouds.ec2.options.CreateImageOptionsTest)
[pool-1-thread-2] Test testNullWithDescription(org.jclouds.ec2.options.CreateImageOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 55, failed: 0, skipped: 0.
[pool-1-thread-5] Test testWithDescription(org.jclouds.ec2.options.CreateImageOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 56, failed: 0, skipped: 0.
Starting test testWithDescriptionNPE(org.jclouds.ec2.options.CreateImageOptionsTest)
Starting test testWithDescriptionStatic(org.jclouds.ec2.options.CreateImageOptionsTest)
[pool-1-thread-2] Test testWithDescriptionNPE(org.jclouds.ec2.options.CreateImageOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 57, failed: 0, skipped: 0.
[pool-1-thread-1] Test testNoRebootStatic(org.jclouds.ec2.options.CreateImageOptionsTest) succeeded: 3ms
Test suite progress: tests succeeded: 58, failed: 0, skipped: 0.
Starting test testAssignability(org.jclouds.ec2.options.CreateSnapshotOptionsTest)
[pool-1-thread-5] Test testWithDescriptionStatic(org.jclouds.ec2.options.CreateImageOptionsTest) succeeded: 1ms
Starting test testNullWithDescription(org.jclouds.ec2.options.CreateSnapshotOptionsTest)
Test suite progress: tests succeeded: 59, failed: 0, skipped: 0.
[pool-1-thread-3] Test testNoReboot(org.jclouds.ec2.options.CreateImageOptionsTest) succeeded: 3ms
Test suite progress: tests succeeded: 60, failed: 0, skipped: 0.
Starting test testWithDescription(org.jclouds.ec2.options.CreateSnapshotOptionsTest)
Starting test testWithDescriptionNPE(org.jclouds.ec2.options.CreateSnapshotOptionsTest)
[pool-1-thread-5] Test testWithDescription(org.jclouds.ec2.options.CreateSnapshotOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 61, failed: 0, skipped: 0.
[pool-1-thread-2] Test testAssignability(org.jclouds.ec2.options.CreateSnapshotOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 62, failed: 0, skipped: 0.
Starting test testWithDescriptionStatic(org.jclouds.ec2.options.CreateSnapshotOptionsTest)
Starting test testDescribeAvailabilityZonesInRegion_BestEffort(org.jclouds.ec2.suppliers.DescribeAvailabilityZonesInRegionTest)
[pool-1-thread-3] Test testWithDescriptionNPE(org.jclouds.ec2.options.CreateSnapshotOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 63, failed: 0, skipped: 0.
Starting test testDescribeAvailabilityZonesInRegion_NoZones(org.jclouds.ec2.suppliers.DescribeAvailabilityZonesInRegionTest)
[pool-1-thread-1] Test testNullWithDescription(org.jclouds.ec2.options.CreateSnapshotOptionsTest) succeeded: 3ms
Test suite progress: tests succeeded: 64, failed: 0, skipped: 0.
Starting test testDescribeAvailabilityZonesInRegion_RethrowIfNoneFound(org.jclouds.ec2.suppliers.DescribeAvailabilityZonesInRegionTest)
[pool-1-thread-5] Test testWithDescriptionStatic(org.jclouds.ec2.options.CreateSnapshotOptionsTest) succeeded: 4ms
Test suite progress: tests succeeded: 65, failed: 0, skipped: 0.
Starting test testAssignability(org.jclouds.ec2.options.DescribeImagesOptionsTest)
[pool-1-thread-5] Test testAssignability(org.jclouds.ec2.options.DescribeImagesOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 66, failed: 0, skipped: 0.
Starting test testExecutableBy(org.jclouds.ec2.options.DescribeImagesOptionsTest)
[pool-1-thread-5] Test testExecutableBy(org.jclouds.ec2.options.DescribeImagesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 67, failed: 0, skipped: 0.
Starting test testExecutableByNPE(org.jclouds.ec2.options.DescribeImagesOptionsTest)
[pool-1-thread-5] Test testExecutableByNPE(org.jclouds.ec2.options.DescribeImagesOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 68, failed: 0, skipped: 0.
Starting test testExecutableByStatic(org.jclouds.ec2.options.DescribeImagesOptionsTest)
[pool-1-thread-5] Test testExecutableByStatic(org.jclouds.ec2.options.DescribeImagesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 69, failed: 0, skipped: 0.
Starting test testImageIds(org.jclouds.ec2.options.DescribeImagesOptionsTest)
[pool-1-thread-5] Test testImageIds(org.jclouds.ec2.options.DescribeImagesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 70, failed: 0, skipped: 0.
Starting test testImageIdsStatic(org.jclouds.ec2.options.DescribeImagesOptionsTest)
[pool-1-thread-5] Test testImageIdsStatic(org.jclouds.ec2.options.DescribeImagesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 71, failed: 0, skipped: 0.
Starting test testMultipleImageIds(org.jclouds.ec2.options.DescribeImagesOptionsTest)
[pool-1-thread-5] Test testMultipleImageIds(org.jclouds.ec2.options.DescribeImagesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 72, failed: 0, skipped: 0.
Starting test testMultipleOwners(org.jclouds.ec2.options.DescribeImagesOptionsTest)
[pool-1-thread-5] Test testMultipleOwners(org.jclouds.ec2.options.DescribeImagesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 73, failed: 0, skipped: 0.
Starting test testNullExecutableBy(org.jclouds.ec2.options.DescribeImagesOptionsTest)
[pool-1-thread-5] Test testNullExecutableBy(org.jclouds.ec2.options.DescribeImagesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 74, failed: 0, skipped: 0.
Starting test testNullImageIds(org.jclouds.ec2.options.DescribeImagesOptionsTest)
[pool-1-thread-5] Test testNullImageIds(org.jclouds.ec2.options.DescribeImagesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 75, failed: 0, skipped: 0.
Starting test testNullOwners(org.jclouds.ec2.options.DescribeImagesOptionsTest)
[pool-1-thread-5] Test testNullOwners(org.jclouds.ec2.options.DescribeImagesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 76, failed: 0, skipped: 0.
Starting test testOwners(org.jclouds.ec2.options.DescribeImagesOptionsTest)
[pool-1-thread-5] Test testOwners(org.jclouds.ec2.options.DescribeImagesOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 77, failed: 0, skipped: 0.
Starting test testOwnersStatic(org.jclouds.ec2.options.DescribeImagesOptionsTest)
[pool-1-thread-5] Test testOwnersStatic(org.jclouds.ec2.options.DescribeImagesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 78, failed: 0, skipped: 0.
Starting test testAssignability(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest)
[pool-1-thread-5] Test testAssignability(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 79, failed: 0, skipped: 0.
Starting test testMultipleOwners(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest)
[pool-1-thread-5] Test testMultipleOwners(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 80, failed: 0, skipped: 0.
Starting test testMultipleSnapshotIds(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest)
[pool-1-thread-5] Test testMultipleSnapshotIds(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 81, failed: 0, skipped: 0.
Starting test testNullOwners(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest)
[pool-1-thread-5] Test testNullOwners(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 82, failed: 0, skipped: 0.
[pool-1-thread-4] Test testDefault(org.jclouds.ec2.functions.ConvertUnencodedBytesToBase64EncodedStringTest) succeeded: 25ms
Starting test testNullRestorableBy(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest)
Test suite progress: tests succeeded: 83, failed: 0, skipped: 0.
[pool-1-thread-5] Test testNullRestorableBy(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 84, failed: 0, skipped: 0.
Starting test testNullSnapshotIds(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest)
[pool-1-thread-4] Test testNullSnapshotIds(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 85, failed: 0, skipped: 0.
Starting test testOwners(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest)
[pool-1-thread-5] Test testOwners(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 86, failed: 0, skipped: 0.
Starting test testOwnersStatic(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest)
Starting test testRestorableBy(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest)
[pool-1-thread-5] Test testRestorableBy(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 87, failed: 0, skipped: 0.
[pool-1-thread-4] Test testOwnersStatic(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 88, failed: 0, skipped: 0.
Starting test testRestorableByStatic(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest)
[pool-1-thread-5] Test testRestorableByStatic(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest) succeeded: 0ms
Starting test testSnapshotIds(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest)
Test suite progress: tests succeeded: 89, failed: 0, skipped: 0.
[pool-1-thread-4] Test testSnapshotIds(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 90, failed: 0, skipped: 0.
Starting test testSnapshotIdsStatic(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest)
[pool-1-thread-5] Test testSnapshotIdsStatic(org.jclouds.ec2.options.DescribeSnapshotsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 91, failed: 0, skipped: 0.
Starting test testAssignability(org.jclouds.ec2.options.DetachVolumeOptionsTest)
Starting test testFromDevice(org.jclouds.ec2.options.DetachVolumeOptionsTest)
[pool-1-thread-4] Test testAssignability(org.jclouds.ec2.options.DetachVolumeOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 92, failed: 0, skipped: 0.
[pool-1-thread-5] Test testFromDevice(org.jclouds.ec2.options.DetachVolumeOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 93, failed: 0, skipped: 0.
Starting test testFromDeviceNPE(org.jclouds.ec2.options.DetachVolumeOptionsTest)
Starting test testFromDeviceStatic(org.jclouds.ec2.options.DetachVolumeOptionsTest)
[pool-1-thread-4] Test testFromDeviceNPE(org.jclouds.ec2.options.DetachVolumeOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 94, failed: 0, skipped: 0.
[pool-1-thread-5] Test testFromDeviceStatic(org.jclouds.ec2.options.DetachVolumeOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 95, failed: 0, skipped: 0.
Starting test testFromInstance(org.jclouds.ec2.options.DetachVolumeOptionsTest)
Starting test testFromInstanceNPE(org.jclouds.ec2.options.DetachVolumeOptionsTest)
[pool-1-thread-4] Test testFromInstance(org.jclouds.ec2.options.DetachVolumeOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 96, failed: 0, skipped: 0.
[pool-1-thread-5] Test testFromInstanceNPE(org.jclouds.ec2.options.DetachVolumeOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 97, failed: 0, skipped: 0.
Starting test testFromInstanceStatic(org.jclouds.ec2.options.DetachVolumeOptionsTest)
[pool-1-thread-4] Test testFromInstanceStatic(org.jclouds.ec2.options.DetachVolumeOptionsTest) succeeded: 0ms
Starting test testNullFromDevice(org.jclouds.ec2.options.DetachVolumeOptionsTest)
Test suite progress: tests succeeded: 98, failed: 0, skipped: 0.
[pool-1-thread-5] Test testNullFromDevice(org.jclouds.ec2.options.DetachVolumeOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 99, failed: 0, skipped: 0.
Starting test testNullFromInstance(org.jclouds.ec2.options.DetachVolumeOptionsTest)
[pool-1-thread-4] Test testNullFromInstance(org.jclouds.ec2.options.DetachVolumeOptionsTest) succeeded: 0ms
Starting test testCacheLoaderDoesNotReloadAfterAuthorizationException(org.jclouds.ec2.compute.config.EC2ComputeServiceContextModuleTest)
Test suite progress: tests succeeded: 100, failed: 0, skipped: 0.
Starting test testHardwareWithImageIdPredicateOnlyAcceptsImageWhenLocationNull(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testHardwareWithImageIdPredicateOnlyAcceptsImageWhenLocationNull(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 0ms
Test suite progress: tests succeeded: 101, failed: 0, skipped: 0.
Starting test testParseOnDemand(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-3] Test testDescribeAvailabilityZonesInRegion_NoZones(org.jclouds.ec2.suppliers.DescribeAvailabilityZonesInRegionTest) succeeded: 39ms
Test suite progress: tests succeeded: 102, failed: 0, skipped: 0.
Starting test testDefaultGroupsVarArgsEmpty(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-1] Test testDescribeAvailabilityZonesInRegion_RethrowIfNoneFound(org.jclouds.ec2.suppliers.DescribeAvailabilityZonesInRegionTest) succeeded: 38ms
Test suite progress: tests succeeded: 103, failed: 0, skipped: 0.
Starting test testDefaultOpen22(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-3] Test testDefaultGroupsVarArgsEmpty(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 2ms
Test suite progress: tests succeeded: 104, failed: 0, skipped: 0.
Starting test testFalsenoKeyPair(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-3] Test testFalsenoKeyPair(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 105, failed: 0, skipped: 0.
[pool-1-thread-1] Test testDefaultOpen22(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 106, failed: 0, skipped: 0.
Starting test testNoKeyPairAndKeyPair(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-3] Test testNoKeyPairAndKeyPair(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Starting test testNullauthorizePublicKey(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
Test suite progress: tests succeeded: 107, failed: 0, skipped: 0.
[pool-1-thread-1] Test testNullauthorizePublicKey(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 108, failed: 0, skipped: 0.
Starting test testNullblockOnPort(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-3] Test testNullblockOnPort(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Starting test testNullinstallPrivateKey(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
Test suite progress: tests succeeded: 109, failed: 0, skipped: 0.
[pool-1-thread-1] Test testNullinstallPrivateKey(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 110, failed: 0, skipped: 0.
Starting test testNullkeyPair(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-3] Test testNullkeyPair(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Starting test testauthorizePublicKey(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
Test suite progress: tests succeeded: 111, failed: 0, skipped: 0.
[pool-1-thread-1] Test testauthorizePublicKey(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 112, failed: 0, skipped: 0.
Starting test testauthorizePublicKeyBadFormat(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-3] Test testauthorizePublicKeyBadFormat(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Starting test testauthorizePublicKeyNPE(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
Test suite progress: tests succeeded: 113, failed: 0, skipped: 0.
Starting test testauthorizePublicKeyStatic(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-3] Test testauthorizePublicKeyStatic(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 114, failed: 0, skipped: 0.
[pool-1-thread-1] Test testauthorizePublicKeyNPE(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 2ms
Test suite progress: tests succeeded: 115, failed: 0, skipped: 0.
Starting test testblockOnPort(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
Starting test testblockOnPortBadFormat(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-3] Test testblockOnPort(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 116, failed: 0, skipped: 0.
[pool-1-thread-1] Test testblockOnPortBadFormat(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 117, failed: 0, skipped: 0.
Starting test testblockOnPortStatic(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-1] Test testblockOnPortStatic(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 118, failed: 0, skipped: 0.
Starting test testinboundPorts(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
Starting test testinboundPortsBadFormat(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-3] Test testinboundPortsBadFormat(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 119, failed: 0, skipped: 0.
Starting test testinboundPortsStatic(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-3] Test testinboundPortsStatic(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 120, failed: 0, skipped: 0.
[pool-1-thread-1] Test testinboundPorts(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 4ms
Starting test testinstallPrivateKey(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
Test suite progress: tests succeeded: 121, failed: 0, skipped: 0.
[pool-1-thread-3] Test testinstallPrivateKey(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 122, failed: 0, skipped: 0.
Starting test testinstallPrivateKeyBadFormat(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-1] Test testinstallPrivateKeyBadFormat(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Starting test testinstallPrivateKeyNPE(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
Test suite progress: tests succeeded: 123, failed: 0, skipped: 0.
[pool-1-thread-3] Test testinstallPrivateKeyNPE(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 124, failed: 0, skipped: 0.
Starting test testinstallPrivateKeyStatic(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-1] Test testinstallPrivateKeyStatic(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Starting test testkeyPair(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
Test suite progress: tests succeeded: 125, failed: 0, skipped: 0.
Starting test testkeyPairAndNoKeyPair(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-3] Test testkeyPair(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 126, failed: 0, skipped: 0.
[pool-1-thread-1] Test testkeyPairAndNoKeyPair(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 127, failed: 0, skipped: 0.
Starting test testkeyPairBadFormat(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
Starting test testkeyPairNPE(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-3] Test testkeyPairBadFormat(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 128, failed: 0, skipped: 0.
[pool-1-thread-1] Test testkeyPairNPE(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 129, failed: 0, skipped: 0.
Starting test testkeyPairStatic(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
Starting test testnoKeyPair(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-3] Test testkeyPairStatic(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 130, failed: 0, skipped: 0.
[pool-1-thread-1] Test testnoKeyPair(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 131, failed: 0, skipped: 0.
Starting test testnoKeyPairStatic(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
Starting test testsecurityGroupsIterable(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-3] Test testnoKeyPairStatic(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 132, failed: 0, skipped: 0.
[pool-1-thread-1] Test testsecurityGroupsIterable(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 133, failed: 0, skipped: 0.
Starting test testsecurityGroupsIterableBadFormat(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
Starting test testsecurityGroupsIterableEmptyNotOk(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-3] Test testsecurityGroupsIterableBadFormat(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 134, failed: 0, skipped: 0.
[pool-1-thread-1] Test testsecurityGroupsIterableEmptyNotOk(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 135, failed: 0, skipped: 0.
Starting test testsecurityGroupsIterableStatic(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
Starting test testsecurityGroupsVarArgs(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-3] Test testsecurityGroupsIterableStatic(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 136, failed: 0, skipped: 0.
[pool-1-thread-1] Test testsecurityGroupsVarArgs(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 137, failed: 0, skipped: 0.
Starting test testsecurityGroupsVarArgsBadFormat(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
Starting test testsecurityGroupsVarArgsEmptyNotOk(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-1] Test testsecurityGroupsVarArgsEmptyNotOk(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 138, failed: 0, skipped: 0.
[pool-1-thread-3] Test testsecurityGroupsVarArgsBadFormat(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 139, failed: 0, skipped: 0.
Starting test testsecurityGroupsVarArgsStatic(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest)
[pool-1-thread-1] Test testsecurityGroupsVarArgsStatic(org.jclouds.ec2.compute.options.EC2TemplateOptionsTest) succeeded: 0ms
Starting test testAllowedMarkers(org.jclouds.ec2.functions.EncodedRSAPublicKeyToBase64Test)
Test suite progress: tests succeeded: 140, failed: 0, skipped: 0.
[pool-1-thread-3] Test testAllowedMarkers(org.jclouds.ec2.functions.EncodedRSAPublicKeyToBase64Test) succeeded: 0ms
Test suite progress: tests succeeded: 141, failed: 0, skipped: 0.
Starting test testDisallowedMarkersIllegalArgument(org.jclouds.ec2.functions.EncodedRSAPublicKeyToBase64Test)
Starting test test(org.jclouds.ec2.binders.IfNotNullBindAvailabilityZoneToFormParamTest)
[pool-1-thread-1] Test testDisallowedMarkersIllegalArgument(org.jclouds.ec2.functions.EncodedRSAPublicKeyToBase64Test) succeeded: 0ms
Test suite progress: tests succeeded: 142, failed: 0, skipped: 0.
Starting test testMustBeString(org.jclouds.ec2.binders.IfNotNullBindAvailabilityZoneToFormParamTest)
[pool-1-thread-3] Test test(org.jclouds.ec2.binders.IfNotNullBindAvailabilityZoneToFormParamTest) succeeded: 1ms
Test suite progress: tests succeeded: 143, failed: 0, skipped: 0.
[pool-1-thread-1] Test testMustBeString(org.jclouds.ec2.binders.IfNotNullBindAvailabilityZoneToFormParamTest) succeeded: 0ms
Test suite progress: tests succeeded: 144, failed: 0, skipped: 0.
Starting test testWhenNullReturnsSame(org.jclouds.ec2.binders.IfNotNullBindAvailabilityZoneToFormParamTest)
Starting test testWhenInstancesPresentSingleCall(org.jclouds.ec2.compute.functions.PresentInstancesTest)
[pool-1-thread-3] Test testWhenNullReturnsSame(org.jclouds.ec2.binders.IfNotNullBindAvailabilityZoneToFormParamTest) succeeded: 0ms
Test suite progress: tests succeeded: 145, failed: 0, skipped: 0.
Starting test testApply(org.jclouds.ec2.compute.loaders.RegionAndIdToImageTest)
[pool-1-thread-5] Test testCacheLoaderDoesNotReloadAfterAuthorizationException(org.jclouds.ec2.compute.config.EC2ComputeServiceContextModuleTest) succeeded: 49ms
Test suite progress: tests succeeded: 146, failed: 0, skipped: 0.
Starting test testApplyNoSuchElementExceptionMakesExecutionException(org.jclouds.ec2.compute.loaders.RegionAndIdToImageTest)
[pool-1-thread-1] Test testWhenInstancesPresentSingleCall(org.jclouds.ec2.compute.functions.PresentInstancesTest) succeeded: 18ms
Test suite progress: tests succeeded: 147, failed: 0, skipped: 0.
Starting test testApplyNotFoundMakesExecutionException(org.jclouds.ec2.compute.loaders.RegionAndIdToImageTest)
[pool-1-thread-2] Test testDescribeAvailabilityZonesInRegion_BestEffort(org.jclouds.ec2.suppliers.DescribeAvailabilityZonesInRegionTest) succeeded: 88ms
Test suite progress: tests succeeded: 148, failed: 0, skipped: 0.
Starting test testAddBlockDeviceFromSnapshot(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testAddBlockDeviceFromSnapshot(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 149, failed: 0, skipped: 0.
Starting test testAddBlockDeviceFromSnapshotNPE(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testAddBlockDeviceFromSnapshotNPE(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 150, failed: 0, skipped: 0.
Starting test testAddBlockDeviceFromSnapshotNullVirtualName(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testAddBlockDeviceFromSnapshotNullVirtualName(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 151, failed: 0, skipped: 0.
Starting test testAddBlockDeviceFromSnapshotStatic(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testAddBlockDeviceFromSnapshotStatic(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 152, failed: 0, skipped: 0.
Starting test testAddEphemeralBlockDeviceFromSnapshot(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testAddEphemeralBlockDeviceFromSnapshot(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 153, failed: 0, skipped: 0.
Starting test testAddEphemeralBlockDeviceFromSnapshotNPE(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testAddEphemeralBlockDeviceFromSnapshotNPE(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 154, failed: 0, skipped: 0.
Starting test testAddEphemeralBlockDeviceFromSnapshotNullVirtualName(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testAddEphemeralBlockDeviceFromSnapshotNullVirtualName(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 155, failed: 0, skipped: 0.
Starting test testAddEphemeralBlockDeviceFromSnapshotStatic(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testAddEphemeralBlockDeviceFromSnapshotStatic(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 156, failed: 0, skipped: 0.
Starting test testAddNewBlockDevice(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testAddNewBlockDevice(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 157, failed: 0, skipped: 0.
Starting test testAddNewBlockDeviceNPE(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testAddNewBlockDeviceNPE(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 158, failed: 0, skipped: 0.
Starting test testAddNewBlockDeviceNullVirtualName(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testAddNewBlockDeviceNullVirtualName(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 159, failed: 0, skipped: 0.
Starting test testAddNewBlockDeviceStatic(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testAddNewBlockDeviceStatic(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 160, failed: 0, skipped: 0.
Starting test testAddNewBlockDeviceTooBig(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testAddNewBlockDeviceTooBig(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 161, failed: 0, skipped: 0.
Starting test testAddNewBlockDeviceTooSmall(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testAddNewBlockDeviceTooSmall(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 162, failed: 0, skipped: 0.
Starting test testAddNewEphemeralBlockDevice(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testAddNewEphemeralBlockDevice(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 163, failed: 0, skipped: 0.
Starting test testAddNewEphemeralBlockDeviceNPE(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testAddNewEphemeralBlockDeviceNPE(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 164, failed: 0, skipped: 0.
Starting test testAddNewEphemeralBlockDeviceNullVirtualName(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testAddNewEphemeralBlockDeviceNullVirtualName(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 165, failed: 0, skipped: 0.
Starting test testAddNewEphemeralBlockDeviceStatic(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testAddNewEphemeralBlockDeviceStatic(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 166, failed: 0, skipped: 0.
Starting test testAddNewEphemeralBlockDeviceTooBig(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testAddNewEphemeralBlockDeviceTooBig(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 167, failed: 0, skipped: 0.
Starting test testAddNewEphemeralBlockDeviceTooSmall(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testAddNewEphemeralBlockDeviceTooSmall(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 168, failed: 0, skipped: 0.
Starting test testAssignability(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testAssignability(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 169, failed: 0, skipped: 0.
Starting test testNullAddBlockDeviceFromSnapshot(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testNullAddBlockDeviceFromSnapshot(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 170, failed: 0, skipped: 0.
Starting test testNullAddEphemeralBlockDeviceFromSnapshot(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testNullAddEphemeralBlockDeviceFromSnapshot(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 171, failed: 0, skipped: 0.
[pool-1-thread-4] Test testParseOnDemand(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 78ms
Test suite progress: tests succeeded: 172, failed: 0, skipped: 0.
Starting test testNullAddNewBlockDevice(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testNullAddNewBlockDevice(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 173, failed: 0, skipped: 0.
Starting test testParseOnDemandNotFound(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
Starting test testNullAddNewEphemeralBlockDevice(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testNullAddNewEphemeralBlockDevice(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 174, failed: 0, skipped: 0.
Starting test testNullWithArchitecture(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testNullWithArchitecture(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 175, failed: 0, skipped: 0.
Starting test testNullWithDescription(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testNullWithDescription(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 176, failed: 0, skipped: 0.
Starting test testNullWithKernelId(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testNullWithKernelId(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 177, failed: 0, skipped: 0.
Starting test testNullWithRamdisk(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testNullWithRamdisk(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 178, failed: 0, skipped: 0.
Starting test testWithArchitecture(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testWithArchitecture(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 179, failed: 0, skipped: 0.
Starting test testWithArchitectureNPE(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testWithArchitectureNPE(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 180, failed: 0, skipped: 0.
[pool-1-thread-3] Test testApply(org.jclouds.ec2.compute.loaders.RegionAndIdToImageTest) succeeded: 51ms
Test suite progress: tests succeeded: 181, failed: 0, skipped: 0.
[pool-1-thread-1] Test testApplyNotFoundMakesExecutionException(org.jclouds.ec2.compute.loaders.RegionAndIdToImageTest) succeeded: 33ms
Test suite progress: tests succeeded: 182, failed: 0, skipped: 0.
[pool-1-thread-5] Test testApplyNoSuchElementExceptionMakesExecutionException(org.jclouds.ec2.compute.loaders.RegionAndIdToImageTest) succeeded: 36ms
Test suite progress: tests succeeded: 183, failed: 0, skipped: 0.
[pool-1-thread-4] Test testParseOnDemandNotFound(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 5ms
Test suite progress: tests succeeded: 184, failed: 0, skipped: 0.
Starting test testWithArchitectureStatic(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-2] Test testWithArchitectureStatic(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 185, failed: 0, skipped: 0.
Starting test testWithDescription(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
Starting test testWithDescriptionStatic(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-3] Test testWithDescription(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 186, failed: 0, skipped: 0.
Starting test testWithDescriptionNPE(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-5] Test testWithDescriptionStatic(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 187, failed: 0, skipped: 0.
[pool-1-thread-1] Test testWithDescriptionNPE(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 188, failed: 0, skipped: 0.
Starting test testWithKernelId(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
Starting test testWithKernelIdNPE(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
Starting test testParseOnDemandWithoutRegionEncodedIntoId(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-2] Test testWithKernelId(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 189, failed: 0, skipped: 0.
[pool-1-thread-3] Test testWithKernelIdNPE(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 190, failed: 0, skipped: 0.
Starting test testWithRamdisk(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-4] Test testParseOnDemandWithoutRegionEncodedIntoId(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 1ms
Test suite progress: tests succeeded: 191, failed: 0, skipped: 0.
Starting test testWithKernelIdStatic(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
[pool-1-thread-1] Test testWithRamdisk(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 192, failed: 0, skipped: 0.
[pool-1-thread-5] Test testWithKernelIdStatic(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 1ms
Starting test testWithRamdiskNPE(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
Starting test testWithRamdiskStatic(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest)
Test suite progress: tests succeeded: 193, failed: 0, skipped: 0.
Starting test testAssignability(org.jclouds.ec2.options.RegisterImageOptionsTest)
Starting test testArchWins(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-2] Test testWithRamdiskNPE(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 194, failed: 0, skipped: 0.
[pool-1-thread-3] Test testWithRamdiskStatic(org.jclouds.ec2.options.RegisterImageBackedByEbsOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 195, failed: 0, skipped: 0.
[pool-1-thread-1] Test testAssignability(org.jclouds.ec2.options.RegisterImageOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 196, failed: 0, skipped: 0.
Starting test testNullWithArchitecture(org.jclouds.ec2.options.RegisterImageOptionsTest)
Starting test testNullWithDescription(org.jclouds.ec2.options.RegisterImageOptionsTest)
[pool-1-thread-5] Test testNullWithArchitecture(org.jclouds.ec2.options.RegisterImageOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 197, failed: 0, skipped: 0.
Starting test testNullWithKernelId(org.jclouds.ec2.options.RegisterImageOptionsTest)
[pool-1-thread-2] Test testNullWithDescription(org.jclouds.ec2.options.RegisterImageOptionsTest) succeeded: 1ms
Starting test testNullWithRamdisk(org.jclouds.ec2.options.RegisterImageOptionsTest)
Test suite progress: tests succeeded: 198, failed: 0, skipped: 0.
[pool-1-thread-3] Test testNullWithKernelId(org.jclouds.ec2.options.RegisterImageOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 199, failed: 0, skipped: 0.
Starting test testWithArchitecture(org.jclouds.ec2.options.RegisterImageOptionsTest)
[pool-1-thread-1] Test testNullWithRamdisk(org.jclouds.ec2.options.RegisterImageOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 200, failed: 0, skipped: 0.
[pool-1-thread-5] Test testWithArchitecture(org.jclouds.ec2.options.RegisterImageOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 201, failed: 0, skipped: 0.
Starting test testWithArchitectureNPE(org.jclouds.ec2.options.RegisterImageOptionsTest)
Starting test testWithArchitectureStatic(org.jclouds.ec2.options.RegisterImageOptionsTest)
Starting test testWithDescription(org.jclouds.ec2.options.RegisterImageOptionsTest)
Starting test testWithDescriptionNPE(org.jclouds.ec2.options.RegisterImageOptionsTest)
[pool-1-thread-1] Test testWithDescription(org.jclouds.ec2.options.RegisterImageOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 202, failed: 0, skipped: 0.
[pool-1-thread-2] Test testWithArchitectureNPE(org.jclouds.ec2.options.RegisterImageOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 203, failed: 0, skipped: 0.
[pool-1-thread-3] Test testWithArchitectureStatic(org.jclouds.ec2.options.RegisterImageOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 204, failed: 0, skipped: 0.
[pool-1-thread-5] Test testWithDescriptionNPE(org.jclouds.ec2.options.RegisterImageOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 205, failed: 0, skipped: 0.
Starting test testWithDescriptionStatic(org.jclouds.ec2.options.RegisterImageOptionsTest)
[pool-1-thread-1] Test testWithDescriptionStatic(org.jclouds.ec2.options.RegisterImageOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 206, failed: 0, skipped: 0.
Starting test testWithKernelIdNPE(org.jclouds.ec2.options.RegisterImageOptionsTest)
Starting test testWithKernelId(org.jclouds.ec2.options.RegisterImageOptionsTest)
Starting test testWithKernelIdStatic(org.jclouds.ec2.options.RegisterImageOptionsTest)
[pool-1-thread-2] Test testWithKernelId(org.jclouds.ec2.options.RegisterImageOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 207, failed: 0, skipped: 0.
[pool-1-thread-5] Test testWithKernelIdStatic(org.jclouds.ec2.options.RegisterImageOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 208, failed: 0, skipped: 0.
[pool-1-thread-3] Test testWithKernelIdNPE(org.jclouds.ec2.options.RegisterImageOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 209, failed: 0, skipped: 0.
Starting test testWithRamdisk(org.jclouds.ec2.options.RegisterImageOptionsTest)
Starting test testAssignability(org.jclouds.ec2.options.RunInstancesOptionsTest)
[pool-1-thread-1] Test testWithRamdisk(org.jclouds.ec2.options.RegisterImageOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 210, failed: 0, skipped: 0.
Starting test testWithRamdiskNPE(org.jclouds.ec2.options.RegisterImageOptionsTest)
[pool-1-thread-2] Test testWithRamdiskNPE(org.jclouds.ec2.options.RegisterImageOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 211, failed: 0, skipped: 0.
Starting test testWithRamdiskStatic(org.jclouds.ec2.options.RegisterImageOptionsTest)
Starting test testNullWithAdditionalInfo(org.jclouds.ec2.options.RunInstancesOptionsTest)
[pool-1-thread-3] Test testAssignability(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 212, failed: 0, skipped: 0.
[pool-1-thread-5] Test testWithRamdiskStatic(org.jclouds.ec2.options.RegisterImageOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 213, failed: 0, skipped: 0.
[pool-1-thread-1] Test testNullWithAdditionalInfo(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 214, failed: 0, skipped: 0.
Starting test testNullWithBlockDeviceMapping(org.jclouds.ec2.options.RunInstancesOptionsTest)
[pool-1-thread-2] Test testNullWithBlockDeviceMapping(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 215, failed: 0, skipped: 0.
Starting test testNullWithKernelId(org.jclouds.ec2.options.RunInstancesOptionsTest)
Starting test testNullWithInstanceType(org.jclouds.ec2.options.RunInstancesOptionsTest)
Starting test testNullWithKeyName(org.jclouds.ec2.options.RunInstancesOptionsTest)
[pool-1-thread-3] Test testNullWithInstanceType(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 216, failed: 0, skipped: 0.
[pool-1-thread-1] Test testNullWithKeyName(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 217, failed: 0, skipped: 0.
[pool-1-thread-5] Test testNullWithKernelId(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 218, failed: 0, skipped: 0.
Starting test testNullWithRamdisk(org.jclouds.ec2.options.RunInstancesOptionsTest)
[pool-1-thread-2] Test testNullWithRamdisk(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 219, failed: 0, skipped: 0.
Starting test testNullWithSecurityGroup(org.jclouds.ec2.options.RunInstancesOptionsTest)
[pool-1-thread-3] Test testNullWithSecurityGroup(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 220, failed: 0, skipped: 0.
Starting test testNullWithVirtualName(org.jclouds.ec2.options.RunInstancesOptionsTest)
Starting test testNullWithUserData(org.jclouds.ec2.options.RunInstancesOptionsTest)
[pool-1-thread-5] Test testNullWithVirtualName(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 1ms
Starting test testWithBlockDeviceMapping(org.jclouds.ec2.options.RunInstancesOptionsTest)
Test suite progress: tests succeeded: 221, failed: 0, skipped: 0.
[pool-1-thread-1] Test testNullWithUserData(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 222, failed: 0, skipped: 0.
Starting test testWithBlockDeviceMappingNPE(org.jclouds.ec2.options.RunInstancesOptionsTest)
Starting test testWithBlockDeviceMappingStatic(org.jclouds.ec2.options.RunInstancesOptionsTest)
Starting test testWithInstanceType(org.jclouds.ec2.options.RunInstancesOptionsTest)
[pool-1-thread-1] Test testWithInstanceType(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 223, failed: 0, skipped: 0.
Starting test testWithInstanceTypeNPE(org.jclouds.ec2.options.RunInstancesOptionsTest)
[pool-1-thread-3] Test testWithBlockDeviceMappingNPE(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 2ms
Test suite progress: tests succeeded: 224, failed: 0, skipped: 0.
[pool-1-thread-1] Test testWithInstanceTypeNPE(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 225, failed: 0, skipped: 0.
[pool-1-thread-2] Test testWithBlockDeviceMapping(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 3ms
Test suite progress: tests succeeded: 226, failed: 0, skipped: 0.
Starting test testWithInstanceTypeStatic(org.jclouds.ec2.options.RunInstancesOptionsTest)
[pool-1-thread-5] Test testWithBlockDeviceMappingStatic(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 2ms
Test suite progress: tests succeeded: 227, failed: 0, skipped: 0.
[pool-1-thread-3] Test testWithInstanceTypeStatic(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 228, failed: 0, skipped: 0.
Starting test testWithKernelId(org.jclouds.ec2.options.RunInstancesOptionsTest)
[pool-1-thread-1] Test testWithKernelId(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 229, failed: 0, skipped: 0.
Starting test testWithKernelIdNPE(org.jclouds.ec2.options.RunInstancesOptionsTest)
Starting test testWithKeyName(org.jclouds.ec2.options.RunInstancesOptionsTest)
Starting test testWithKernelIdStatic(org.jclouds.ec2.options.RunInstancesOptionsTest)
[pool-1-thread-3] Test testWithKeyName(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 230, failed: 0, skipped: 0.
[pool-1-thread-5] Test testWithKernelIdStatic(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 231, failed: 0, skipped: 0.
[pool-1-thread-2] Test testWithKernelIdNPE(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 232, failed: 0, skipped: 0.
Starting test testWithKeyNameNPE(org.jclouds.ec2.options.RunInstancesOptionsTest)
[pool-1-thread-1] Test testWithKeyNameNPE(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 233, failed: 0, skipped: 0.
Starting test testWithRamdisk(org.jclouds.ec2.options.RunInstancesOptionsTest)
Starting test testWithKeyNameStatic(org.jclouds.ec2.options.RunInstancesOptionsTest)
[pool-1-thread-5] Test testWithRamdisk(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 234, failed: 0, skipped: 0.
Starting test testWithRamdiskNPE(org.jclouds.ec2.options.RunInstancesOptionsTest)
[pool-1-thread-3] Test testWithKeyNameStatic(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 0ms
Starting test testWithRamdiskStatic(org.jclouds.ec2.options.RunInstancesOptionsTest)
Test suite progress: tests succeeded: 235, failed: 0, skipped: 0.
[pool-1-thread-2] Test testWithRamdiskNPE(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 236, failed: 0, skipped: 0.
[pool-1-thread-1] Test testWithRamdiskStatic(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 237, failed: 0, skipped: 0.
Starting test testWithSecurityGroupNPE(org.jclouds.ec2.options.RunInstancesOptionsTest)
Starting test testWithSecurityGroup(org.jclouds.ec2.options.RunInstancesOptionsTest)
[pool-1-thread-3] Test testWithSecurityGroupNPE(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 1ms
Starting test testWithSecurityGroupStatic(org.jclouds.ec2.options.RunInstancesOptionsTest)
Test suite progress: tests succeeded: 238, failed: 0, skipped: 0.
Starting test testWithUserData(org.jclouds.ec2.options.RunInstancesOptionsTest)
[pool-1-thread-5] Test testWithSecurityGroup(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 239, failed: 0, skipped: 0.
[pool-1-thread-2] Test testWithSecurityGroupStatic(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 240, failed: 0, skipped: 0.
[pool-1-thread-1] Test testWithUserData(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 241, failed: 0, skipped: 0.
Starting test testWithUserDataNPE(org.jclouds.ec2.options.RunInstancesOptionsTest)
[pool-1-thread-4] Test testArchWins(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 23ms
Test suite progress: tests succeeded: 242, failed: 0, skipped: 0.
Starting test testWithUserDataEmpty(org.jclouds.ec2.options.RunInstancesOptionsTest)
Starting test testWithUserDataStatic(org.jclouds.ec2.options.RunInstancesOptionsTest)
[pool-1-thread-3] Test testWithUserDataEmpty(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 243, failed: 0, skipped: 0.
[pool-1-thread-5] Test testWithUserDataNPE(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 244, failed: 0, skipped: 0.
[pool-1-thread-2] Test testWithUserDataStatic(org.jclouds.ec2.options.RunInstancesOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 245, failed: 0, skipped: 0.
Starting test testDefaultLocationWithNoOptionsNoSuchElement(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testDefaultLocationWithNoOptionsNoSuchElement(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 10ms
Test suite progress: tests succeeded: 246, failed: 0, skipped: 0.
Starting test testDefaultLocationWithOptions(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testDefaultLocationWithOptions(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 1ms
Test suite progress: tests succeeded: 247, failed: 0, skipped: 0.
Starting test testDefaultLocationWithUnmatchedPredicateExceptionMessageAndLocationNotCalled(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testDefaultLocationWithUnmatchedPredicateExceptionMessageAndLocationNotCalled(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 1ms
Test suite progress: tests succeeded: 248, failed: 0, skipped: 0.
Starting test testFromSpecWithLoginUser(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testFromSpecWithLoginUser(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 3ms
Test suite progress: tests succeeded: 249, failed: 0, skipped: 0.
Starting test testHardwareIdNullsHypervisor(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testHardwareIdNullsHypervisor(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 1ms
Test suite progress: tests succeeded: 250, failed: 0, skipped: 0.
Starting test testHardwareProfilesMustBePresentWhenQuerying(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testHardwareProfilesMustBePresentWhenQuerying(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 0ms
Test suite progress: tests succeeded: 251, failed: 0, skipped: 0.
Starting test testHardwareWithImageIdPredicateOnlyAcceptsImage(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testHardwareWithImageIdPredicateOnlyAcceptsImage(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 2ms
Test suite progress: tests succeeded: 252, failed: 0, skipped: 0.
Starting test testHardwareWithImageIdPredicateOnlyDoesntImage(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testHardwareWithImageIdPredicateOnlyDoesntImage(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 0ms
Test suite progress: tests succeeded: 253, failed: 0, skipped: 0.
Starting test testImageIdNullsEverythingElse(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testImageIdNullsEverythingElse(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 0ms
Test suite progress: tests succeeded: 254, failed: 0, skipped: 0.
Starting test testImageLocationNonDefault(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testImageLocationNonDefault(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 1ms
Test suite progress: tests succeeded: 255, failed: 0, skipped: 0.
Starting test testImagesMustBePresentWhenQuerying(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testImagesMustBePresentWhenQuerying(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 0ms
Test suite progress: tests succeeded: 256, failed: 0, skipped: 0.
Starting test testLocationPredicateWhenComputeMetadataIsNotLocationBound(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testLocationPredicateWhenComputeMetadataIsNotLocationBound(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 1ms
Test suite progress: tests succeeded: 257, failed: 0, skipped: 0.
Starting test testMatchesHardwareWithIdPredicate(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testMatchesHardwareWithIdPredicate(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 3ms
Test suite progress: tests succeeded: 258, failed: 0, skipped: 0.
Starting test testMultiMax(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testMultiMax(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 1ms
Test suite progress: tests succeeded: 259, failed: 0, skipped: 0.
Starting test testMultiMax1(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testMultiMax1(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 0ms
Test suite progress: tests succeeded: 260, failed: 0, skipped: 0.
Starting test testNothingUsesDefaultTemplateBuilder(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testNothingUsesDefaultTemplateBuilder(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 0ms
Test suite progress: tests succeeded: 261, failed: 0, skipped: 0.
Starting test testOptionsUsesDefaultTemplateBuilder(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testOptionsUsesDefaultTemplateBuilder(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 1ms
Test suite progress: tests succeeded: 262, failed: 0, skipped: 0.
Starting test testResolveImages(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testResolveImages(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 0ms
Test suite progress: tests succeeded: 263, failed: 0, skipped: 0.
Starting test testSuppliedImageLocationWiderThanDefault(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testSuppliedImageLocationWiderThanDefault(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 2ms
Test suite progress: tests succeeded: 264, failed: 0, skipped: 0.
Starting test testSuppliedLocationAndOptions(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testSuppliedLocationAndOptions(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 0ms
Test suite progress: tests succeeded: 265, failed: 0, skipped: 0.
Starting test testSuppliedLocationWithNoOptions(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest)
[pool-1-thread-4] Test testSuppliedLocationWithNoOptions(org.jclouds.ec2.compute.internal.EC2TemplateBuilderImplTest) succeeded: 1ms
Test suite progress: tests succeeded: 266, failed: 0, skipped: 0.
Starting test testListWhenResponseIs404(org.jclouds.ec2.features.SubnetApiExpectTest)
Starting test testApplyWhenResponseIs2xx(org.jclouds.ec2.features.TagApiExpectTest)
Starting test testListWhenResponseIs2xx(org.jclouds.ec2.features.SubnetApiExpectTest)
Starting test testFilterWhenResponseIs404(org.jclouds.ec2.features.SubnetApiExpectTest)
Starting test testFilterWhenResponseIs2xx(org.jclouds.ec2.features.SubnetApiExpectTest)
[pool-1-thread-4] Test testApplyWhenResponseIs2xx(org.jclouds.ec2.features.TagApiExpectTest) succeeded: 304ms
Test suite progress: tests succeeded: 267, failed: 0, skipped: 0.
Starting test testApplyWhenResponseIs404(org.jclouds.ec2.features.TagApiExpectTest)
[pool-1-thread-2] Test testListWhenResponseIs404(org.jclouds.ec2.features.SubnetApiExpectTest) succeeded: 343ms
Test suite progress: tests succeeded: 268, failed: 0, skipped: 0.
Starting test testApplyWithValuesWhenResponseIs2xx(org.jclouds.ec2.features.TagApiExpectTest)
[pool-1-thread-3] Test testFilterWhenResponseIs404(org.jclouds.ec2.features.SubnetApiExpectTest) succeeded: 343ms
Test suite progress: tests succeeded: 269, failed: 0, skipped: 0.
Starting test testApplyWithValuesWhenResponseIs404(org.jclouds.ec2.features.TagApiExpectTest)
[pool-1-thread-5] Test testListWhenResponseIs2xx(org.jclouds.ec2.features.SubnetApiExpectTest) succeeded: 350ms
Test suite progress: tests succeeded: 270, failed: 0, skipped: 0.
[pool-1-thread-1] Test testFilterWhenResponseIs2xx(org.jclouds.ec2.features.SubnetApiExpectTest) succeeded: 350ms
Test suite progress: tests succeeded: 271, failed: 0, skipped: 0.
Starting test testConditionallyDeleteWhenResponseIs2xx(org.jclouds.ec2.features.TagApiExpectTest)
Starting test testConditionallyDeleteWhenResponseIs404(org.jclouds.ec2.features.TagApiExpectTest)
[pool-1-thread-4] Test testApplyWhenResponseIs404(org.jclouds.ec2.features.TagApiExpectTest) succeeded: 238ms
Test suite progress: tests succeeded: 272, failed: 0, skipped: 0.
Starting test testDeleteWhenResponseIs2xx(org.jclouds.ec2.features.TagApiExpectTest)
[pool-1-thread-2] Test testApplyWithValuesWhenResponseIs2xx(org.jclouds.ec2.features.TagApiExpectTest) succeeded: 285ms
Test suite progress: tests succeeded: 273, failed: 0, skipped: 0.
[pool-1-thread-1] Test testConditionallyDeleteWhenResponseIs2xx(org.jclouds.ec2.features.TagApiExpectTest) succeeded: 278ms
Test suite progress: tests succeeded: 274, failed: 0, skipped: 0.
Starting test testFilterWhenResponseIs2xx(org.jclouds.ec2.features.TagApiExpectTest)
Starting test testDeleteWhenResponseIs404(org.jclouds.ec2.features.TagApiExpectTest)
[pool-1-thread-5] Test testConditionallyDeleteWhenResponseIs404(org.jclouds.ec2.features.TagApiExpectTest) succeeded: 279ms
Test suite progress: tests succeeded: 275, failed: 0, skipped: 0.
Starting test testFilterWhenResponseIs404(org.jclouds.ec2.features.TagApiExpectTest)
[pool-1-thread-3] Test testApplyWithValuesWhenResponseIs404(org.jclouds.ec2.features.TagApiExpectTest) succeeded: 287ms
Test suite progress: tests succeeded: 276, failed: 0, skipped: 0.
Starting test testListWhenResponseIs2xx(org.jclouds.ec2.features.TagApiExpectTest)
[pool-1-thread-4] Test testDeleteWhenResponseIs2xx(org.jclouds.ec2.features.TagApiExpectTest) succeeded: 295ms
Test suite progress: tests succeeded: 277, failed: 0, skipped: 0.
Starting test testListWhenResponseIs404(org.jclouds.ec2.features.TagApiExpectTest)
[pool-1-thread-2] Test testDeleteWhenResponseIs404(org.jclouds.ec2.features.TagApiExpectTest) succeeded: 329ms
Test suite progress: tests succeeded: 278, failed: 0, skipped: 0.
Starting test testKeyFunction(org.jclouds.ec2.util.TagsTest)
[pool-1-thread-2] Test testKeyFunction(org.jclouds.ec2.util.TagsTest) succeeded: 14ms
Test suite progress: tests succeeded: 279, failed: 0, skipped: 0.
Starting test testResourceToTagsAsMap(org.jclouds.ec2.util.TagsTest)
[pool-1-thread-2] Test testResourceToTagsAsMap(org.jclouds.ec2.util.TagsTest) succeeded: 11ms
Test suite progress: tests succeeded: 280, failed: 0, skipped: 0.
Starting test testValueFunction(org.jclouds.ec2.util.TagsTest)
[pool-1-thread-2] Test testValueFunction(org.jclouds.ec2.util.TagsTest) succeeded: 0ms
Test suite progress: tests succeeded: 281, failed: 0, skipped: 0.
Starting test testVolumeWithEmptyListOfAttachments(org.jclouds.ec2.predicates.VolumeDetachedTest)
[pool-1-thread-2] Test testVolumeWithEmptyListOfAttachments(org.jclouds.ec2.predicates.VolumeDetachedTest) succeeded: 2ms
Test suite progress: tests succeeded: 282, failed: 0, skipped: 0.
Starting test testWithDifferentStatus(org.jclouds.ec2.predicates.VolumeDetachedTest)
[pool-1-thread-2] Test testWithDifferentStatus(org.jclouds.ec2.predicates.VolumeDetachedTest) succeeded: 1ms
Test suite progress: tests succeeded: 283, failed: 0, skipped: 0.
[pool-1-thread-3] Test testListWhenResponseIs2xx(org.jclouds.ec2.features.TagApiExpectTest) succeeded: 368ms
Test suite progress: tests succeeded: 284, failed: 0, skipped: 0.
[pool-1-thread-5] Test testFilterWhenResponseIs404(org.jclouds.ec2.features.TagApiExpectTest) succeeded: 369ms
Test suite progress: tests succeeded: 285, failed: 0, skipped: 0.
[pool-1-thread-1] Test testFilterWhenResponseIs2xx(org.jclouds.ec2.features.TagApiExpectTest) succeeded: 370ms
Test suite progress: tests succeeded: 286, failed: 0, skipped: 0.
Starting test testWithDifferentStatus(org.jclouds.ec2.predicates.VolumeDetachedTest)
Starting test testApply(org.jclouds.ec2.compute.functions.WindowsLoginCredentialsFromEncryptedDataTest)
[pool-1-thread-2] Test testWithDifferentStatus(org.jclouds.ec2.predicates.VolumeDetachedTest) succeeded: 1ms
Test suite progress: tests succeeded: 287, failed: 0, skipped: 0.
Starting test testWithDifferentStatus(org.jclouds.ec2.predicates.VolumeDetachedTest)
[pool-1-thread-2] Test testWithDifferentStatus(org.jclouds.ec2.predicates.VolumeDetachedTest) succeeded: 1ms
Test suite progress: tests succeeded: 288, failed: 0, skipped: 0.
Starting test testWithDifferentStatus(org.jclouds.ec2.predicates.VolumeDetachedTest)
[pool-1-thread-2] Test testWithDifferentStatus(org.jclouds.ec2.predicates.VolumeDetachedTest) succeeded: 1ms
Test suite progress: tests succeeded: 289, failed: 0, skipped: 0.
Starting test testWithDifferentStatus(org.jclouds.ec2.predicates.VolumeDetachedTest)
[pool-1-thread-2] Test testWithDifferentStatus(org.jclouds.ec2.predicates.VolumeDetachedTest) succeeded: 1ms
Test suite progress: tests succeeded: 290, failed: 0, skipped: 0.
Starting test testWithStatusDetached(org.jclouds.ec2.predicates.VolumeDetachedTest)
[pool-1-thread-2] Test testWithStatusDetached(org.jclouds.ec2.predicates.VolumeDetachedTest) succeeded: 0ms
Test suite progress: tests succeeded: 291, failed: 0, skipped: 0.
[pool-1-thread-3] Test testApply(org.jclouds.ec2.compute.functions.WindowsLoginCredentialsFromEncryptedDataTest) succeeded: 39ms
Test suite progress: tests succeeded: 292, failed: 0, skipped: 0.
[pool-1-thread-4] Test testListWhenResponseIs404(org.jclouds.ec2.features.TagApiExpectTest) succeeded: 254ms
Test suite progress: tests succeeded: 293, failed: 0, skipped: 0.
Starting test testMapping(org.jclouds.ec2.binders.BindS3UploadPolicyAndSignatureTest)
Starting test testNullIsBad(org.jclouds.ec2.binders.BindS3UploadPolicyAndSignatureTest)
[pool-2-thread-2] Test testNullIsBad(org.jclouds.ec2.binders.BindS3UploadPolicyAndSignatureTest) succeeded: 0ms
Test suite progress: tests succeeded: 294, failed: 0, skipped: 0.
[pool-2-thread-1] Test testMapping(org.jclouds.ec2.binders.BindS3UploadPolicyAndSignatureTest) succeeded: 1ms
Test suite progress: tests succeeded: 295, failed: 0, skipped: 0.
Starting test testCreateNodeWithGeneratedKeyPairAndOverriddenLoginUser(org.jclouds.ec2.compute.EC2ComputeServiceExpectTest)
us-east-1/ami-aecd60c7
[pool-3-thread-1] Test testCreateNodeWithGeneratedKeyPairAndOverriddenLoginUser(org.jclouds.ec2.compute.EC2ComputeServiceExpectTest) succeeded: 299ms
Test suite progress: tests succeeded: 296, failed: 0, skipped: 0.
Starting test testNegativeTemplateChoiceForInstanceByAttributes(org.jclouds.ec2.compute.EC2TemplateBuilderTest)
Starting test testNegativeTemplateChoiceForInstanceByImageId(org.jclouds.ec2.compute.EC2TemplateBuilderTest)
Starting test testTemplateChoiceForInstanceByCChardwareId(org.jclouds.ec2.compute.EC2TemplateBuilderTest)
Starting test testTemplateChoiceForInstanceByImageId(org.jclouds.ec2.compute.EC2TemplateBuilderTest)
Starting test testTemplateChoiceForInstanceByAttributes(org.jclouds.ec2.compute.EC2TemplateBuilderTest)
[pool-4-thread-2] Test testNegativeTemplateChoiceForInstanceByImageId(org.jclouds.ec2.compute.EC2TemplateBuilderTest) succeeded: 7ms
Test suite progress: tests succeeded: 297, failed: 0, skipped: 0.
[pool-4-thread-5] Test testTemplateChoiceForInstanceByImageId(org.jclouds.ec2.compute.EC2TemplateBuilderTest) succeeded: 4ms
Test suite progress: tests succeeded: 298, failed: 0, skipped: 0.
Starting test testTemplateChoiceForInstanceByImageIdDoesNotGetAllImages(org.jclouds.ec2.compute.EC2TemplateBuilderTest)
Starting test testTemplateChoiceForInstanceByhardwareId(org.jclouds.ec2.compute.EC2TemplateBuilderTest)
[pool-4-thread-1] Test testNegativeTemplateChoiceForInstanceByAttributes(org.jclouds.ec2.compute.EC2TemplateBuilderTest) succeeded: 10ms
Test suite progress: tests succeeded: 299, failed: 0, skipped: 0.
[pool-4-thread-3] Test testTemplateChoiceForInstanceByAttributes(org.jclouds.ec2.compute.EC2TemplateBuilderTest) succeeded: 6ms
Test suite progress: tests succeeded: 300, failed: 0, skipped: 0.
[pool-4-thread-5] Test testTemplateChoiceForInstanceByhardwareId(org.jclouds.ec2.compute.EC2TemplateBuilderTest) succeeded: 1ms
Test suite progress: tests succeeded: 301, failed: 0, skipped: 0.
[pool-4-thread-2] Test testTemplateChoiceForInstanceByImageIdDoesNotGetAllImages(org.jclouds.ec2.compute.EC2TemplateBuilderTest) succeeded: 2ms
Test suite progress: tests succeeded: 302, failed: 0, skipped: 0.
[pool-4-thread-4] Test testTemplateChoiceForInstanceByCChardwareId(org.jclouds.ec2.compute.EC2TemplateBuilderTest) succeeded: 10ms
Test suite progress: tests succeeded: 303, failed: 0, skipped: 0.
Starting test testCreateImage(org.jclouds.ec2.compute.extensions.EC2ImageExtensionExpectTest)
[pool-5-thread-1] Test testCreateImage(org.jclouds.ec2.compute.extensions.EC2ImageExtensionExpectTest) succeeded: 131ms
Test suite progress: tests succeeded: 304, failed: 0, skipped: 0.
Starting test testReturnsNodeWithElasticIpWhenFoundInCacheAndNodeHadAPublicIp(org.jclouds.ec2.compute.functions.AddElasticIpsToNodemetadataTest)
[pool-6-thread-1] Test testReturnsNodeWithElasticIpWhenFoundInCacheAndNodeHadAPublicIp(org.jclouds.ec2.compute.functions.AddElasticIpsToNodemetadataTest) succeeded: 1ms
Test suite progress: tests succeeded: 305, failed: 0, skipped: 0.
Starting test testReturnsNodeWithIpWhenFoundInCacheAndNodeHadNoPublicIp(org.jclouds.ec2.compute.functions.AddElasticIpsToNodemetadataTest)
[pool-6-thread-1] Test testReturnsNodeWithIpWhenFoundInCacheAndNodeHadNoPublicIp(org.jclouds.ec2.compute.functions.AddElasticIpsToNodemetadataTest) succeeded: 0ms
Test suite progress: tests succeeded: 306, failed: 0, skipped: 0.
Starting test testReturnsSameNodeWhenNotFoundInCache(org.jclouds.ec2.compute.functions.AddElasticIpsToNodemetadataTest)
[pool-6-thread-1] Test testReturnsSameNodeWhenNotFoundInCache(org.jclouds.ec2.compute.functions.AddElasticIpsToNodemetadataTest) succeeded: 0ms
Test suite progress: tests succeeded: 307, failed: 0, skipped: 0.
Starting test testApply(org.jclouds.ec2.compute.functions.CreateUniqueKeyPairTest)
Starting test testApplyWithIllegalStateException(org.jclouds.ec2.compute.functions.CreateUniqueKeyPairTest)
[pool-7-thread-1] Test testApply(org.jclouds.ec2.compute.functions.CreateUniqueKeyPairTest) succeeded: 17ms
Test suite progress: tests succeeded: 308, failed: 0, skipped: 0.
[pool-7-thread-2] Test testApplyWithIllegalStateException(org.jclouds.ec2.compute.functions.CreateUniqueKeyPairTest) succeeded: 17ms
Test suite progress: tests succeeded: 309, failed: 0, skipped: 0.
Starting test testParseAmznImage(org.jclouds.ec2.compute.functions.EC2ImageParserTest)
[pool-8-thread-1] Test testParseAmznImage(org.jclouds.ec2.compute.functions.EC2ImageParserTest) succeeded: 20ms
Test suite progress: tests succeeded: 310, failed: 0, skipped: 0.
Starting test testAllStatesCovered(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest)
Starting test testApplyWhereTagDoesntMatchAndImageAndLocationFoundAndHardwareNotFound(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest)
Starting test testApplyWhereTagDoesntMatchAndImageHardwareAndLocationFound(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest)
[pool-9-thread-1] Test testAllStatesCovered(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest) succeeded: 3ms
Test suite progress: tests succeeded: 311, failed: 0, skipped: 0.
Starting test testApplyWhereTagDoesntMatchAndImageHardwareAndLocationNotFound(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest)
Starting test testApplyWhereTagDoesntMatchAndImageHardwareAndLocationNotFoundButCredentialsFound(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest)
Starting test testApplyWhereTagDoesntMatchAndLocationFoundAndImageAndHardwareNotFound(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest)
[pool-9-thread-4] Test testApplyWhereTagDoesntMatchAndImageHardwareAndLocationNotFound(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest) succeeded: 21ms
Test suite progress: tests succeeded: 312, failed: 0, skipped: 0.
[pool-9-thread-1] Test testApplyWhereTagDoesntMatchAndLocationFoundAndImageAndHardwareNotFound(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest) succeeded: 21ms
Test suite progress: tests succeeded: 313, failed: 0, skipped: 0.
[pool-9-thread-5] Test testApplyWhereTagDoesntMatchAndImageHardwareAndLocationNotFoundButCredentialsFound(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest) succeeded: 21ms
Test suite progress: tests succeeded: 314, failed: 0, skipped: 0.
Starting test testGroupNameIsSetWhenCustomKeyNameIsSetAndSecurityGroupIsGenerated(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest)
Starting test testGroupNameIsSetWhenCustomSecurityGroupIsSetAndKeyNameIsGenerated(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest)
Starting test testHandleMissingAMIs(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest)
[pool-9-thread-1] Test testGroupNameIsSetWhenCustomSecurityGroupIsSetAndKeyNameIsGenerated(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest) succeeded: 6ms
Test suite progress: tests succeeded: 315, failed: 0, skipped: 0.
[pool-9-thread-4] Test testGroupNameIsSetWhenCustomKeyNameIsSetAndSecurityGroupIsGenerated(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest) succeeded: 6ms
Test suite progress: tests succeeded: 316, failed: 0, skipped: 0.
Starting test testPrivateIpAddressIncorrectlyInPublicAddressFieldGoesToPrivateAddressCollection(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest)
Starting test testPublicIpAddressIncorrectlyInPrivateAddressFieldGoesToPublicAddressCollection(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest)
[pool-9-thread-2] Test testApplyWhereTagDoesntMatchAndImageAndLocationFoundAndHardwareNotFound(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest) succeeded: 33ms
Test suite progress: tests succeeded: 317, failed: 0, skipped: 0.
[pool-9-thread-4] Test testPublicIpAddressIncorrectlyInPrivateAddressFieldGoesToPublicAddressCollection(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest) succeeded: 3ms
Test suite progress: tests succeeded: 318, failed: 0, skipped: 0.
[pool-9-thread-3] Test testApplyWhereTagDoesntMatchAndImageHardwareAndLocationFound(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest) succeeded: 34ms
Test suite progress: tests succeeded: 319, failed: 0, skipped: 0.
[pool-9-thread-1] Test testPrivateIpAddressIncorrectlyInPublicAddressFieldGoesToPrivateAddressCollection(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest) succeeded: 4ms
Test suite progress: tests succeeded: 320, failed: 0, skipped: 0.
[pool-9-thread-5] Test testHandleMissingAMIs(org.jclouds.ec2.compute.functions.RunningInstanceToNodeMetadataTest) succeeded: 11ms
Test suite progress: tests succeeded: 321, failed: 0, skipped: 0.
Starting test testIllegalStateExceptionCreatingGroupJustReturns(org.jclouds.ec2.compute.loaders.CreateSecurityGroupIfNeededTest)
[pool-10-thread-1] Test testIllegalStateExceptionCreatingGroupJustReturns(org.jclouds.ec2.compute.loaders.CreateSecurityGroupIfNeededTest) succeeded: 0ms
Test suite progress: tests succeeded: 322, failed: 0, skipped: 0.
Starting test testWhenEventualConsistencyExpiresIllegalStateException(org.jclouds.ec2.compute.loaders.CreateSecurityGroupIfNeededTest)
[pool-10-thread-1] Test testWhenEventualConsistencyExpiresIllegalStateException(org.jclouds.ec2.compute.loaders.CreateSecurityGroupIfNeededTest) succeeded: 0ms
Test suite progress: tests succeeded: 323, failed: 0, skipped: 0.
Starting test testWhenPort22AndToItselfAuthorizesIngressTwice(org.jclouds.ec2.compute.loaders.CreateSecurityGroupIfNeededTest)
[pool-10-thread-1] Test testWhenPort22AndToItselfAuthorizesIngressTwice(org.jclouds.ec2.compute.loaders.CreateSecurityGroupIfNeededTest) succeeded: 15ms
Test suite progress: tests succeeded: 324, failed: 0, skipped: 0.
Starting test testReturnsNullWhenNotAssigned(org.jclouds.ec2.compute.loaders.LoadPublicIpForInstanceOrNullTest)
[pool-11-thread-1] Test testReturnsNullWhenNotAssigned(org.jclouds.ec2.compute.loaders.LoadPublicIpForInstanceOrNullTest) succeeded: 4ms
Test suite progress: tests succeeded: 325, failed: 0, skipped: 0.
Starting test testReturnsNullWhenNotFound(org.jclouds.ec2.compute.loaders.LoadPublicIpForInstanceOrNullTest)
[pool-11-thread-1] Test testReturnsNullWhenNotFound(org.jclouds.ec2.compute.loaders.LoadPublicIpForInstanceOrNullTest) succeeded: 0ms
Test suite progress: tests succeeded: 326, failed: 0, skipped: 0.
Starting test testReturnsPublicIpOnMatch(org.jclouds.ec2.compute.loaders.LoadPublicIpForInstanceOrNullTest)
[pool-11-thread-1] Test testReturnsPublicIpOnMatch(org.jclouds.ec2.compute.loaders.LoadPublicIpForInstanceOrNullTest) succeeded: 0ms
Test suite progress: tests succeeded: 327, failed: 0, skipped: 0.
Starting test testCreateNewKeyPairUnlessUserSpecifiedOtherwise_createsNewKeyPairAndReturnsItsNameByDefault(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest)
[pool-12-thread-1] Test testCreateNewKeyPairUnlessUserSpecifiedOtherwise_createsNewKeyPairAndReturnsItsNameByDefault(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest) succeeded: 29ms
Test suite progress: tests succeeded: 328, failed: 0, skipped: 0.
Starting test testCreateNewKeyPairUnlessUserSpecifiedOtherwise_doesntCreateAKeyPairAndReturnsNullWhenToldNotTo(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest)
[pool-12-thread-1] Test testCreateNewKeyPairUnlessUserSpecifiedOtherwise_doesntCreateAKeyPairAndReturnsNullWhenToldNotTo(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 329, failed: 0, skipped: 0.
Starting test testCreateNewKeyPairUnlessUserSpecifiedOtherwise_reusesKeyWhenToldTo(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest)
[pool-12-thread-1] Test testCreateNewKeyPairUnlessUserSpecifiedOtherwise_reusesKeyWhenToldTo(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 330, failed: 0, skipped: 0.
Starting test testCreateNewKeyPairUnlessUserSpecifiedOtherwise_reusesKeyWhenToldToWithRunScriptAndCredentialsAlreadyInMap(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest)
[pool-12-thread-1] Test testCreateNewKeyPairUnlessUserSpecifiedOtherwise_reusesKeyWhenToldToWithRunScriptAndCredentialsAlreadyInMap(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest) succeeded: 2ms
Test suite progress: tests succeeded: 331, failed: 0, skipped: 0.
Starting test testCreateNewKeyPairUnlessUserSpecifiedOtherwise_reusesKeyWhenToldToWithRunScriptAndCredentialsSpecified(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest)
[pool-12-thread-1] Test testCreateNewKeyPairUnlessUserSpecifiedOtherwise_reusesKeyWhenToldToWithRunScriptAndCredentialsSpecified(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest) succeeded: 3ms
Test suite progress: tests succeeded: 332, failed: 0, skipped: 0.
Starting test testCreateNewKeyPairUnlessUserSpecifiedOtherwise_reusesKeyWhenToldToWithRunScriptButNoCredentials(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest)
[pool-12-thread-1] Test testCreateNewKeyPairUnlessUserSpecifiedOtherwise_reusesKeyWhenToldToWithRunScriptButNoCredentials(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 333, failed: 0, skipped: 0.
Starting test testExecuteWithDefaultOptionsEC2(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest)
[pool-12-thread-1] Test testExecuteWithDefaultOptionsEC2(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest) succeeded: 24ms
Test suite progress: tests succeeded: 334, failed: 0, skipped: 0.
Starting test testExecuteWithUserData(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest)
[pool-12-thread-1] Test testExecuteWithUserData(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 335, failed: 0, skipped: 0.
Starting test testGetSecurityGroupsForTagAndOptions_createsNewGroupByDefaultWhenNoPortsAreSpecifiedWhenDoesntExist(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest)
[pool-12-thread-1] Test testGetSecurityGroupsForTagAndOptions_createsNewGroupByDefaultWhenNoPortsAreSpecifiedWhenDoesntExist(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 336, failed: 0, skipped: 0.
Starting test testGetSecurityGroupsForTagAndOptions_createsNewGroupByDefaultWhenPortsAreSpecifiedWhenDoesntExist(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest)
[pool-12-thread-1] Test testGetSecurityGroupsForTagAndOptions_createsNewGroupByDefaultWhenPortsAreSpecifiedWhenDoesntExist(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 337, failed: 0, skipped: 0.
Starting test testGetSecurityGroupsForTagAndOptions_reusesGroupByDefaultWhenNoPortsAreSpecifiedWhenDoesExist(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest)
[pool-12-thread-1] Test testGetSecurityGroupsForTagAndOptions_reusesGroupByDefaultWhenNoPortsAreSpecifiedWhenDoesExist(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 338, failed: 0, skipped: 0.
Starting test testGetSecurityGroupsForTagAndOptions_reusesGroupByDefaultWhenNoPortsAreSpecifiedWhenDoesExistAndAcceptsUserSuppliedGroups(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest)
[pool-12-thread-1] Test testGetSecurityGroupsForTagAndOptions_reusesGroupByDefaultWhenNoPortsAreSpecifiedWhenDoesExistAndAcceptsUserSuppliedGroups(org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 339, failed: 0, skipped: 0.
Starting test testIpAllocationThenAfterNodeRunningAssignThenUpdateCache(org.jclouds.ec2.compute.strategy.EC2CreateNodesInGroupThenAddToSetTest)
[pool-13-thread-1] Test testIpAllocationThenAfterNodeRunningAssignThenUpdateCache(org.jclouds.ec2.compute.strategy.EC2CreateNodesInGroupThenAddToSetTest) succeeded: 39ms
Test suite progress: tests succeeded: 340, failed: 0, skipped: 0.
Starting test testRegionAsALocation(org.jclouds.ec2.compute.strategy.EC2CreateNodesInGroupThenAddToSetTest)
[pool-13-thread-1] Test testRegionAsALocation(org.jclouds.ec2.compute.strategy.EC2CreateNodesInGroupThenAddToSetTest) succeeded: 3ms
Test suite progress: tests succeeded: 341, failed: 0, skipped: 0.
Starting test testZoneAsALocation(org.jclouds.ec2.compute.strategy.EC2CreateNodesInGroupThenAddToSetTest)
[pool-13-thread-1] Test testZoneAsALocation(org.jclouds.ec2.compute.strategy.EC2CreateNodesInGroupThenAddToSetTest) succeeded: 2ms
Test suite progress: tests succeeded: 342, failed: 0, skipped: 0.
Starting test testDestroyNodeDisassociatesAndReleasesIpThenTerminatesInstanceAndReturnsRefreshedNode(org.jclouds.ec2.compute.strategy.EC2DestroyNodeStrategyTest)
[pool-14-thread-1] Test testDestroyNodeDisassociatesAndReleasesIpThenTerminatesInstanceAndReturnsRefreshedNode(org.jclouds.ec2.compute.strategy.EC2DestroyNodeStrategyTest) succeeded: 4ms
Test suite progress: tests succeeded: 343, failed: 0, skipped: 0.
Starting test testDestroyNodeSafeOnCacheExecutionExceptionThenTerminatesInstanceAndReturnsRefreshedNode(org.jclouds.ec2.compute.strategy.EC2DestroyNodeStrategyTest)
[pool-14-thread-1] Test testDestroyNodeSafeOnCacheExecutionExceptionThenTerminatesInstanceAndReturnsRefreshedNode(org.jclouds.ec2.compute.strategy.EC2DestroyNodeStrategyTest) succeeded: 1ms
Test suite progress: tests succeeded: 344, failed: 0, skipped: 0.
Starting test testDestroyNodeSafeOnCacheMissThenTerminatesInstanceAndReturnsRefreshedNode(org.jclouds.ec2.compute.strategy.EC2DestroyNodeStrategyTest)
[pool-14-thread-1] Test testDestroyNodeSafeOnCacheMissThenTerminatesInstanceAndReturnsRefreshedNode(org.jclouds.ec2.compute.strategy.EC2DestroyNodeStrategyTest) succeeded: 1ms
Test suite progress: tests succeeded: 345, failed: 0, skipped: 0.
Starting test testDestroyNodeTerminatesInstanceAndReturnsRefreshedNode(org.jclouds.ec2.compute.strategy.EC2DestroyNodeStrategyTest)
[pool-14-thread-1] Test testDestroyNodeTerminatesInstanceAndReturnsRefreshedNode(org.jclouds.ec2.compute.strategy.EC2DestroyNodeStrategyTest) succeeded: 0ms
Test suite progress: tests succeeded: 346, failed: 0, skipped: 0.
Starting test testLocationIdAndURIBindings(org.jclouds.ec2.config.EC2RestClientModuleExpectTest)
Starting test testRegionToEndpointOrProviderIfNull(org.jclouds.ec2.config.EC2RestClientModuleExpectTest)
Starting test testZoneToEndpoint(org.jclouds.ec2.config.EC2RestClientModuleExpectTest)
[pool-15-thread-2] Test testRegionToEndpointOrProviderIfNull(org.jclouds.ec2.config.EC2RestClientModuleExpectTest) succeeded: 8ms
Test suite progress: tests succeeded: 347, failed: 0, skipped: 0.
[pool-15-thread-3] Test testZoneToEndpoint(org.jclouds.ec2.config.EC2RestClientModuleExpectTest) succeeded: 46ms
Test suite progress: tests succeeded: 348, failed: 0, skipped: 0.
[pool-15-thread-1] Test testLocationIdAndURIBindings(org.jclouds.ec2.config.EC2RestClientModuleExpectTest) succeeded: 50ms
Test suite progress: tests succeeded: 349, failed: 0, skipped: 0.
Starting test testAllContains(org.jclouds.ec2.EC2ApiMetadataTest)
Starting test testTransformableToContains(org.jclouds.ec2.EC2ApiMetadataTest)
Starting test testWithId(org.jclouds.ec2.EC2ApiMetadataTest)
[pool-16-thread-1] Test testAllContains(org.jclouds.ec2.EC2ApiMetadataTest) succeeded: 4ms
Test suite progress: tests succeeded: 350, failed: 0, skipped: 0.
[pool-16-thread-3] Test testWithId(org.jclouds.ec2.EC2ApiMetadataTest) succeeded: 2ms
Test suite progress: tests succeeded: 351, failed: 0, skipped: 0.
[pool-16-thread-2] Test testTransformableToContains(org.jclouds.ec2.EC2ApiMetadataTest) succeeded: 3ms
Test suite progress: tests succeeded: 352, failed: 0, skipped: 0.
Starting test testAsync(org.jclouds.ec2.EC2AsyncClientTest)
Starting test testSync(org.jclouds.ec2.EC2AsyncClientTest)
[pool-17-thread-2] Test testSync(org.jclouds.ec2.EC2AsyncClientTest) succeeded: 3ms
Test suite progress: tests succeeded: 353, failed: 0, skipped: 0.
[pool-17-thread-1] Test testAsync(org.jclouds.ec2.EC2AsyncClientTest) succeeded: 20ms
Test suite progress: tests succeeded: 354, failed: 0, skipped: 0.
Starting test testGetPasswordDataWhenResponseIs404(org.jclouds.ec2.features.WindowsApiExpectTest)
Starting test testGetPasswordDataWhenResponseIs2xx(org.jclouds.ec2.features.WindowsApiExpectTest)
[pool-18-thread-2] Test testGetPasswordDataWhenResponseIs404(org.jclouds.ec2.features.WindowsApiExpectTest) succeeded: 96ms
Test suite progress: tests succeeded: 355, failed: 0, skipped: 0.
[pool-18-thread-1] Test testGetPasswordDataWhenResponseIs2xx(org.jclouds.ec2.features.WindowsApiExpectTest) succeeded: 97ms
Test suite progress: tests succeeded: 356, failed: 0, skipped: 0.
Starting test test(org.jclouds.ec2.parse.DescribeSubnetsResponseTest)
[pool-19-thread-1] Test test(org.jclouds.ec2.parse.DescribeSubnetsResponseTest) succeeded: 5ms
Test suite progress: tests succeeded: 357, failed: 0, skipped: 0.
Starting test test(org.jclouds.ec2.parse.DescribeTagsResponseTest)
[pool-20-thread-1] Test test(org.jclouds.ec2.parse.DescribeTagsResponseTest) succeeded: 2ms
Test suite progress: tests succeeded: 358, failed: 0, skipped: 0.
Starting test test(org.jclouds.ec2.parse.GetPasswordDataResponseTest)
[pool-21-thread-1] Test test(org.jclouds.ec2.parse.GetPasswordDataResponseTest) succeeded: 4ms
Test suite progress: tests succeeded: 359, failed: 0, skipped: 0.
Starting test testAddLaunchPermissionsToImage(org.jclouds.ec2.services.AMIAsyncClientTest)
Starting test testCreateImage(org.jclouds.ec2.services.AMIAsyncClientTest)
Starting test testCreateImageOptions(org.jclouds.ec2.services.AMIAsyncClientTest)
Starting test testDeregisterImage(org.jclouds.ec2.services.AMIAsyncClientTest)
Starting test testDescribeImages(org.jclouds.ec2.services.AMIAsyncClientTest)
[pool-22-thread-5] Test testDescribeImages(org.jclouds.ec2.services.AMIAsyncClientTest) succeeded: 13ms
Test suite progress: tests succeeded: 360, failed: 0, skipped: 0.
[pool-22-thread-4] Test testDeregisterImage(org.jclouds.ec2.services.AMIAsyncClientTest) succeeded: 14ms
Test suite progress: tests succeeded: 361, failed: 0, skipped: 0.
Starting test testGetBlockDeviceMappingsForImage(org.jclouds.ec2.services.AMIAsyncClientTest)
Starting test testDescribeImagesOptions(org.jclouds.ec2.services.AMIAsyncClientTest)
[pool-22-thread-3] Test testCreateImageOptions(org.jclouds.ec2.services.AMIAsyncClientTest) succeeded: 16ms
Test suite progress: tests succeeded: 362, failed: 0, skipped: 0.
[pool-22-thread-2] Test testCreateImage(org.jclouds.ec2.services.AMIAsyncClientTest) succeeded: 16ms
Test suite progress: tests succeeded: 363, failed: 0, skipped: 0.
Starting test testGetLaunchPermissionForImage(org.jclouds.ec2.services.AMIAsyncClientTest)
Starting test testRegisterImageBackedByEBS(org.jclouds.ec2.services.AMIAsyncClientTest)
[pool-22-thread-1] Test testAddLaunchPermissionsToImage(org.jclouds.ec2.services.AMIAsyncClientTest) succeeded: 17ms
Test suite progress: tests succeeded: 364, failed: 0, skipped: 0.
Starting test testRegisterImageBackedByEBSOptions(org.jclouds.ec2.services.AMIAsyncClientTest)
[pool-22-thread-5] Test testDescribeImagesOptions(org.jclouds.ec2.services.AMIAsyncClientTest) succeeded: 2ms
Test suite progress: tests succeeded: 365, failed: 0, skipped: 0.
Starting test testRegisterImageFromManifest(org.jclouds.ec2.services.AMIAsyncClientTest)
[pool-22-thread-2] Test testRegisterImageBackedByEBS(org.jclouds.ec2.services.AMIAsyncClientTest) succeeded: 3ms
Test suite progress: tests succeeded: 366, failed: 0, skipped: 0.
Starting test testRegisterImageFromManifestOptions(org.jclouds.ec2.services.AMIAsyncClientTest)
[pool-22-thread-4] Test testGetBlockDeviceMappingsForImage(org.jclouds.ec2.services.AMIAsyncClientTest) succeeded: 7ms
Test suite progress: tests succeeded: 367, failed: 0, skipped: 0.
[pool-22-thread-1] Test testRegisterImageBackedByEBSOptions(org.jclouds.ec2.services.AMIAsyncClientTest) succeeded: 6ms
Test suite progress: tests succeeded: 368, failed: 0, skipped: 0.
Starting test testRemoveLaunchPermissionsFromImage(org.jclouds.ec2.services.AMIAsyncClientTest)
Starting test testResetLaunchPermissionsOnImage(org.jclouds.ec2.services.AMIAsyncClientTest)
[pool-22-thread-3] Test testGetLaunchPermissionForImage(org.jclouds.ec2.services.AMIAsyncClientTest) succeeded: 10ms
Test suite progress: tests succeeded: 369, failed: 0, skipped: 0.
[pool-22-thread-1] Test testResetLaunchPermissionsOnImage(org.jclouds.ec2.services.AMIAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 370, failed: 0, skipped: 0.
[pool-22-thread-5] Test testRegisterImageFromManifest(org.jclouds.ec2.services.AMIAsyncClientTest) succeeded: 9ms
Test suite progress: tests succeeded: 371, failed: 0, skipped: 0.
[pool-22-thread-2] Test testRegisterImageFromManifestOptions(org.jclouds.ec2.services.AMIAsyncClientTest) succeeded: 10ms
Test suite progress: tests succeeded: 372, failed: 0, skipped: 0.
[pool-22-thread-4] Test testRemoveLaunchPermissionsFromImage(org.jclouds.ec2.services.AMIAsyncClientTest) succeeded: 6ms
Test suite progress: tests succeeded: 373, failed: 0, skipped: 0.
Starting test testDescribeAvailabilityZones(org.jclouds.ec2.services.AvailabilityZoneAndRegionAsyncClientTest)
Starting test testDescribeAvailabilityZonesOptions(org.jclouds.ec2.services.AvailabilityZoneAndRegionAsyncClientTest)
Starting test testDescribeRegions(org.jclouds.ec2.services.AvailabilityZoneAndRegionAsyncClientTest)
Starting test testDescribeRegionsOptions(org.jclouds.ec2.services.AvailabilityZoneAndRegionAsyncClientTest)
[pool-23-thread-1] Test testDescribeAvailabilityZones(org.jclouds.ec2.services.AvailabilityZoneAndRegionAsyncClientTest) succeeded: 4ms
Test suite progress: tests succeeded: 374, failed: 0, skipped: 0.
[pool-23-thread-3] Test testDescribeRegions(org.jclouds.ec2.services.AvailabilityZoneAndRegionAsyncClientTest) succeeded: 4ms
Test suite progress: tests succeeded: 375, failed: 0, skipped: 0.
[pool-23-thread-4] Test testDescribeRegionsOptions(org.jclouds.ec2.services.AvailabilityZoneAndRegionAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 376, failed: 0, skipped: 0.
[pool-23-thread-2] Test testDescribeAvailabilityZonesOptions(org.jclouds.ec2.services.AvailabilityZoneAndRegionAsyncClientTest) succeeded: 6ms
Test suite progress: tests succeeded: 377, failed: 0, skipped: 0.
Starting test testCreateVolumeFromSnapshotInAvailabilityZoneEuSetsCorrectEndpoint(org.jclouds.ec2.services.EC2ElasticBlockStoreClientExpectTest)
Starting test testCreateVolumeInAvailabilityZone(org.jclouds.ec2.services.EC2ElasticBlockStoreClientExpectTest)
[pool-24-thread-1] Test testCreateVolumeFromSnapshotInAvailabilityZoneEuSetsCorrectEndpoint(org.jclouds.ec2.services.EC2ElasticBlockStoreClientExpectTest) succeeded: 88ms
Test suite progress: tests succeeded: 378, failed: 0, skipped: 0.
[pool-24-thread-2] Test testCreateVolumeInAvailabilityZone(org.jclouds.ec2.services.EC2ElasticBlockStoreClientExpectTest) succeeded: 89ms
Test suite progress: tests succeeded: 379, failed: 0, skipped: 0.
Starting test testAddCreateVolumePermissionsToSnapshot(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest)
Starting test testAttachVolume(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest)
Starting test testCreateSnapshot(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest)
Starting test testCreateSnapshotOptions(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest)
Starting test testDeleteVolume(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest)
[pool-25-thread-5] Test testDeleteVolume(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest) succeeded: 8ms
Test suite progress: tests succeeded: 380, failed: 0, skipped: 0.
[pool-25-thread-1] Test testAddCreateVolumePermissionsToSnapshot(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest) succeeded: 8ms
Test suite progress: tests succeeded: 381, failed: 0, skipped: 0.
[pool-25-thread-3] Test testCreateSnapshot(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest) succeeded: 8ms
Test suite progress: tests succeeded: 382, failed: 0, skipped: 0.
[pool-25-thread-4] Test testCreateSnapshotOptions(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest) succeeded: 8ms
Starting test testDescribeSnapshotsArgs(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest)
Starting test testDescribeSnapshots(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest)
Starting test testDescribeVolumes(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest)
Test suite progress: tests succeeded: 383, failed: 0, skipped: 0.
Starting test testDescribeVolumesArgs(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest)
[pool-25-thread-2] Test testAttachVolume(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest) succeeded: 9ms
Test suite progress: tests succeeded: 384, failed: 0, skipped: 0.
Starting test testDetachVolume(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest)
[pool-25-thread-5] Test testDescribeSnapshots(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest) succeeded: 8ms
Test suite progress: tests succeeded: 385, failed: 0, skipped: 0.
Starting test testDetachVolumeOptions(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest)
[pool-25-thread-2] Test testDetachVolume(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest) succeeded: 10ms
Test suite progress: tests succeeded: 386, failed: 0, skipped: 0.
[pool-25-thread-1] Test testDescribeSnapshotsArgs(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest) succeeded: 12ms
Test suite progress: tests succeeded: 387, failed: 0, skipped: 0.
Starting test testGetCreateVolumePermissionForSnapshot(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest)
Starting test testRemoveCreateVolumePermissionsFromSnapshot(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest)
[pool-25-thread-3] Test testDescribeVolumes(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest) succeeded: 12ms
Test suite progress: tests succeeded: 388, failed: 0, skipped: 0.
[pool-25-thread-4] Test testDescribeVolumesArgs(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest) succeeded: 12ms
Test suite progress: tests succeeded: 389, failed: 0, skipped: 0.
Starting test testResetCreateVolumePermissionsOnSnapshot(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest)
[pool-25-thread-2] Test testGetCreateVolumePermissionForSnapshot(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest) succeeded: 3ms
Test suite progress: tests succeeded: 390, failed: 0, skipped: 0.
[pool-25-thread-4] Test testResetCreateVolumePermissionsOnSnapshot(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest) succeeded: 2ms
Test suite progress: tests succeeded: 391, failed: 0, skipped: 0.
[pool-25-thread-5] Test testDetachVolumeOptions(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest) succeeded: 7ms
Test suite progress: tests succeeded: 392, failed: 0, skipped: 0.
[pool-25-thread-1] Test testRemoveCreateVolumePermissionsFromSnapshot(org.jclouds.ec2.services.ElasticBlockStoreAsyncClientTest) succeeded: 3ms
Test suite progress: tests succeeded: 393, failed: 0, skipped: 0.
Starting test testAllocateAddress(org.jclouds.ec2.services.ElasticIPAddressAsyncClientTest)
Starting test testAssociateAddress(org.jclouds.ec2.services.ElasticIPAddressAsyncClientTest)
Starting test testDescribeAddresses(org.jclouds.ec2.services.ElasticIPAddressAsyncClientTest)
Starting test testDisassociateAddress(org.jclouds.ec2.services.ElasticIPAddressAsyncClientTest)
Starting test testReleaseAddress(org.jclouds.ec2.services.ElasticIPAddressAsyncClientTest)
[pool-26-thread-1] Test testAllocateAddress(org.jclouds.ec2.services.ElasticIPAddressAsyncClientTest) succeeded: 6ms
Test suite progress: tests succeeded: 394, failed: 0, skipped: 0.
[pool-26-thread-4] Test testDisassociateAddress(org.jclouds.ec2.services.ElasticIPAddressAsyncClientTest) succeeded: 9ms
Test suite progress: tests succeeded: 395, failed: 0, skipped: 0.
[pool-26-thread-2] Test testAssociateAddress(org.jclouds.ec2.services.ElasticIPAddressAsyncClientTest) succeeded: 9ms
Test suite progress: tests succeeded: 396, failed: 0, skipped: 0.
[pool-26-thread-3] Test testDescribeAddresses(org.jclouds.ec2.services.ElasticIPAddressAsyncClientTest) succeeded: 9ms
Test suite progress: tests succeeded: 397, failed: 0, skipped: 0.
[pool-26-thread-5] Test testReleaseAddress(org.jclouds.ec2.services.ElasticIPAddressAsyncClientTest) succeeded: 9ms
Test suite progress: tests succeeded: 398, failed: 0, skipped: 0.
Starting test testDescribeInstances(org.jclouds.ec2.services.InstanceAsyncClientTest)
Starting test testDescribeInstancesArgs(org.jclouds.ec2.services.InstanceAsyncClientTest)
Starting test testGetBlockDeviceMappingForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest)
Starting test testGetConsoleOutputForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest)
Starting test testGetDisableApiTerminationForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest)
[pool-27-thread-1] Test testDescribeInstances(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 4ms
Test suite progress: tests succeeded: 399, failed: 0, skipped: 0.
[pool-27-thread-2] Test testDescribeInstancesArgs(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 400, failed: 0, skipped: 0.
Starting test testGetInstanceTypeForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest)
Starting test testGetInstanceInitiatedShutdownBehaviorForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest)
[pool-27-thread-4] Test testGetConsoleOutputForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 9ms
Test suite progress: tests succeeded: 401, failed: 0, skipped: 0.
[pool-27-thread-3] Test testGetBlockDeviceMappingForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 9ms
Test suite progress: tests succeeded: 402, failed: 0, skipped: 0.
Starting test testGetKernelForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest)
Starting test testGetRamdiskForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest)
[pool-27-thread-5] Test testGetDisableApiTerminationForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 13ms
Test suite progress: tests succeeded: 403, failed: 0, skipped: 0.
Starting test testGetRootDeviceNameForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest)
[pool-27-thread-1] Test testGetInstanceInitiatedShutdownBehaviorForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 11ms
Test suite progress: tests succeeded: 404, failed: 0, skipped: 0.
Starting test testGetUserDataForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest)
[pool-27-thread-5] Test testGetRootDeviceNameForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 7ms
Test suite progress: tests succeeded: 405, failed: 0, skipped: 0.
[pool-27-thread-4] Test testGetKernelForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 11ms
Test suite progress: tests succeeded: 406, failed: 0, skipped: 0.
[pool-27-thread-3] Test testGetRamdiskForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 10ms
Test suite progress: tests succeeded: 407, failed: 0, skipped: 0.
Starting test testRunInstances(org.jclouds.ec2.services.InstanceAsyncClientTest)
Starting test testRebootInstances(org.jclouds.ec2.services.InstanceAsyncClientTest)
Starting test testRunInstancesOptions(org.jclouds.ec2.services.InstanceAsyncClientTest)
[pool-27-thread-2] Test testGetInstanceTypeForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 16ms
Test suite progress: tests succeeded: 408, failed: 0, skipped: 0.
Starting test testSetApiTerminationDisabledForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest)
[pool-27-thread-4] Test testRunInstances(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 9ms
Test suite progress: tests succeeded: 409, failed: 0, skipped: 0.
Starting test testSetBlockDeviceMappingForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest)
[pool-27-thread-2] Test testSetApiTerminationDisabledForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 10ms
Test suite progress: tests succeeded: 410, failed: 0, skipped: 0.
[pool-27-thread-5] Test testRebootInstances(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 12ms
Test suite progress: tests succeeded: 411, failed: 0, skipped: 0.
[pool-27-thread-1] Test testGetUserDataForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 15ms
Test suite progress: tests succeeded: 412, failed: 0, skipped: 0.
Starting test testSetInstanceInitiatedShutdownBehaviorForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest)
Starting test testSetInstanceTypeForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest)
Starting test testSetKernelForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest)
[pool-27-thread-3] Test testRunInstancesOptions(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 12ms
Test suite progress: tests succeeded: 413, failed: 0, skipped: 0.
Starting test testSetRamdiskForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest)
[pool-27-thread-2] Test testSetInstanceInitiatedShutdownBehaviorForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 2ms
Test suite progress: tests succeeded: 414, failed: 0, skipped: 0.
[pool-27-thread-5] Test testSetInstanceTypeForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 2ms
Test suite progress: tests succeeded: 415, failed: 0, skipped: 0.
Starting test testSetUserDataForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest)
Starting test testStartInstances(org.jclouds.ec2.services.InstanceAsyncClientTest)
[pool-27-thread-3] Test testSetRamdiskForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 3ms
Test suite progress: tests succeeded: 416, failed: 0, skipped: 0.
Starting test testStopInstances(org.jclouds.ec2.services.InstanceAsyncClientTest)
[pool-27-thread-1] Test testSetKernelForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 3ms
Test suite progress: tests succeeded: 417, failed: 0, skipped: 0.
Starting test testTerminateInstances(org.jclouds.ec2.services.InstanceAsyncClientTest)
[pool-27-thread-4] Test testSetBlockDeviceMappingForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 7ms
Test suite progress: tests succeeded: 418, failed: 0, skipped: 0.
[pool-27-thread-2] Test testSetUserDataForInstanceInRegion(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 419, failed: 0, skipped: 0.
[pool-27-thread-5] Test testStartInstances(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 420, failed: 0, skipped: 0.
[pool-27-thread-3] Test testStopInstances(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 421, failed: 0, skipped: 0.
[pool-27-thread-1] Test testTerminateInstances(org.jclouds.ec2.services.InstanceAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 422, failed: 0, skipped: 0.
Starting test testDeleteKeyPair(org.jclouds.ec2.services.KeyPairAsyncClientTest)
Starting test testDescribeKeyPairs(org.jclouds.ec2.services.KeyPairAsyncClientTest)
Starting test testDescribeKeyPairsArgs(org.jclouds.ec2.services.KeyPairAsyncClientTest)
[pool-28-thread-1] Test testDeleteKeyPair(org.jclouds.ec2.services.KeyPairAsyncClientTest) succeeded: 3ms
Test suite progress: tests succeeded: 423, failed: 0, skipped: 0.
[pool-28-thread-2] Test testDescribeKeyPairs(org.jclouds.ec2.services.KeyPairAsyncClientTest) succeeded: 6ms
Test suite progress: tests succeeded: 424, failed: 0, skipped: 0.
[pool-28-thread-3] Test testDescribeKeyPairsArgs(org.jclouds.ec2.services.KeyPairAsyncClientTest) succeeded: 6ms
Test suite progress: tests succeeded: 425, failed: 0, skipped: 0.
Starting test testAuthorizeSecurityGroupIngressCidr(org.jclouds.ec2.services.SecurityGroupAsyncClientTest)
Starting test testAuthorizeSecurityGroupIngressGroup(org.jclouds.ec2.services.SecurityGroupAsyncClientTest)
Starting test testCreateSecurityGroup(org.jclouds.ec2.services.SecurityGroupAsyncClientTest)
Starting test testDeleteSecurityGroup(org.jclouds.ec2.services.SecurityGroupAsyncClientTest)
Starting test testDescribeSecurityGroups(org.jclouds.ec2.services.SecurityGroupAsyncClientTest)
[pool-29-thread-4] Test testDeleteSecurityGroup(org.jclouds.ec2.services.SecurityGroupAsyncClientTest) succeeded: 4ms
Test suite progress: tests succeeded: 426, failed: 0, skipped: 0.
[pool-29-thread-2] Test testAuthorizeSecurityGroupIngressGroup(org.jclouds.ec2.services.SecurityGroupAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 427, failed: 0, skipped: 0.
Starting test testDescribeSecurityGroupsArgs(org.jclouds.ec2.services.SecurityGroupAsyncClientTest)
[pool-29-thread-5] Test testDescribeSecurityGroups(org.jclouds.ec2.services.SecurityGroupAsyncClientTest) succeeded: 4ms
Starting test testRevokeSecurityGroupIngressCidr(org.jclouds.ec2.services.SecurityGroupAsyncClientTest)
Test suite progress: tests succeeded: 428, failed: 0, skipped: 0.
[pool-29-thread-3] Test testCreateSecurityGroup(org.jclouds.ec2.services.SecurityGroupAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 429, failed: 0, skipped: 0.
Starting test testRevokeSecurityGroupIngressGroup(org.jclouds.ec2.services.SecurityGroupAsyncClientTest)
[pool-29-thread-1] Test testAuthorizeSecurityGroupIngressCidr(org.jclouds.ec2.services.SecurityGroupAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 430, failed: 0, skipped: 0.
[pool-29-thread-4] Test testDescribeSecurityGroupsArgs(org.jclouds.ec2.services.SecurityGroupAsyncClientTest) succeeded: 2ms
Test suite progress: tests succeeded: 431, failed: 0, skipped: 0.
[pool-29-thread-5] Test testRevokeSecurityGroupIngressGroup(org.jclouds.ec2.services.SecurityGroupAsyncClientTest) succeeded: 2ms
Test suite progress: tests succeeded: 432, failed: 0, skipped: 0.
[pool-29-thread-2] Test testRevokeSecurityGroupIngressCidr(org.jclouds.ec2.services.SecurityGroupAsyncClientTest) succeeded: 2ms
Test suite progress: tests succeeded: 433, failed: 0, skipped: 0.
Starting test testBundleInstanceInRegion(org.jclouds.ec2.services.WindowsAsyncClientTest)
Starting test testBundleInstanceInRegionOptions(org.jclouds.ec2.services.WindowsAsyncClientTest)
Starting test testDescribeBundleTasks(org.jclouds.ec2.services.WindowsAsyncClientTest)
Starting test testDescribeBundleTasksArgs(org.jclouds.ec2.services.WindowsAsyncClientTest)
[pool-30-thread-3] Test testDescribeBundleTasks(org.jclouds.ec2.services.WindowsAsyncClientTest) succeeded: 11ms
Test suite progress: tests succeeded: 434, failed: 0, skipped: 0.
[pool-30-thread-4] Test testDescribeBundleTasksArgs(org.jclouds.ec2.services.WindowsAsyncClientTest) succeeded: 6ms
Test suite progress: tests succeeded: 435, failed: 0, skipped: 0.
[pool-30-thread-1] Test testBundleInstanceInRegion(org.jclouds.ec2.services.WindowsAsyncClientTest) succeeded: 11ms
Test suite progress: tests succeeded: 436, failed: 0, skipped: 0.
[pool-30-thread-2] Test testBundleInstanceInRegionOptions(org.jclouds.ec2.services.WindowsAsyncClientTest) succeeded: 12ms
Test suite progress: tests succeeded: 437, failed: 0, skipped: 0.
Starting test testAllProtocol(org.jclouds.ec2.util.IpPermissionsTest)
Starting test testAllProtocolCidrBound(org.jclouds.ec2.util.IpPermissionsTest)
Starting test testAnyProtocol(org.jclouds.ec2.util.IpPermissionsTest)
Starting test testJustProtocolAndCidr(org.jclouds.ec2.util.IpPermissionsTest)
Starting test testMultipleCidrs(org.jclouds.ec2.util.IpPermissionsTest)
[pool-31-thread-2] Test testAllProtocolCidrBound(org.jclouds.ec2.util.IpPermissionsTest) succeeded: 2ms
Test suite progress: tests succeeded: 438, failed: 0, skipped: 0.
[pool-31-thread-4] Test testJustProtocolAndCidr(org.jclouds.ec2.util.IpPermissionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 439, failed: 0, skipped: 0.
[pool-31-thread-1] Test testAllProtocol(org.jclouds.ec2.util.IpPermissionsTest) succeeded: 2ms
Test suite progress: tests succeeded: 440, failed: 0, skipped: 0.
[pool-31-thread-3] Test testAnyProtocol(org.jclouds.ec2.util.IpPermissionsTest) succeeded: 2ms
Test suite progress: tests succeeded: 441, failed: 0, skipped: 0.
[pool-31-thread-5] Test testMultipleCidrs(org.jclouds.ec2.util.IpPermissionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 442, failed: 0, skipped: 0.
Starting test testProtocolFromAndToPortAndGroupIds(org.jclouds.ec2.util.IpPermissionsTest)
Starting test testProtocolFromAndToPortAndUserGroups(org.jclouds.ec2.util.IpPermissionsTest)
Starting test testProtocolICMPAny(org.jclouds.ec2.util.IpPermissionsTest)
Starting test testProtocolICMPTypeAnyCode(org.jclouds.ec2.util.IpPermissionsTest)
Starting test testProtocolICMPTypeCode(org.jclouds.ec2.util.IpPermissionsTest)
[pool-31-thread-4] Test testProtocolFromAndToPortAndUserGroups(org.jclouds.ec2.util.IpPermissionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 443, failed: 0, skipped: 0.
[pool-31-thread-1] Test testProtocolICMPAny(org.jclouds.ec2.util.IpPermissionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 444, failed: 0, skipped: 0.
[pool-31-thread-2] Test testProtocolFromAndToPortAndGroupIds(org.jclouds.ec2.util.IpPermissionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 445, failed: 0, skipped: 0.
[pool-31-thread-5] Test testProtocolICMPTypeCode(org.jclouds.ec2.util.IpPermissionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 446, failed: 0, skipped: 0.
[pool-31-thread-3] Test testProtocolICMPTypeAnyCode(org.jclouds.ec2.util.IpPermissionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 447, failed: 0, skipped: 0.
Starting test testApplyInputStream(org.jclouds.ec2.xml.AllocateAddressResponseHandlerTest)
[pool-32-thread-1] Test testApplyInputStream(org.jclouds.ec2.xml.AllocateAddressResponseHandlerTest) succeeded: 1ms
Test suite progress: tests succeeded: 448, failed: 0, skipped: 0.
Starting test testApplyInputStream(org.jclouds.ec2.xml.AttachmentHandlerTest)
[pool-33-thread-1] Test testApplyInputStream(org.jclouds.ec2.xml.AttachmentHandlerTest) succeeded: 2ms
Test suite progress: tests succeeded: 449, failed: 0, skipped: 0.
Starting test testApplyInputStream(org.jclouds.ec2.xml.BlockDeviceMappingHandlerTest)
[pool-34-thread-1] Test testApplyInputStream(org.jclouds.ec2.xml.BlockDeviceMappingHandlerTest) succeeded: 2ms
Test suite progress: tests succeeded: 450, failed: 0, skipped: 0.
Starting test testBundleInstance(org.jclouds.ec2.xml.BundleTaskHandlerTest)
Starting test testCancleBundleTask(org.jclouds.ec2.xml.BundleTaskHandlerTest)
[pool-35-thread-2] Test testCancleBundleTask(org.jclouds.ec2.xml.BundleTaskHandlerTest) succeeded: 3ms
Test suite progress: tests succeeded: 451, failed: 0, skipped: 0.
[pool-35-thread-1] Test testBundleInstance(org.jclouds.ec2.xml.BundleTaskHandlerTest) succeeded: 4ms
Test suite progress: tests succeeded: 452, failed: 0, skipped: 0.
Starting test testApplyInputStream(org.jclouds.ec2.xml.CreateVolumeResponseHandlerTest)
[pool-36-thread-1] Test testApplyInputStream(org.jclouds.ec2.xml.CreateVolumeResponseHandlerTest) succeeded: 2ms
Test suite progress: tests succeeded: 453, failed: 0, skipped: 0.
Starting test testApplyInputStream(org.jclouds.ec2.xml.DescribeAddressesResponseHandlerTest)
[pool-37-thread-1] Test testApplyInputStream(org.jclouds.ec2.xml.DescribeAddressesResponseHandlerTest) succeeded: 2ms
Test suite progress: tests succeeded: 454, failed: 0, skipped: 0.
Starting test testApplyInputStream(org.jclouds.ec2.xml.DescribeAvailabilityZonesResponseHandlerTest)
[pool-38-thread-1] Test testApplyInputStream(org.jclouds.ec2.xml.DescribeAvailabilityZonesResponseHandlerTest) succeeded: 2ms
Test suite progress: tests succeeded: 455, failed: 0, skipped: 0.
Starting test testApplyInputStream(org.jclouds.ec2.xml.DescribeBundleTasksResponseHandlerTest)
[pool-39-thread-1] Test testApplyInputStream(org.jclouds.ec2.xml.DescribeBundleTasksResponseHandlerTest) succeeded: 2ms
Test suite progress: tests succeeded: 456, failed: 0, skipped: 0.
Starting test testDiabloWithIncorrectDisplayNameField(org.jclouds.ec2.xml.DescribeImagesResponseHandlerTest)
Starting test testEBS(org.jclouds.ec2.xml.DescribeImagesResponseHandlerTest)
Starting test testUNIX(org.jclouds.ec2.xml.DescribeImagesResponseHandlerTest)
Starting test testWindows(org.jclouds.ec2.xml.DescribeImagesResponseHandlerTest)
[pool-40-thread-3] Test testUNIX(org.jclouds.ec2.xml.DescribeImagesResponseHandlerTest) succeeded: 3ms
Test suite progress: tests succeeded: 457, failed: 0, skipped: 0.
[pool-40-thread-1] Test testDiabloWithIncorrectDisplayNameField(org.jclouds.ec2.xml.DescribeImagesResponseHandlerTest) succeeded: 3ms
Test suite progress: tests succeeded: 458, failed: 0, skipped: 0.
[pool-40-thread-2] Test testEBS(org.jclouds.ec2.xml.DescribeImagesResponseHandlerTest) succeeded: 3ms
Test suite progress: tests succeeded: 459, failed: 0, skipped: 0.
[pool-40-thread-4] Test testWindows(org.jclouds.ec2.xml.DescribeImagesResponseHandlerTest) succeeded: 3ms
Test suite progress: tests succeeded: 460, failed: 0, skipped: 0.
Starting test testInstanceInitiatedShutdownBehaviorHandler(org.jclouds.ec2.xml.DescribeInstanceAttributeTest)
Starting test testBooleanValueHandler(org.jclouds.ec2.xml.DescribeInstanceAttributeTest)
Starting test testInstanceTypeHandler(org.jclouds.ec2.xml.DescribeInstanceAttributeTest)
Starting test testStringValueHandler(org.jclouds.ec2.xml.DescribeInstanceAttributeTest)
Starting test testUnencodeStringValueHandler(org.jclouds.ec2.xml.DescribeInstanceAttributeTest)
[pool-41-thread-3] Test testInstanceTypeHandler(org.jclouds.ec2.xml.DescribeInstanceAttributeTest) succeeded: 2ms
Test suite progress: tests succeeded: 461, failed: 0, skipped: 0.
[pool-41-thread-4] Test testStringValueHandler(org.jclouds.ec2.xml.DescribeInstanceAttributeTest) succeeded: 2ms
Test suite progress: tests succeeded: 462, failed: 0, skipped: 0.
[pool-41-thread-2] Test testInstanceInitiatedShutdownBehaviorHandler(org.jclouds.ec2.xml.DescribeInstanceAttributeTest) succeeded: 2ms
Test suite progress: tests succeeded: 463, failed: 0, skipped: 0.
[pool-41-thread-1] Test testBooleanValueHandler(org.jclouds.ec2.xml.DescribeInstanceAttributeTest) succeeded: 2ms
Test suite progress: tests succeeded: 464, failed: 0, skipped: 0.
[pool-41-thread-5] Test testUnencodeStringValueHandler(org.jclouds.ec2.xml.DescribeInstanceAttributeTest) succeeded: 2ms
Test suite progress: tests succeeded: 465, failed: 0, skipped: 0.
Starting test testApplyInputStream(org.jclouds.ec2.xml.DescribeInstancesResponseHandlerTest)
Starting test testEBS(org.jclouds.ec2.xml.DescribeInstancesResponseHandlerTest)
Starting test testWhenRunning(org.jclouds.ec2.xml.DescribeInstancesResponseHandlerTest)
[pool-42-thread-3] Test testWhenRunning(org.jclouds.ec2.xml.DescribeInstancesResponseHandlerTest) succeeded: 3ms
Test suite progress: tests succeeded: 466, failed: 0, skipped: 0.
[pool-42-thread-1] Test testApplyInputStream(org.jclouds.ec2.xml.DescribeInstancesResponseHandlerTest) succeeded: 5ms
Test suite progress: tests succeeded: 467, failed: 0, skipped: 0.
[pool-42-thread-2] Test testEBS(org.jclouds.ec2.xml.DescribeInstancesResponseHandlerTest) succeeded: 5ms
Test suite progress: tests succeeded: 468, failed: 0, skipped: 0.
Starting test testApplyInputStream(org.jclouds.ec2.xml.DescribeKeyPairsResponseHandlerTest)
[pool-43-thread-1] Test testApplyInputStream(org.jclouds.ec2.xml.DescribeKeyPairsResponseHandlerTest) succeeded: 2ms
Test suite progress: tests succeeded: 469, failed: 0, skipped: 0.
Starting test testEuc(org.jclouds.ec2.xml.DescribeRegionsResponseHandlerTest)
Starting test testApplyInputStream(org.jclouds.ec2.xml.DescribeRegionsResponseHandlerTest)
Starting test testEuc2(org.jclouds.ec2.xml.DescribeRegionsResponseHandlerTest)
Starting test testUnsupportedAdditionalRegionDoesntBreak(org.jclouds.ec2.xml.DescribeRegionsResponseHandlerTest)
[pool-44-thread-3] Test testEuc2(org.jclouds.ec2.xml.DescribeRegionsResponseHandlerTest) succeeded: 2ms
Test suite progress: tests succeeded: 470, failed: 0, skipped: 0.
[pool-44-thread-2] Test testEuc(org.jclouds.ec2.xml.DescribeRegionsResponseHandlerTest) succeeded: 2ms
Test suite progress: tests succeeded: 471, failed: 0, skipped: 0.
[pool-44-thread-1] Test testApplyInputStream(org.jclouds.ec2.xml.DescribeRegionsResponseHandlerTest) succeeded: 2ms
Test suite progress: tests succeeded: 472, failed: 0, skipped: 0.
[pool-44-thread-4] Test testUnsupportedAdditionalRegionDoesntBreak(org.jclouds.ec2.xml.DescribeRegionsResponseHandlerTest) succeeded: 1ms
Test suite progress: tests succeeded: 473, failed: 0, skipped: 0.
Starting test testApplyInputStream(org.jclouds.ec2.xml.DescribeSecurityGroupsResponseHandlerTest)
Starting test testApplyInputStreamWithEmptyFields(org.jclouds.ec2.xml.DescribeSecurityGroupsResponseHandlerTest)
[pool-45-thread-2] Test testApplyInputStreamWithEmptyFields(org.jclouds.ec2.xml.DescribeSecurityGroupsResponseHandlerTest) succeeded: 2ms
Test suite progress: tests succeeded: 474, failed: 0, skipped: 0.
[pool-45-thread-1] Test testApplyInputStream(org.jclouds.ec2.xml.DescribeSecurityGroupsResponseHandlerTest) succeeded: 3ms
Test suite progress: tests succeeded: 475, failed: 0, skipped: 0.
Starting test testApplyInputStream(org.jclouds.ec2.xml.DescribeSnapshotsResponseHandlerTest)
[pool-46-thread-1] Test testApplyInputStream(org.jclouds.ec2.xml.DescribeSnapshotsResponseHandlerTest) succeeded: 3ms
Test suite progress: tests succeeded: 476, failed: 0, skipped: 0.
Starting test testApplyInputStream(org.jclouds.ec2.xml.DescribeVolumesResponseHandlerTest)
[pool-47-thread-1] Test testApplyInputStream(org.jclouds.ec2.xml.DescribeVolumesResponseHandlerTest) succeeded: 2ms
Test suite progress: tests succeeded: 477, failed: 0, skipped: 0.
Starting test testApplyInputStream(org.jclouds.ec2.xml.GetConsoleOutputResponseHandlerTest)
[pool-48-thread-1] Test testApplyInputStream(org.jclouds.ec2.xml.GetConsoleOutputResponseHandlerTest) succeeded: 2ms
Test suite progress: tests succeeded: 478, failed: 0, skipped: 0.
Starting test testStart(org.jclouds.ec2.xml.InstanceStateChangeHandlerTest)
Starting test testStop(org.jclouds.ec2.xml.InstanceStateChangeHandlerTest)
Starting test testTerminate(org.jclouds.ec2.xml.InstanceStateChangeHandlerTest)
[pool-49-thread-1] Test testStart(org.jclouds.ec2.xml.InstanceStateChangeHandlerTest) succeeded: 1ms
Test suite progress: tests succeeded: 479, failed: 0, skipped: 0.
[pool-49-thread-3] Test testTerminate(org.jclouds.ec2.xml.InstanceStateChangeHandlerTest) succeeded: 1ms
Test suite progress: tests succeeded: 480, failed: 0, skipped: 0.
[pool-49-thread-2] Test testStop(org.jclouds.ec2.xml.InstanceStateChangeHandlerTest) succeeded: 1ms
Test suite progress: tests succeeded: 481, failed: 0, skipped: 0.
Starting test testApplyInputStream(org.jclouds.ec2.xml.KeyPairResponseHandlerTest)
[pool-50-thread-1] Test testApplyInputStream(org.jclouds.ec2.xml.KeyPairResponseHandlerTest) succeeded: 6ms
Test suite progress: tests succeeded: 482, failed: 0, skipped: 0.
Starting test testApplyInputStream(org.jclouds.ec2.xml.PermissionHandlerTest)
[pool-51-thread-1] Test testApplyInputStream(org.jclouds.ec2.xml.PermissionHandlerTest) succeeded: 1ms
Test suite progress: tests succeeded: 483, failed: 0, skipped: 0.
Starting test testCloudBridge(org.jclouds.ec2.xml.RunInstancesResponseHandlerTest)
Starting test testEC2(org.jclouds.ec2.xml.RunInstancesResponseHandlerTest)
[pool-52-thread-1] Test testCloudBridge(org.jclouds.ec2.xml.RunInstancesResponseHandlerTest) succeeded: 9ms
Test suite progress: tests succeeded: 484, failed: 0, skipped: 0.
[pool-52-thread-2] Test testEC2(org.jclouds.ec2.xml.RunInstancesResponseHandlerTest) succeeded: 10ms
Test suite progress: tests succeeded: 485, failed: 0, skipped: 0.
Starting test testApplyInputStream(org.jclouds.ec2.xml.SnapshotHandlerTest)
[pool-53-thread-1] Test testApplyInputStream(org.jclouds.ec2.xml.SnapshotHandlerTest) succeeded: 1ms
Test suite progress: tests succeeded: 486, failed: 0, skipped: 0.
Tests run: 486, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 7.089 sec

Results :

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

[INFO] 
[INFO] --- clojure-maven-plugin:1.3.10:test (test-clojure) @ ec2 ---

Testing com.theoryinpractise.clojure.testrunner

Ran 0 tests containing 0 assertions.
0 failures, 0 errors.
[INFO] 
[INFO] --- maven-bundle-plugin:2.3.7:bundle (default-bundle) @ ec2 ---
[INFO] 
[INFO] --- maven-jar-plugin:2.4:test-jar (default) @ ec2 ---
[INFO] Building jar: /private/tmp/jclouds/apis/ec2/target/ec2-1.6.0-SNAPSHOT-tests.jar
[INFO] 
[INFO] --- maven-surefire-plugin:2.12.4:test (integration) @ ec2 ---
[INFO] Surefire report directory: /private/tmp/jclouds/apis/ec2/target/surefire-reports

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running TestSuite
Configuring TestNG with: org.apache.maven.surefire.testng.conf.TestNG652Configurator@5210f6d3
Starting test testCreateImage(org.jclouds.ec2.compute.extensions.EC2ImageExtensionLiveTest)
Starting test testCanRecreateGroup(org.jclouds.ec2.compute.TestCanRecreateGroupLiveTest)
Starting test testWindowsAdminWorks(org.jclouds.ec2.compute.functions.PasswordCredentialsFromWindowsInstanceLiveTest)
Starting test testDescribeAvailabilityZones(org.jclouds.ec2.services.AvailabilityZoneAndRegionClientLiveTest)
[TestNG] Test testDescribeAvailabilityZones(org.jclouds.ec2.services.AvailabilityZoneAndRegionClientLiveTest) succeeded: 27574ms
Test suite progress: tests succeeded: 1, failed: 0, skipped: 0.
Starting test testDescribeRegions(org.jclouds.ec2.services.AvailabilityZoneAndRegionClientLiveTest)
[TestNG] Test testDescribeRegions(org.jclouds.ec2.services.AvailabilityZoneAndRegionClientLiveTest) succeeded: 3110ms
Test suite progress: tests succeeded: 2, failed: 0, skipped: 0.
Starting test testAttachVolumeInRegion(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest)
[TestNG] Test testAttachVolumeInRegion(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 3, failed: 0, skipped: 0.
Starting test testCreateVolumeInAvailabilityZone(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest)
[TestNG] Test testCreateVolumeInAvailabilityZone(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest) succeeded: 6564ms
Test suite progress: tests succeeded: 4, failed: 0, skipped: 0.
Starting test testDescribeSnapshots(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest)
Starting test testCreateAndListEBSBackedImage(org.jclouds.ec2.services.AMIClientLiveTest)
[TestNG] Test testCreateImage(org.jclouds.ec2.compute.extensions.EC2ImageExtensionLiveTest) failed.
Test suite progress: tests succeeded: 4, failed: 1, skipped: 0.
[TestNG] Test testSpawnNodeFromImage(org.jclouds.ec2.compute.extensions.EC2ImageExtensionLiveTest) skipped.
Test suite progress: tests succeeded: 4, failed: 1, skipped: 1.
[TestNG] Test testDeleteImage(org.jclouds.ec2.compute.extensions.EC2ImageExtensionLiveTest) skipped.
Test suite progress: tests succeeded: 4, failed: 1, skipped: 2.
Starting test testDescribeAddresses(org.jclouds.ec2.services.ElasticIPAddressClientLiveTest)
[TestNG] Test testCanRecreateGroup(org.jclouds.ec2.compute.TestCanRecreateGroupLiveTest) failed.
Test suite progress: tests succeeded: 4, failed: 2, skipped: 2.
Starting test testDescribeInstances(org.jclouds.ec2.services.InstanceClientLiveTest)
[TestNG] Test testDescribeInstances(org.jclouds.ec2.services.InstanceClientLiveTest) succeeded: 10244ms
Test suite progress: tests succeeded: 5, failed: 2, skipped: 2.
Starting test testCreateKeyPair(org.jclouds.ec2.services.KeyPairClientLiveTest)
[TestNG] Test testDescribeAddresses(org.jclouds.ec2.services.ElasticIPAddressClientLiveTest) succeeded: 13374ms
Test suite progress: tests succeeded: 6, failed: 2, skipped: 2.
Starting test testAuthorizeSecurityGroupIngressCidr(org.jclouds.ec2.services.SecurityGroupClientLiveTest)
[TestNG] Test testCreateKeyPair(org.jclouds.ec2.services.KeyPairClientLiveTest) succeeded: 3130ms
Test suite progress: tests succeeded: 7, failed: 2, skipped: 2.
Starting test testDescribeKeyPairs(org.jclouds.ec2.services.KeyPairClientLiveTest)
[TestNG] Test testAuthorizeSecurityGroupIngressCidr(org.jclouds.ec2.services.SecurityGroupClientLiveTest) succeeded: 6059ms
Test suite progress: tests succeeded: 8, failed: 2, skipped: 2.
Starting test testAuthorizeSecurityGroupIngressSourceGroup(org.jclouds.ec2.services.SecurityGroupClientLiveTest)
[TestNG] Test testDescribeKeyPairs(org.jclouds.ec2.services.KeyPairClientLiveTest) succeeded: 7774ms
Test suite progress: tests succeeded: 9, failed: 2, skipped: 2.
[TestNG] Test testAuthorizeSecurityGroupIngressSourceGroup(org.jclouds.ec2.services.SecurityGroupClientLiveTest) succeeded: 11183ms
Test suite progress: tests succeeded: 10, failed: 2, skipped: 2.
Starting test testAuthorizeSecurityGroupIngressSourcePort(org.jclouds.ec2.services.SecurityGroupClientLiveTest)
[TestNG] Test testAuthorizeSecurityGroupIngressSourcePort(org.jclouds.ec2.services.SecurityGroupClientLiveTest) succeeded: 5778ms
Test suite progress: tests succeeded: 11, failed: 2, skipped: 2.
Starting test testCreateSecurityGroup(org.jclouds.ec2.services.SecurityGroupClientLiveTest)
[TestNG] Test testCreateSecurityGroup(org.jclouds.ec2.services.SecurityGroupClientLiveTest) succeeded: 4649ms
Test suite progress: tests succeeded: 12, failed: 2, skipped: 2.
Starting test testDescribe(org.jclouds.ec2.services.SecurityGroupClientLiveTest)
[TestNG] Test testDescribeSnapshots(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest) succeeded: 112733ms
Test suite progress: tests succeeded: 13, failed: 2, skipped: 2.
Starting test testDescribeVolumes(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest)
[TestNG] Test testDescribe(org.jclouds.ec2.services.SecurityGroupClientLiveTest) failed.
Test suite progress: tests succeeded: 13, failed: 3, skipped: 2.
[TestNG] Test testCreateAndListEBSBackedImage(org.jclouds.ec2.services.AMIClientLiveTest) succeeded: 98493ms
Test suite progress: tests succeeded: 14, failed: 3, skipped: 2.
Starting test testDescribeImageBadId(org.jclouds.ec2.services.AMIClientLiveTest)
[TestNG] Test testDescribeImageBadId(org.jclouds.ec2.services.AMIClientLiveTest) succeeded: 473ms
Test suite progress: tests succeeded: 15, failed: 3, skipped: 2.
Starting test testDescribeImageNotExists(org.jclouds.ec2.services.AMIClientLiveTest)
[TestNG] Test testDescribeImageNotExists(org.jclouds.ec2.services.AMIClientLiveTest) succeeded: 453ms
Test suite progress: tests succeeded: 16, failed: 3, skipped: 2.
Starting test testDescribeImages(org.jclouds.ec2.services.AMIClientLiveTest)
[TestNG] Test testDescribeVolumes(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest) succeeded: 6384ms
Test suite progress: tests succeeded: 17, failed: 3, skipped: 2.
Starting test testDetachVolumeInRegion(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest)
[TestNG] Test testDetachVolumeInRegion(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 18, failed: 3, skipped: 2.
Starting test testCreateSnapshotInRegion(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest)
[TestNG] Test testCreateSnapshotInRegion(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest) succeeded: 1622ms
Test suite progress: tests succeeded: 19, failed: 3, skipped: 2.
Starting test testCreateVolumeFromSnapshotInAvailabilityZone(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest)
[TestNG] Test testCreateVolumeFromSnapshotInAvailabilityZone(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest) succeeded: 8045ms
Test suite progress: tests succeeded: 20, failed: 3, skipped: 2.
Starting test testCreateVolumeFromSnapshotInAvailabilityZoneWithSize(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest)
[TestNG] Test testCreateVolumeFromSnapshotInAvailabilityZoneWithSize(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest) succeeded: 2913ms
Test suite progress: tests succeeded: 21, failed: 3, skipped: 2.
Starting test testDeleteVolumeInRegion(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest)
[TestNG] Test testDeleteVolumeInRegion(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest) succeeded: 1047ms
Test suite progress: tests succeeded: 22, failed: 3, skipped: 2.
Starting test testGetCreateVolumePermissionForSnapshot(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest)
[TestNG] Test testGetCreateVolumePermissionForSnapshot(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest) succeeded: 531ms
Test suite progress: tests succeeded: 23, failed: 3, skipped: 2.
Starting test testDeleteSnapshotInRegion(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest)
[TestNG] Test testDeleteSnapshotInRegion(org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest) succeeded: 935ms
Test suite progress: tests succeeded: 24, failed: 3, skipped: 2.
[TestNG] Test testDescribeImages(org.jclouds.ec2.services.AMIClientLiveTest) succeeded: 229407ms
Test suite progress: tests succeeded: 25, failed: 3, skipped: 2.
Starting test setServiceDefaults(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)
[TestNG] Test setServiceDefaults(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 26, failed: 3, skipped: 2.
Starting test testCompareSizes(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)
[TestNG] Test testCompareSizes(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) succeeded: 67759ms
Test suite progress: tests succeeded: 27, failed: 3, skipped: 2.
Starting test testCorrectAuthException(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)
[TestNG] Test testCorrectAuthException(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) succeeded: 517ms
Test suite progress: tests succeeded: 28, failed: 3, skipped: 2.
Starting test testCorrectExceptionRunningNodesNotFound(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)
[TestNG] Test testCorrectExceptionRunningNodesNotFound(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) succeeded: 5606ms
Test suite progress: tests succeeded: 29, failed: 3, skipped: 2.
Starting test testGetAssignableLocations(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)
[TestNG] Test testGetAssignableLocations(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) succeeded: 3ms
Test suite progress: tests succeeded: 30, failed: 3, skipped: 2.
Starting test testImageById(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)
[TestNG] Test testImageById(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) succeeded: 579ms
Test suite progress: tests succeeded: 31, failed: 3, skipped: 2.
Starting test testImagesCache(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)
[TestNG] Test testImagesCache(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 32, failed: 3, skipped: 2.
Starting test testListImages(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)
[TestNG] Test testListImages(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) succeeded: 9ms
Test suite progress: tests succeeded: 33, failed: 3, skipped: 2.
Starting test testListSizes(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)
[TestNG] Test testListSizes(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 34, failed: 3, skipped: 2.
Starting test testOptionToNotBlock(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)
[TestNG] Test testOptionToNotBlock(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) succeeded: 15139ms
Test suite progress: tests succeeded: 35, failed: 3, skipped: 2.
Starting test testAutoIpAllocation(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)
[TestNG] Test testWindowsAdminWorks(org.jclouds.ec2.compute.functions.PasswordCredentialsFromWindowsInstanceLiveTest) succeeded: 494914ms
Test suite progress: tests succeeded: 36, failed: 3, skipped: 2.
[TestNG] Test testAutoIpAllocation(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) failed.
Test suite progress: tests succeeded: 36, failed: 4, skipped: 2.
Starting test testMapEBS(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)
[TestNG] Test testMapEBS(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) succeeded: 97886ms
Test suite progress: tests succeeded: 37, failed: 4, skipped: 2.
Starting test testCreateAndRunAService(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)
[TestNG] Test testCreateAndRunAService(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) failed.
Test suite progress: tests succeeded: 37, failed: 5, skipped: 2.
Starting test testListSubnets(org.jclouds.ec2.features.SubnetApiLiveTest)
[TestNG] Test testListSubnets(org.jclouds.ec2.features.SubnetApiLiveTest) skipped.
Test suite progress: tests succeeded: 37, failed: 5, skipped: 3.
Starting test testFilterWhenNotFound(org.jclouds.ec2.features.SubnetApiLiveTest)
[TestNG] Test testFilterWhenNotFound(org.jclouds.ec2.features.SubnetApiLiveTest) skipped.
Test suite progress: tests succeeded: 37, failed: 5, skipped: 4.
Starting test testGetLaunchPermissionForImage(org.jclouds.ec2.services.AMIClientLiveTest)
[TestNG] Test testGetLaunchPermissionForImage(org.jclouds.ec2.services.AMIClientLiveTest) succeeded: 704ms
Test suite progress: tests succeeded: 38, failed: 5, skipped: 4.
Starting test testAScriptExecutionAfterBootWithBasicTemplate(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)
[TestNG] Test testAScriptExecutionAfterBootWithBasicTemplate(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) failed.
Test suite progress: tests succeeded: 38, failed: 6, skipped: 4.
Starting test testConcurrentUseOfComputeServiceToCreateNodes(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)
[TestNG] Test testConcurrentUseOfComputeServiceToCreateNodes(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) failed.
Test suite progress: tests succeeded: 38, failed: 7, skipped: 4.
Starting test testTemplateMatch(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)
[TestNG] Test testTemplateMatch(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) succeeded: 136ms
Test suite progress: tests succeeded: 39, failed: 7, skipped: 4.
Starting test testExtendedOptionsAndLogin(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)
[TestNG] Test testExtendedOptionsAndLogin(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) failed.
Test suite progress: tests succeeded: 39, failed: 8, skipped: 4.
Starting test testImagesResolveCorrectly(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)
[TestNG] Test testImagesResolveCorrectly(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) succeeded: 169061ms
Test suite progress: tests succeeded: 40, failed: 8, skipped: 4.
[TestNG] Test testCreateTwoNodesWithRunScript(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 40, failed: 8, skipped: 5.
[TestNG] Test testCreateAnotherNodeWithANewContextToEnsureSharedMemIsntRequired(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 40, failed: 8, skipped: 6.
[TestNG] Test testCredentialsCache(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 40, failed: 8, skipped: 7.
[TestNG] Test testGet(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 40, failed: 8, skipped: 8.
[TestNG] Test testReboot(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 40, failed: 8, skipped: 9.
[TestNG] Test testSuspendResume(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 40, failed: 8, skipped: 10.
[TestNG] Test testGetNodesWithDetails(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 40, failed: 8, skipped: 11.
[TestNG] Test testListNodes(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 40, failed: 8, skipped: 12.
[TestNG] Test testListNodesByIds(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 40, failed: 8, skipped: 13.
[TestNG] Test testDestroyNodes(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 40, failed: 8, skipped: 14.
Tests run: 62, Failures: 8, Errors: 0, Skipped: 14, Time elapsed: 1,947.033 sec <<< FAILURE!
testCreateImage(org.jclouds.ec2.compute.extensions.EC2ImageExtensionLiveTest)  Time elapsed: 48.621 sec  <<< FAILURE!
org.jclouds.compute.RunNodesException: error running 1 node group(test-create-image) location(us-east-1) image(ami-20d82449) size(m1.small) options({})
Execution failures:
0 error[s]
Node failures:
1) IllegalStateException on node us-east-1/i-48b2372b:
java.lang.IllegalStateException: node(us-east-1/i-48b2372b) terminated
	at org.jclouds.compute.functions.PollNodeRunning.apply(PollNodeRunning.java:80)
	at org.jclouds.compute.functions.PollNodeRunning.apply(PollNodeRunning.java:46)
	at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:123)
	at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:55)
	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)
1 error[s]
	at org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:226)
	at org.jclouds.ec2.compute.EC2ComputeService.createNodesInGroup(EC2ComputeService.java:149)
	at org.jclouds.compute.extensions.internal.BaseImageExtensionLiveTest.testCreateImage(BaseImageExtensionLiveTest.java:104)
	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)

testCanRecreateGroup(org.jclouds.ec2.compute.TestCanRecreateGroupLiveTest)  Time elapsed: 1.955 sec  <<< FAILURE!
com.google.common.util.concurrent.UncheckedExecutionException: java.lang.RuntimeException: security group us-east-1/jclouds#adriancec2recreate is not available after creating
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2263)
	at com.google.common.cache.LocalCache.get(LocalCache.java:4000)
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:4004)
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4874)
	at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:4880)
	at org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptions.getSecurityGroupsForTagAndOptions(CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptions.java:187)
	at org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptions.addSecurityGroups(CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptions.java:111)
	at org.jclouds.ec2.compute.strategy.CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptions.execute(CreateKeyPairAndSecurityGroupsAsNeededAndReturnRunOptions.java:88)
	at org.jclouds.ec2.compute.strategy.EC2CreateNodesInGroupThenAddToSet.createKeyPairAndSecurityGroupsAsNeededThenRunInstances(EC2CreateNodesInGroupThenAddToSet.java:218)
	at org.jclouds.ec2.compute.strategy.EC2CreateNodesInGroupThenAddToSet.runInstancesAndWarnOnInvisible(EC2CreateNodesInGroupThenAddToSet.java:156)
	at org.jclouds.ec2.compute.strategy.EC2CreateNodesInGroupThenAddToSet.execute(EC2CreateNodesInGroupThenAddToSet.java:137)
	at org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:214)
	at org.jclouds.ec2.compute.EC2ComputeService.createNodesInGroup(EC2ComputeService.java:149)
	at org.jclouds.ec2.compute.TestCanRecreateGroupLiveTest.testCanRecreateGroup(TestCanRecreateGroupLiveTest.java:46)
Caused by: java.lang.RuntimeException: security group us-east-1/jclouds#adriancec2recreate is not available after creating
	at org.jclouds.ec2.compute.loaders.CreateSecurityGroupIfNeeded.createSecurityGroupInRegion(CreateSecurityGroupIfNeeded.java:81)
	at org.jclouds.ec2.compute.loaders.CreateSecurityGroupIfNeeded.load(CreateSecurityGroupIfNeeded.java:69)
	at org.jclouds.ec2.compute.loaders.CreateSecurityGroupIfNeeded.load(CreateSecurityGroupIfNeeded.java:45)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3599)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2379)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2342)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2257)
	... 34 more

testDescribe(org.jclouds.ec2.services.SecurityGroupClientLiveTest)  Time elapsed: 2.236 sec  <<< FAILURE!
org.jclouds.aws.AWSResponseException: request POST https://ec2.us-east-1.amazonaws.com/ HTTP/1.1 failed with code 400, error: AWSError{requestId='2eb3cd31-b3d2-4869-810d-a0391d9aaa16', requestToken='null', code='InvalidParameterValue', message='Invalid value 'rds-default-vpc-5b967d30' for groupName. You may not reference Amazon VPC security groups by name. Please use the corresponding id for this operation.', context='{Response=, Errors=}'}
	at org.jclouds.aws.handlers.ParseAWSErrorFromXmlContent.handleError(ParseAWSErrorFromXmlContent.java:78)
	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.reflect.FunctionalReflection$FunctionalInvocationHandler.handleInvocation(FunctionalReflection.java:119)
	at com.google.common.reflect.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:70)
	at com.sun.proxy.$Proxy64.describeSecurityGroupsInRegion(Unknown Source)
	at org.jclouds.ec2.services.SecurityGroupClientLiveTest.testDescribe(SecurityGroupClientLiveTest.java:85)

testAutoIpAllocation(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)  Time elapsed: 419.917 sec  <<< FAILURE!
com.google.common.util.concurrent.ExecutionError: com.google.common.util.concurrent.ExecutionError: com.google.common.util.concurrent.ExecutionError: com.google.common.util.concurrent.ExecutionError: java.lang.OutOfMemoryError: Java heap space
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2261)
	at com.google.common.cache.LocalCache.get(LocalCache.java:4000)
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:4004)
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4874)
	at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.get(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:123)
	at org.jclouds.ec2.compute.internal.EC2TemplateBuilderImpl.getImages(EC2TemplateBuilderImpl.java:116)
	at org.jclouds.compute.domain.internal.TemplateBuilderImpl.build(TemplateBuilderImpl.java:654)
	at org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:234)
	at org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:239)
	at org.jclouds.ec2.compute.EC2ComputeServiceLiveTest.testAutoIpAllocation(EC2ComputeServiceLiveTest.java:190)
Caused by: com.google.common.util.concurrent.ExecutionError: com.google.common.util.concurrent.ExecutionError: com.google.common.util.concurrent.ExecutionError: java.lang.OutOfMemoryError: Java heap space
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2261)
	at com.google.common.cache.LocalCache.get(LocalCache.java:4000)
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:4004)
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4874)
	at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.get(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:123)
	at org.jclouds.ec2.compute.functions.EC2ImageParser.apply(EC2ImageParser.java:115)
	at org.jclouds.ec2.compute.functions.EC2ImageParser.apply(EC2ImageParser.java:60)
	at com.google.common.collect.Iterators$8.transform(Iterators.java:860)
	at com.google.common.collect.TransformedIterator.next(TransformedIterator.java:48)
	at com.google.common.collect.Iterators$7.computeNext(Iterators.java:701)
	at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
	at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
	at com.google.common.collect.ImmutableCollection$Builder.addAll(ImmutableCollection.java:373)
	at com.google.common.collect.ImmutableSet$Builder.addAll(ImmutableSet.java:618)
	at com.google.common.collect.ImmutableSet.copyOf(ImmutableSet.java:323)
	at com.google.common.collect.ImmutableSet.copyOf(ImmutableSet.java:302)
	at org.jclouds.ec2.compute.suppliers.EC2ImageSupplier.get(EC2ImageSupplier.java:93)
	at org.jclouds.ec2.compute.suppliers.EC2ImageSupplier.get(EC2ImageSupplier.java:57)
	at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier$SetAndThrowAuthorizationExceptionSupplierBackedLoader.load(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:77)
	at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier$SetAndThrowAuthorizationExceptionSupplierBackedLoader.load(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:61)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3599)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2379)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2342)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2257)
	... 30 more
Caused by: com.google.common.util.concurrent.ExecutionError: com.google.common.util.concurrent.ExecutionError: java.lang.OutOfMemoryError: Java heap space
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2261)
	at com.google.common.cache.LocalCache.get(LocalCache.java:4000)
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:4004)
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4874)
	at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.get(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:123)
	at org.jclouds.location.suppliers.all.RegionToProviderOrJustProvider.get(RegionToProviderOrJustProvider.java:62)
	at org.jclouds.location.suppliers.all.ZoneToRegionToProviderOrJustProvider.get(ZoneToRegionToProviderOrJustProvider.java:77)
	at org.jclouds.location.suppliers.all.ZoneToRegionToProviderOrJustProvider.get(ZoneToRegionToProviderOrJustProvider.java:52)
	at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier$SetAndThrowAuthorizationExceptionSupplierBackedLoader.load(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:77)
	at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier$SetAndThrowAuthorizationExceptionSupplierBackedLoader.load(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:61)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3599)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2379)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2342)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2257)
	... 53 more
Caused by: com.google.common.util.concurrent.ExecutionError: java.lang.OutOfMemoryError: Java heap space
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2261)
	at com.google.common.cache.LocalCache.get(LocalCache.java:4000)
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:4004)
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4874)
	at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.get(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:123)
	at org.jclouds.location.suppliers.derived.RegionIdsFromRegionIdToURIKeySet.get(RegionIdsFromRegionIdToURIKeySet.java:51)
	at org.jclouds.location.suppliers.derived.RegionIdsFromRegionIdToURIKeySet.get(RegionIdsFromRegionIdToURIKeySet.java:38)
	at com.google.common.base.Suppliers$SupplierComposition.get(Suppliers.java:67)
	at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier$SetAndThrowAuthorizationExceptionSupplierBackedLoader.load(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:77)
	at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier$SetAndThrowAuthorizationExceptionSupplierBackedLoader.load(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:61)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3599)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2379)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2342)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2257)
	... 66 more
Caused by: java.lang.OutOfMemoryError: Java heap space
	at java.io.BufferedWriter.<init>(BufferedWriter.java:87)
	at java.io.BufferedWriter.<init>(BufferedWriter.java:70)
	at java.io.PrintStream.init(PrintStream.java:83)
	at java.io.PrintStream.<init>(PrintStream.java:125)
	at sun.net.www.http.HttpClient.openServer(HttpClient.java:390)
	at sun.net.www.http.HttpClient.openServer(HttpClient.java:523)
	at sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:272)
	at sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:329)
	at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:172)
	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:949)
	at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:158)
	at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:1014)
	at sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream(HttpsURLConnectionImpl.java:230)
	at org.jclouds.http.internal.JavaUrlHttpCommandExecutorService.writePayloadToConnection(JavaUrlHttpCommandExecutorService.java:253)
	at org.jclouds.http.internal.JavaUrlHttpCommandExecutorService.convert(JavaUrlHttpCommandExecutorService.java:220)
	at org.jclouds.http.internal.JavaUrlHttpCommandExecutorService.convert(JavaUrlHttpCommandExecutorService.java:75)
	at org.jclouds.http.internal.BaseHttpCommandExecutorService.invoke(BaseHttpCommandExecutorService.java:142)
	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.reflect.FunctionalReflection$FunctionalInvocationHandler.handleInvocation(FunctionalReflection.java:119)
	at com.google.common.reflect.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:70)
	at com.sun.proxy.$Proxy59.describeRegions(Unknown Source)
	at org.jclouds.ec2.suppliers.DescribeRegionsForRegionURIs.get(DescribeRegionsForRegionURIs.java:49)
	at org.jclouds.ec2.suppliers.DescribeRegionsForRegionURIs.get(DescribeRegionsForRegionURIs.java:36)
	at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier$SetAndThrowAuthorizationExceptionSupplierBackedLoader.load(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:77)
	at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier$SetAndThrowAuthorizationExceptionSupplierBackedLoader.load(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:61)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3599)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2379)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2342)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2257)
	at com.google.common.cache.LocalCache.get(LocalCache.java:4000)

testCreateAndRunAService(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)  Time elapsed: 218.426 sec  <<< FAILURE!
org.jclouds.compute.RunNodesException: error running 1 node group(ec2-s) location(us-east-1) image(ami-20d82449) size(m1.small) options({blockOnPort:seconds=22:300, inboundPorts=[22, 8080], tags=[ec2-s], userMetadata={test=ec2-s}})
Execution failures:
0 error[s]
Node failures:
1) IllegalStateException on node us-east-1/i-42bd3821:
java.lang.IllegalStateException: node(us-east-1/i-42bd3821) terminated
	at org.jclouds.compute.functions.PollNodeRunning.apply(PollNodeRunning.java:80)
	at org.jclouds.compute.functions.PollNodeRunning.apply(PollNodeRunning.java:46)
	at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:123)
	at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:55)
	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)
1 error[s]
	at org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:226)
	at org.jclouds.ec2.compute.EC2ComputeService.createNodesInGroup(EC2ComputeService.java:149)
	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)

testAScriptExecutionAfterBootWithBasicTemplate(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)  Time elapsed: 184.736 sec  <<< FAILURE!
org.jclouds.compute.RunNodesException: error running 1 node group(ec2-r) location(us-east-1) image(ami-20d82449) size(m1.small) options({blockOnPort:seconds=22:120})
Execution failures:
0 error[s]
Node failures:
1) IllegalStateException on node us-east-1/i-4abd3829:
java.lang.IllegalStateException: node(us-east-1/i-4abd3829) terminated
	at org.jclouds.compute.functions.PollNodeRunning.apply(PollNodeRunning.java:80)
	at org.jclouds.compute.functions.PollNodeRunning.apply(PollNodeRunning.java:46)
	at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:123)
	at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:55)
	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)
1 error[s]
	at org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:226)
	at org.jclouds.ec2.compute.EC2ComputeService.createNodesInGroup(EC2ComputeService.java:149)
	at org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:234)
	at org.jclouds.compute.internal.BaseComputeServiceLiveTest.testAScriptExecutionAfterBootWithBasicTemplate(BaseComputeServiceLiveTest.java:224)
	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)

testConcurrentUseOfComputeServiceToCreateNodes(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)  Time elapsed: 193.636 sec  <<< FAILURE!
java.util.concurrent.ExecutionException: org.jclouds.compute.RunNodesException: error running 1 node group(twin0) location(us-east-1) image(ami-20d82449) size(m1.small) options({blockOnPort:seconds=22:300, inboundPorts=[22, 8080]})
Execution failures:
0 error[s]
Node failures:
1) IllegalStateException on node us-east-1/i-0ebc396d:
java.lang.IllegalStateException: node(us-east-1/i-0ebc396d) terminated
	at org.jclouds.compute.functions.PollNodeRunning.apply(PollNodeRunning.java:80)
	at org.jclouds.compute.functions.PollNodeRunning.apply(PollNodeRunning.java:46)
	at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:123)
	at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:55)
	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)
1 error[s]
	at com.google.common.util.concurrent.AbstractFuture$Sync.getValue(AbstractFuture.java:306)
	at com.google.common.util.concurrent.AbstractFuture$Sync.get(AbstractFuture.java:279)
	at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:96)
	at org.jclouds.compute.internal.BaseComputeServiceLiveTest.testConcurrentUseOfComputeServiceToCreateNodes(BaseComputeServiceLiveTest.java:448)
	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)
Caused by: org.jclouds.compute.RunNodesException: error running 1 node group(twin0) location(us-east-1) image(ami-20d82449) size(m1.small) options({blockOnPort:seconds=22:300, inboundPorts=[22, 8080]})
Execution failures:
0 error[s]
Node failures:
1) IllegalStateException on node us-east-1/i-0ebc396d:
java.lang.IllegalStateException: node(us-east-1/i-0ebc396d) terminated
	at org.jclouds.compute.functions.PollNodeRunning.apply(PollNodeRunning.java:80)
	at org.jclouds.compute.functions.PollNodeRunning.apply(PollNodeRunning.java:46)
	at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:123)
	at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:55)
	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)
1 error[s]
	at org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:226)
	at org.jclouds.ec2.compute.EC2ComputeService.createNodesInGroup(EC2ComputeService.java:149)
	at org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:234)
	at org.jclouds.compute.internal.BaseComputeServiceLiveTest$1.call(BaseComputeServiceLiveTest.java:438)
	at org.jclouds.compute.internal.BaseComputeServiceLiveTest$1.call(BaseComputeServiceLiveTest.java:436)
	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)
	at java.lang.Thread.getStackTrace(Thread.java:1503)
	at org.jclouds.compute.internal.BaseComputeServiceLiveTest.testConcurrentUseOfComputeServiceToCreateNodes(BaseComputeServiceLiveTest.java:436)
	... 21 more
Caused by: org.jclouds.compute.RunNodesException: error running 1 node group(twin0) location(us-east-1) image(ami-20d82449) size(m1.small) options({blockOnPort:seconds=22:300, inboundPorts=[22, 8080]})
Execution failures:
0 error[s]
Node failures:
1) IllegalStateException on node us-east-1/i-0ebc396d:
java.lang.IllegalStateException: node(us-east-1/i-0ebc396d) terminated
	at org.jclouds.compute.functions.PollNodeRunning.apply(PollNodeRunning.java:80)
	at org.jclouds.compute.functions.PollNodeRunning.apply(PollNodeRunning.java:46)
	at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:123)
	at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:55)
	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)
1 error[s]
	at org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:226)
	at org.jclouds.ec2.compute.EC2ComputeService.createNodesInGroup(EC2ComputeService.java:149)
	at org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:234)
	at org.jclouds.compute.internal.BaseComputeServiceLiveTest$1.call(BaseComputeServiceLiveTest.java:438)
	at org.jclouds.compute.internal.BaseComputeServiceLiveTest$1.call(BaseComputeServiceLiveTest.java:436)
	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)
	at java.lang.Thread.getStackTrace(Thread.java:1503)
	at org.jclouds.compute.internal.BaseComputeServiceLiveTest.testConcurrentUseOfComputeServiceToCreateNodes(BaseComputeServiceLiveTest.java:436)
	... 21 more

testExtendedOptionsAndLogin(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest)  Time elapsed: 176.202 sec  <<< FAILURE!
org.jclouds.compute.RunNodesException: error running 1 node group(ec2-o) location(us-east-1) image(ami-20d82449) size(m1.small) options({loginPrivateKeyPresent=true, scriptPresent=true, groupNames=[ec2-o], keyPair=ec2-o})
Execution failures:
0 error[s]
Node failures:
1) IllegalStateException on node us-east-1/i-4f21432d:
java.lang.IllegalStateException: node(us-east-1/i-4f21432d) terminated
	at org.jclouds.compute.functions.PollNodeRunning.apply(PollNodeRunning.java:80)
	at org.jclouds.compute.functions.PollNodeRunning.apply(PollNodeRunning.java:46)
	at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:123)
	at org.jclouds.compute.strategy.CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(CustomizeNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:55)
	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)
1 error[s]
	at org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:226)
	at org.jclouds.ec2.compute.EC2ComputeService.createNodesInGroup(EC2ComputeService.java:149)
	at org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:234)
	at org.jclouds.ec2.compute.EC2ComputeServiceLiveTest.testExtendedOptionsAndLogin(EC2ComputeServiceLiveTest.java:143)


Results :

Failed tests:   testCreateImage(org.jclouds.ec2.compute.extensions.EC2ImageExtensionLiveTest): error running 1 node group(test-create-image) location(us-east-1) image(ami-20d82449) size(m1.small) options({})(..)
  testCanRecreateGroup(org.jclouds.ec2.compute.TestCanRecreateGroupLiveTest): java.lang.RuntimeException: security group us-east-1/jclouds#adriancec2recreate is not available after creating
  testDescribe(org.jclouds.ec2.services.SecurityGroupClientLiveTest): request POST https://ec2.us-east-1.amazonaws.com/ HTTP/1.1 failed with code 400, error: AWSError{requestId='2eb3cd31-b3d2-4869-810d-a0391d9aaa16', requestToken='null', code='InvalidParameterValue', message='Invalid value 'rds-default-vpc-5b967d30' for groupName. You may not reference Amazon VPC security groups by name. Please use the corresponding id for this operation.', context='{Response=, Errors=}'}
  testAutoIpAllocation(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest): com.google.common.util.concurrent.ExecutionError: com.google.common.util.concurrent.ExecutionError: com.google.common.util.concurrent.ExecutionError: java.lang.OutOfMemoryError: Java heap space
  testCreateAndRunAService(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest): error running 1 node group(ec2-s) location(us-east-1) image(ami-20d82449) size(m1.small) options({blockOnPort:seconds=22:300, inboundPorts=[22, 8080], tags=[ec2-s], userMetadata={test=ec2-s}})(..)
  testAScriptExecutionAfterBootWithBasicTemplate(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest): error running 1 node group(ec2-r) location(us-east-1) image(ami-20d82449) size(m1.small) options({blockOnPort:seconds=22:120})(..)
  testConcurrentUseOfComputeServiceToCreateNodes(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest): org.jclouds.compute.RunNodesException: error running 1 node group(twin0) location(us-east-1) image(ami-20d82449) size(m1.small) options({blockOnPort:seconds=22:300, inboundPorts=[22, 8080]})(..)
  testExtendedOptionsAndLogin(org.jclouds.ec2.compute.EC2ComputeServiceLiveTest): error running 1 node group(ec2-o) location(us-east-1) image(ami-20d82449) size(m1.small) options({loginPrivateKeyPresent=true, scriptPresent=true, groupNames=[ec2-o], keyPair=ec2-o})(..)

Tests run: 62, Failures: 8, Errors: 0, Skipped: 14

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 32:46.192s
[INFO] Finished at: Sat Apr 27 14:07:45 PDT 2013
[INFO] Final Memory: 20M/125M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.12.4:test (integration) on project ec2: There are test failures.
[ERROR] 
[ERROR] Please refer to /private/tmp/jclouds/apis/ec2/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
