[INFO] Scanning for projects...
[WARNING] 
[WARNING] Some problems were encountered while building the effective model for org.jclouds.provider:gogrid:bundle:1.2.3-SNAPSHOT
[WARNING] 'parent.relativePath' of POM org.jclouds:jclouds-project:1.2.3-SNAPSHOT (/Users/adriancole/git/1.2.0/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.2.3-SNAPSHOT, /Users/adriancole/git/1.2.0/jclouds/project/pom.xml, line 24, column 13
[WARNING] 
[WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
[WARNING] 
[WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
[WARNING] 
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building jclouds GoGrid provider 1.2.3-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- maven-clean-plugin:2.4.1:clean (default-clean) @ gogrid ---
[INFO] Deleting /Users/adriancole/git/1.2.0/jclouds/providers/gogrid/target
[INFO] 
[INFO] --- maven-enforcer-plugin:1.0.1:enforce (enforce-maven) @ gogrid ---
[INFO] 
[INFO] --- maven-enforcer-plugin:1.0.1:enforce (enforce-banned-dependencies) @ gogrid ---
[INFO] 
[INFO] --- maven-enforcer-plugin:1.0.1:enforce (enforce-java) @ gogrid ---
[INFO] 
[INFO] --- maven-remote-resources-plugin:1.2:process (process-remote-resources) @ gogrid ---
[INFO] Setting property: classpath.resource.loader.class => 'org.codehaus.plexus.velocity.ContextClassLoaderResourceLoader'.
[INFO] Setting property: velocimacro.messages.on => 'false'.
[INFO] Setting property: resource.loader => 'classpath'.
[INFO] Setting property: resource.manager.logwhenfound => 'false'.
[INFO] 
[INFO] --- maven-resources-plugin:2.4.2:resources (default-resources) @ gogrid ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /Users/adriancole/git/1.2.0/jclouds/providers/gogrid/src/main/clojure
[INFO] Copying 1 resource
[INFO] Copying 2 resources
[INFO] 
[INFO] --- maven-compiler-plugin:2.3:compile (default-compile) @ gogrid ---
[INFO] Compiling 92 source files to /Users/adriancole/git/1.2.0/jclouds/providers/gogrid/target/classes
[INFO] 
[INFO] --- maven-resources-plugin:2.4.2:testResources (default-testResources) @ gogrid ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /Users/adriancole/git/1.2.0/jclouds/providers/gogrid/src/test/clojure
[INFO] Copying 7 resources
[INFO] Copying 2 resources
[INFO] 
[INFO] --- maven-compiler-plugin:2.3:testCompile (default-testCompile) @ gogrid ---
[INFO] Compiling 28 source files to /Users/adriancole/git/1.2.0/jclouds/providers/gogrid/target/test-classes
[INFO] 
[INFO] --- maven-surefire-plugin:2.5:test (default-test) @ gogrid ---
[INFO] Surefire report directory: /Users/adriancole/git/1.2.0/jclouds/providers/gogrid/target/surefire-reports

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running TestSuite
Starting test testEditImageFriendlyName(org.jclouds.gogrid.services.GridImageAsyncClientTest)
Starting test testGetImagesByName(org.jclouds.gogrid.services.GridImageAsyncClientTest)
Starting test testGetImageListWithOptions(org.jclouds.gogrid.services.GridImageAsyncClientTest)
Starting test testEditImageDescription(org.jclouds.gogrid.services.GridImageAsyncClientTest)
[pool-2-thread-3] Test testGetImagesByName(org.jclouds.gogrid.services.GridImageAsyncClientTest) succeeded: 934ms
Test suite progress: tests succeeded: 1, failed: 0, skipped: 0.
[pool-2-thread-2] Test testGetImageListWithOptions(org.jclouds.gogrid.services.GridImageAsyncClientTest) succeeded: 934ms
Test suite progress: tests succeeded: 2, failed: 0, skipped: 0.
[pool-2-thread-4] Test testEditImageDescription(org.jclouds.gogrid.services.GridImageAsyncClientTest) succeeded: 934ms
Test suite progress: tests succeeded: 3, failed: 0, skipped: 0.
[pool-2-thread-1] Test testEditImageFriendlyName(org.jclouds.gogrid.services.GridImageAsyncClientTest) succeeded: 935ms
Test suite progress: tests succeeded: 4, failed: 0, skipped: 0.
Starting test testApplyInputStreamDetails(org.jclouds.gogrid.functions.ParseLoadBalancersFromJsonResponseTest)
[pool-3-thread-1] Test testApplyInputStreamDetails(org.jclouds.gogrid.functions.ParseLoadBalancersFromJsonResponseTest) succeeded: 62ms
Test suite progress: tests succeeded: 5, failed: 0, skipped: 0.
Starting test testGetJobListWithOptions(org.jclouds.gogrid.services.GridJobAsyncClientTest)
Starting test testGetJobsForServerName(org.jclouds.gogrid.services.GridJobAsyncClientTest)
Starting test testGetJobsById(org.jclouds.gogrid.services.GridJobAsyncClientTest)
Starting test testGetJobListNoOptions(org.jclouds.gogrid.services.GridJobAsyncClientTest)
[pool-4-thread-2] Test testGetJobListNoOptions(org.jclouds.gogrid.services.GridJobAsyncClientTest) succeeded: 2ms
Test suite progress: tests succeeded: 6, failed: 0, skipped: 0.
[pool-4-thread-3] Test testGetJobsForServerName(org.jclouds.gogrid.services.GridJobAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 7, failed: 0, skipped: 0.
[pool-4-thread-4] Test testGetJobListWithOptions(org.jclouds.gogrid.services.GridJobAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 8, failed: 0, skipped: 0.
[pool-4-thread-1] Test testGetJobsById(org.jclouds.gogrid.services.GridJobAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 9, failed: 0, skipped: 0.
Starting test testHandler(org.jclouds.gogrid.handlers.GoGridErrorHandlerTest)
[pool-5-thread-1] Test testHandler(org.jclouds.gogrid.handlers.GoGridErrorHandlerTest) succeeded: 6ms
Test suite progress: tests succeeded: 10, failed: 0, skipped: 0.
Starting test testInRestProperties(org.jclouds.gogrid.GoGridProviderTest)
Starting test testAllContains(org.jclouds.gogrid.GoGridProviderTest)
Starting test testOfTypeContains(org.jclouds.gogrid.GoGridProviderTest)
Starting test testWithId(org.jclouds.gogrid.GoGridProviderTest)
[pool-6-thread-3] Test testAllContains(org.jclouds.gogrid.GoGridProviderTest) succeeded: 13ms
Test suite progress: tests succeeded: 11, failed: 0, skipped: 0.
[pool-6-thread-2] Test testWithId(org.jclouds.gogrid.GoGridProviderTest) succeeded: 13ms
Test suite progress: tests succeeded: 12, failed: 0, skipped: 0.
[pool-6-thread-4] Test testOfTypeContains(org.jclouds.gogrid.GoGridProviderTest) succeeded: 14ms
Test suite progress: tests succeeded: 13, failed: 0, skipped: 0.
[pool-6-thread-1] Test testInRestProperties(org.jclouds.gogrid.GoGridProviderTest) succeeded: 23ms
Test suite progress: tests succeeded: 14, failed: 0, skipped: 0.
Starting test testAssignability(org.jclouds.gogrid.options.AddServerOptionsTest)
Starting test testWithDescription(org.jclouds.gogrid.options.AddServerOptionsTest)
Starting test testWith500LengthDescription(org.jclouds.gogrid.options.AddServerOptionsTest)
Starting test testAsSandboxType(org.jclouds.gogrid.options.AddServerOptionsTest)
Starting test testWithDescriptionNPE(org.jclouds.gogrid.options.AddServerOptionsTest)
[pool-7-thread-1] Test testAssignability(org.jclouds.gogrid.options.AddServerOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 15, failed: 0, skipped: 0.
[pool-7-thread-4] Test testWithDescriptionNPE(org.jclouds.gogrid.options.AddServerOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 16, failed: 0, skipped: 0.
Starting test testAsSandboxTypeStatic(org.jclouds.gogrid.options.AddServerOptionsTest)
Starting test testNullWithDescription(org.jclouds.gogrid.options.AddServerOptionsTest)
[pool-7-thread-4] Test testNullWithDescription(org.jclouds.gogrid.options.AddServerOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 17, failed: 0, skipped: 0.
[pool-7-thread-2] Test testWith500LengthDescription(org.jclouds.gogrid.options.AddServerOptionsTest) succeeded: 3ms
Test suite progress: tests succeeded: 18, failed: 0, skipped: 0.
[pool-7-thread-3] Test testWithDescription(org.jclouds.gogrid.options.AddServerOptionsTest) succeeded: 3ms
Test suite progress: tests succeeded: 19, failed: 0, skipped: 0.
[pool-7-thread-5] Test testAsSandboxType(org.jclouds.gogrid.options.AddServerOptionsTest) succeeded: 3ms
Test suite progress: tests succeeded: 20, failed: 0, skipped: 0.
[pool-7-thread-1] Test testAsSandboxTypeStatic(org.jclouds.gogrid.options.AddServerOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 21, failed: 0, skipped: 0.
Starting test testWith501LengthDescription(org.jclouds.gogrid.options.AddServerOptionsTest)
Starting test testWithDescriptionStatic(org.jclouds.gogrid.options.AddServerOptionsTest)
[pool-7-thread-4] Test testWith501LengthDescription(org.jclouds.gogrid.options.AddServerOptionsTest) succeeded: 1ms
Test suite progress: tests succeeded: 22, failed: 0, skipped: 0.
[pool-7-thread-2] Test testWithDescriptionStatic(org.jclouds.gogrid.options.AddServerOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 23, failed: 0, skipped: 0.
Starting test testApplySetsTagFromNameAndCredentialsFromName(org.jclouds.gogrid.compute.functions.ServerToNodeMetadataTest)
[pool-8-thread-1] Test testApplySetsTagFromNameAndCredentialsFromName(org.jclouds.gogrid.compute.functions.ServerToNodeMetadataTest) succeeded: 177ms
Test suite progress: tests succeeded: 24, failed: 0, skipped: 0.
Starting test testGetLoadBalancersByName(org.jclouds.gogrid.services.GridLoadBalancerAsyncClientTest)
Starting test testEditLoadBalancer(org.jclouds.gogrid.services.GridLoadBalancerAsyncClientTest)
Starting test testDeleteLoadBalancerById(org.jclouds.gogrid.services.GridLoadBalancerAsyncClientTest)
Starting test testEditLoadBalancerNamed(org.jclouds.gogrid.services.GridLoadBalancerAsyncClientTest)
Starting test testGetLoadBalancerList(org.jclouds.gogrid.services.GridLoadBalancerAsyncClientTest)
[pool-9-thread-4] Test testDeleteLoadBalancerById(org.jclouds.gogrid.services.GridLoadBalancerAsyncClientTest) succeeded: 3ms
Test suite progress: tests succeeded: 25, failed: 0, skipped: 0.
[pool-9-thread-3] Test testGetLoadBalancerList(org.jclouds.gogrid.services.GridLoadBalancerAsyncClientTest) succeeded: 3ms
Test suite progress: tests succeeded: 26, failed: 0, skipped: 0.
[pool-9-thread-1] Test testGetLoadBalancersByName(org.jclouds.gogrid.services.GridLoadBalancerAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 27, failed: 0, skipped: 0.
Starting test testAddLoadBalancer(org.jclouds.gogrid.services.GridLoadBalancerAsyncClientTest)
[pool-9-thread-5] Test testEditLoadBalancer(org.jclouds.gogrid.services.GridLoadBalancerAsyncClientTest) succeeded: 5ms
Test suite progress: tests succeeded: 28, failed: 0, skipped: 0.
[pool-9-thread-2] Test testEditLoadBalancerNamed(org.jclouds.gogrid.services.GridLoadBalancerAsyncClientTest) succeeded: 4ms
Test suite progress: tests succeeded: 29, failed: 0, skipped: 0.
[pool-9-thread-4] Test testAddLoadBalancer(org.jclouds.gogrid.services.GridLoadBalancerAsyncClientTest) succeeded: 6ms
Test suite progress: tests succeeded: 30, failed: 0, skipped: 0.
Starting test testApplyInputStreamDetails(org.jclouds.gogrid.functions.ParseServerNameToCredentialsMapFromJsonResponseTest)
[pool-10-thread-1] Test testApplyInputStreamDetails(org.jclouds.gogrid.functions.ParseServerNameToCredentialsMapFromJsonResponseTest) succeeded: 14ms
Test suite progress: tests succeeded: 31, failed: 0, skipped: 0.
Starting test testGetAssignedIpList(org.jclouds.gogrid.services.GridIpAsyncClientTest)
Starting test testGetIpListWithOptions(org.jclouds.gogrid.services.GridIpAsyncClientTest)
[pool-11-thread-1] Test testGetAssignedIpList(org.jclouds.gogrid.services.GridIpAsyncClientTest) succeeded: 3ms
Test suite progress: tests succeeded: 32, failed: 0, skipped: 0.
[pool-11-thread-2] Test testGetIpListWithOptions(org.jclouds.gogrid.services.GridIpAsyncClientTest) succeeded: 3ms
Test suite progress: tests succeeded: 33, failed: 0, skipped: 0.
Starting test testPredicate(org.jclouds.gogrid.predicates.ServerLatestJobCompletedTest)
[pool-12-thread-1] Test testPredicate(org.jclouds.gogrid.predicates.ServerLatestJobCompletedTest) succeeded: 18ms
Test suite progress: tests succeeded: 34, failed: 0, skipped: 0.
Starting test testValid(org.jclouds.gogrid.functions.ParseCredentialsFromJsonResponseTest)
Starting test testFailWhenTooManyPasswords(org.jclouds.gogrid.functions.ParseCredentialsFromJsonResponseTest)
[pool-13-thread-1] Test testValid(org.jclouds.gogrid.functions.ParseCredentialsFromJsonResponseTest) succeeded: 4ms
Test suite progress: tests succeeded: 35, failed: 0, skipped: 0.
[pool-13-thread-2] Test testFailWhenTooManyPasswords(org.jclouds.gogrid.functions.ParseCredentialsFromJsonResponseTest) succeeded: 11ms
Test suite progress: tests succeeded: 36, failed: 0, skipped: 0.
Starting test testWithWrapper(org.jclouds.gogrid.binders.BindIdsToQueryParamsTest)
Starting test testWithPrimitive(org.jclouds.gogrid.binders.BindIdsToQueryParamsTest)
[pool-14-thread-1] Test testWithWrapper(org.jclouds.gogrid.binders.BindIdsToQueryParamsTest) succeeded: 1ms
Test suite progress: tests succeeded: 37, failed: 0, skipped: 0.
[pool-14-thread-2] Test testWithPrimitive(org.jclouds.gogrid.binders.BindIdsToQueryParamsTest) succeeded: 2ms
Test suite progress: tests succeeded: 38, failed: 0, skipped: 0.
Starting test testSync(org.jclouds.gogrid.GoGridAsyncClientTest)
Starting test testAsync(org.jclouds.gogrid.GoGridAsyncClientTest)
[pool-15-thread-2] Test testAsync(org.jclouds.gogrid.GoGridAsyncClientTest) succeeded: 41ms
Test suite progress: tests succeeded: 39, failed: 0, skipped: 0.
[pool-15-thread-1] Test testSync(org.jclouds.gogrid.GoGridAsyncClientTest) succeeded: 43ms
Test suite progress: tests succeeded: 40, failed: 0, skipped: 0.
Starting test testApplyInputStreamDetails(org.jclouds.gogrid.functions.ParseErrorFromJsonResponseTest)
[pool-16-thread-1] Test testApplyInputStreamDetails(org.jclouds.gogrid.functions.ParseErrorFromJsonResponseTest) succeeded: 2ms
Test suite progress: tests succeeded: 41, failed: 0, skipped: 0.
Starting test testApplyInputStreamDetails(org.jclouds.gogrid.functions.ParseServersFromJsonResponseTest)
[pool-17-thread-1] Test testApplyInputStreamDetails(org.jclouds.gogrid.functions.ParseServersFromJsonResponseTest) succeeded: 3ms
Test suite progress: tests succeeded: 42, failed: 0, skipped: 0.
Starting test testAddServerNoOptions(org.jclouds.gogrid.services.GridServerAsyncClientTest)
Starting test testGetServersByName(org.jclouds.gogrid.services.GridServerAsyncClientTest)
Starting test testServerCredentials(org.jclouds.gogrid.services.GridServerAsyncClientTest)
Starting test testDeleteByName(org.jclouds.gogrid.services.GridServerAsyncClientTest)
Starting test testGetServerListNoOptions(org.jclouds.gogrid.services.GridServerAsyncClientTest)
[pool-18-thread-2] Test testServerCredentials(org.jclouds.gogrid.services.GridServerAsyncClientTest) succeeded: 6ms
Test suite progress: tests succeeded: 43, failed: 0, skipped: 0.
[pool-18-thread-3] Test testDeleteByName(org.jclouds.gogrid.services.GridServerAsyncClientTest) succeeded: 6ms
Test suite progress: tests succeeded: 44, failed: 0, skipped: 0.
[pool-18-thread-5] Test testGetServersByName(org.jclouds.gogrid.services.GridServerAsyncClientTest) succeeded: 7ms
Test suite progress: tests succeeded: 45, failed: 0, skipped: 0.
Starting test testTypes(org.jclouds.gogrid.services.GridServerAsyncClientTest)
Starting test testPowerServer(org.jclouds.gogrid.services.GridServerAsyncClientTest)
[pool-18-thread-4] Test testGetServerListNoOptions(org.jclouds.gogrid.services.GridServerAsyncClientTest) succeeded: 7ms
Starting test testAddServerOptions(org.jclouds.gogrid.services.GridServerAsyncClientTest)
Test suite progress: tests succeeded: 46, failed: 0, skipped: 0.
[pool-18-thread-1] Test testAddServerNoOptions(org.jclouds.gogrid.services.GridServerAsyncClientTest) succeeded: 8ms
Test suite progress: tests succeeded: 47, failed: 0, skipped: 0.
Starting test testGetRamSizes(org.jclouds.gogrid.services.GridServerAsyncClientTest)
Starting test testEditServerRam(org.jclouds.gogrid.services.GridServerAsyncClientTest)
[pool-18-thread-3] Test testPowerServer(org.jclouds.gogrid.services.GridServerAsyncClientTest) succeeded: 2ms
Test suite progress: tests succeeded: 48, failed: 0, skipped: 0.
[pool-18-thread-2] Test testTypes(org.jclouds.gogrid.services.GridServerAsyncClientTest) succeeded: 3ms
Test suite progress: tests succeeded: 49, failed: 0, skipped: 0.
Starting test testEditServerType(org.jclouds.gogrid.services.GridServerAsyncClientTest)
Starting test testGetServersById(org.jclouds.gogrid.services.GridServerAsyncClientTest)
[pool-18-thread-1] Test testEditServerRam(org.jclouds.gogrid.services.GridServerAsyncClientTest) succeeded: 2ms
Test suite progress: tests succeeded: 50, failed: 0, skipped: 0.
[pool-18-thread-5] Test testAddServerOptions(org.jclouds.gogrid.services.GridServerAsyncClientTest) succeeded: 3ms
Test suite progress: tests succeeded: 51, failed: 0, skipped: 0.
[pool-18-thread-4] Test testGetRamSizes(org.jclouds.gogrid.services.GridServerAsyncClientTest) succeeded: 3ms
Test suite progress: tests succeeded: 52, failed: 0, skipped: 0.
Starting test testGetServerListWithOptions(org.jclouds.gogrid.services.GridServerAsyncClientTest)
Starting test testEditServerDescription(org.jclouds.gogrid.services.GridServerAsyncClientTest)
[pool-18-thread-3] Test testEditServerType(org.jclouds.gogrid.services.GridServerAsyncClientTest) succeeded: 2ms
Test suite progress: tests succeeded: 53, failed: 0, skipped: 0.
[pool-18-thread-2] Test testGetServersById(org.jclouds.gogrid.services.GridServerAsyncClientTest) succeeded: 3ms
Test suite progress: tests succeeded: 54, failed: 0, skipped: 0.
[pool-18-thread-5] Test testEditServerDescription(org.jclouds.gogrid.services.GridServerAsyncClientTest) succeeded: 2ms
Test suite progress: tests succeeded: 55, failed: 0, skipped: 0.
[pool-18-thread-1] Test testGetServerListWithOptions(org.jclouds.gogrid.services.GridServerAsyncClientTest) succeeded: 2ms
Test suite progress: tests succeeded: 56, failed: 0, skipped: 0.
Starting test testApplyInputStreamDetails(org.jclouds.gogrid.functions.ParseJobsFromJsonResponseTest)
[pool-19-thread-1] Test testApplyInputStreamDetails(org.jclouds.gogrid.functions.ParseJobsFromJsonResponseTest) succeeded: 5ms
Test suite progress: tests succeeded: 57, failed: 0, skipped: 0.
Starting test testAllStatusCovered(org.jclouds.gogrid.compute.config.GoGridComputeServiceContextModuleTest)
[pool-20-thread-1] Test testAllStatusCovered(org.jclouds.gogrid.compute.config.GoGridComputeServiceContextModuleTest) succeeded: 0ms
Test suite progress: tests succeeded: 58, failed: 0, skipped: 0.
Starting test testAs(org.jclouds.gogrid.compute.options.GoGridTemplateOptionsTest)
[pool-21-thread-1] Test testAs(org.jclouds.gogrid.compute.options.GoGridTemplateOptionsTest) succeeded: 0ms
Test suite progress: tests succeeded: 59, failed: 0, skipped: 0.
Starting test testBinding(org.jclouds.gogrid.binders.BindNamesToQueryParamsTest)
[pool-22-thread-1] Test testBinding(org.jclouds.gogrid.binders.BindNamesToQueryParamsTest) succeeded: 1ms
Test suite progress: tests succeeded: 60, failed: 0, skipped: 0.
Tests run: 60, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 3.09 sec

Results :

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

[INFO] 
[INFO] --- clojure-maven-plugin:1.3.3:test (test-clojure) @ gogrid ---

Testing user

Ran 0 tests containing 0 assertions.
0 failures, 0 errors.
[INFO] 
[INFO] --- maven-bundle-plugin:2.3.4:bundle (default-bundle) @ gogrid ---
[INFO] 
[INFO] --- maven-source-plugin:2.1.1:jar-no-fork (attach-sources) @ gogrid ---
[INFO] Building jar: /Users/adriancole/git/1.2.0/jclouds/providers/gogrid/target/gogrid-1.2.3-SNAPSHOT-sources.jar
[INFO] 
[INFO] --- maven-javadoc-plugin:2.8:jar (javadoc) @ gogrid ---
[INFO] Skipping javadoc generation
[INFO] 
[INFO] --- maven-jar-plugin:2.3.1:test-jar (default) @ gogrid ---
[INFO] Building jar: /Users/adriancole/git/1.2.0/jclouds/providers/gogrid/target/gogrid-1.2.3-SNAPSHOT-tests.jar
[INFO] 
[INFO] --- maven-surefire-plugin:2.5:test (integration) @ gogrid ---
[INFO] Surefire report directory: /Users/adriancole/git/1.2.0/jclouds/providers/gogrid/target/surefire-reports

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running TestSuite
Starting test testDefaultTemplateBuilder(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testDefaultTemplateBuilder(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 6280ms
Test suite progress: tests succeeded: 1, failed: 0, skipped: 0.
Starting test testCompareSizes(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
smallest [id=1, providerId=1, name=null, processors=[[cores=0.5, speed=1.0]], ram=512, volumes=[[id=null, type=LOCAL, size=25.0, device=null, durable=true, isBootDevice=true]], supportsImage=ALWAYS_TRUE, tags=[]]
fastest [id=6, providerId=6, name=null, processors=[[cores=16.0, speed=1.0]], ram=16384, volumes=[[id=null, type=LOCAL, size=800.0, device=null, durable=true, isBootDevice=true]], supportsImage=ALWAYS_TRUE, tags=[]]
biggest [id=6, providerId=6, name=null, processors=[[cores=16.0, speed=1.0]], ram=16384, volumes=[[id=null, type=LOCAL, size=800.0, device=null, durable=true, isBootDevice=true]], supportsImage=ALWAYS_TRUE, tags=[]]
[pool-2-thread-1] Test testCompareSizes(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 12ms
Test suite progress: tests succeeded: 2, failed: 0, skipped: 0.
Starting test testFromTemplate(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testFromTemplate(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 5ms
Test suite progress: tests succeeded: 3, failed: 0, skipped: 0.
Starting test testGetAssignableLocations(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
location [id=1, scope=ZONE, description=US West 1 Datacenter, parent=gogrid, iso3166Codes=[US-CA], metadata={}]
location [id=2, scope=ZONE, description=US East 1 Datacenter, parent=gogrid, iso3166Codes=[US-VA], metadata={}]
location [id=3, scope=ZONE, description=EU-West-1 Datacenter, parent=gogrid, iso3166Codes=[BR-SP], metadata={}]
[pool-2-thread-1] Test testGetAssignableLocations(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 4, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 5, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 6, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 7, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 8, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 3ms
Test suite progress: tests succeeded: 9, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 10, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 11, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 12, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 13, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 14, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 15, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 23ms
Test suite progress: tests succeeded: 16, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 5ms
Test suite progress: tests succeeded: 17, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 18, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 3ms
Test suite progress: tests succeeded: 19, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 20, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 21, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 22, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 23, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 24, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 25, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 26, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 27, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 28, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 29, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 30, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 31, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 3ms
Test suite progress: tests succeeded: 32, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 33, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 34, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanUseImageId(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanUseImageId(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 35, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 3ms
Test suite progress: tests succeeded: 36, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 37, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 38, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 39, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 40, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 41, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 42, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 43, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 44, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 45, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 46, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 47, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 3ms
Test suite progress: tests succeeded: 48, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 49, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 50, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 51, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 52, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 53, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 54, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 55, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 56, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 57, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 58, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 59, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 60, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 61, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 62, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 63, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 64, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 65, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 66, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 67, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 68, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 69, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 70, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 71, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 72, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 73, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 74, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 75, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 76, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 77, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 78, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 79, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 3ms
Test suite progress: tests succeeded: 80, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 81, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 82, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 83, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 84, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 85, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 86, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.gogrid.compute.GoGridTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 87, failed: 0, skipped: 0.
Starting test testListImages(org.jclouds.gogrid.services.GridImageClientLiveTest)
Dec 30, 2011 10:31:37 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 1057 is missing the createdon field
Dec 30, 2011 10:31:37 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 1057 is missing the createdon field
Dec 30, 2011 10:31:37 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 1058 is missing the createdon field
Dec 30, 2011 10:31:37 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 1058 is missing the updatedon field
Dec 30, 2011 10:31:38 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 1058 is missing the createdon field
Dec 30, 2011 10:31:38 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 1058 is missing the updatedon field
Dec 30, 2011 10:31:38 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 1059 is missing the createdon field
Dec 30, 2011 10:31:39 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 1059 is missing the createdon field
Dec 30, 2011 10:32:02 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 5489 is missing the createdon field
Dec 30, 2011 10:32:03 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 5489 is missing the createdon field
Dec 30, 2011 10:32:05 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 5823 is missing the createdon field
Dec 30, 2011 10:32:06 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 5823 is missing the createdon field
Dec 30, 2011 10:32:06 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 5824 is missing the createdon field
Dec 30, 2011 10:32:09 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 5824 is missing the createdon field
Dec 30, 2011 10:32:09 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 5825 is missing the createdon field
Dec 30, 2011 10:32:11 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 5825 is missing the createdon field
Dec 30, 2011 10:32:23 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 6675 is missing the createdon field
Dec 30, 2011 10:32:23 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 6675 is missing the createdon field
Dec 30, 2011 10:32:23 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 6676 is missing the createdon field
Dec 30, 2011 10:32:24 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 6676 is missing the createdon field
Dec 30, 2011 10:32:24 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 6677 is missing the createdon field
Dec 30, 2011 10:32:24 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 6677 is missing the createdon field
Dec 30, 2011 10:32:24 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 6678 is missing the createdon field
Dec 30, 2011 10:32:25 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 6678 is missing the createdon field
Dec 30, 2011 10:32:49 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 9928 is missing the createdon field
Dec 30, 2011 10:32:50 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 9928 is missing the createdon field
Dec 30, 2011 10:32:50 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 9929 is missing the createdon field
Dec 30, 2011 10:32:50 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 9929 is missing the createdon field
Dec 30, 2011 10:32:50 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 9930 is missing the createdon field
Dec 30, 2011 10:32:50 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 9930 is missing the createdon field
Dec 30, 2011 10:32:50 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 9931 is missing the createdon field
Dec 30, 2011 10:32:51 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 9931 is missing the createdon field
Dec 30, 2011 10:32:51 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 9932 is missing the createdon field
Dec 30, 2011 10:32:51 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 9932 is missing the createdon field
Dec 30, 2011 10:32:51 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 9933 is missing the createdon field
Dec 30, 2011 10:32:52 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 9933 is missing the createdon field
Dec 30, 2011 10:32:52 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 9934 is missing the createdon field
Dec 30, 2011 10:32:52 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 9934 is missing the createdon field
Dec 30, 2011 10:32:52 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 9935 is missing the createdon field
Dec 30, 2011 10:32:56 AM org.jclouds.gogrid.services.GridImageClientLiveTest checkImage
WARNING: image 9935 is missing the createdon field
[pool-2-thread-1] Test testListImages(org.jclouds.gogrid.services.GridImageClientLiveTest) succeeded: 94620ms
Test suite progress: tests succeeded: 88, failed: 0, skipped: 0.
Starting test setServiceDefaults(org.jclouds.gogrid.compute.GoGridComputeServiceLiveTest)
[pool-2-thread-1] Test setServiceDefaults(org.jclouds.gogrid.compute.GoGridComputeServiceLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 89, failed: 0, skipped: 0.
Starting test testCompareSizes(org.jclouds.gogrid.compute.GoGridComputeServiceLiveTest)
Dec 30, 2011 10:33:06 AM org.jclouds.compute.BaseComputeServiceLiveTest testCompareSizes
INFO: smallest [id=1, providerId=1, name=null, processors=[[cores=0.5, speed=1.0]], ram=512, volumes=[[id=null, type=LOCAL, size=25.0, device=null, durable=true, isBootDevice=true]], supportsImage=ALWAYS_TRUE, tags=[]]
Dec 30, 2011 10:33:06 AM org.jclouds.compute.BaseComputeServiceLiveTest testCompareSizes
INFO: fastest [id=6, providerId=6, name=null, processors=[[cores=16.0, speed=1.0]], ram=16384, volumes=[[id=null, type=LOCAL, size=800.0, device=null, durable=true, isBootDevice=true]], supportsImage=ALWAYS_TRUE, tags=[]]
Dec 30, 2011 10:33:06 AM org.jclouds.compute.BaseComputeServiceLiveTest testCompareSizes
INFO: biggest [id=6, providerId=6, name=null, processors=[[cores=16.0, speed=1.0]], ram=16384, volumes=[[id=null, type=LOCAL, size=800.0, device=null, durable=true, isBootDevice=true]], supportsImage=ALWAYS_TRUE, tags=[]]
[pool-2-thread-1] Test testCompareSizes(org.jclouds.gogrid.compute.GoGridComputeServiceLiveTest) succeeded: 7184ms
Test suite progress: tests succeeded: 90, failed: 0, skipped: 0.
Starting test testAScriptExecutionAfterBootWithBasicTemplate(org.jclouds.gogrid.compute.GoGridComputeServiceLiveTest)
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
<< problem applying options to node(274168): 
org.jclouds.rest.AuthorizationException: (root:password@204.51.240.180:22) (root:password@204.51.240.180:22) error acquiring SSHClient(timeout=60000): Exhausted available authentication methods
	at org.jclouds.sshj.SshjSshClient.propagate(SshjSshClient.java:413)
	at org.jclouds.sshj.SshjSshClient.acquire(SshjSshClient.java:244)
	at org.jclouds.sshj.SshjSshClient.connect(SshjSshClient.java:255)
	at org.jclouds.compute.callables.RunScriptOnNodeUsingSsh.call(RunScriptOnNodeUsingSsh.java:73)
	at org.jclouds.compute.strategy.RunScriptOnNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(RunScriptOnNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:69)
	at org.jclouds.compute.strategy.RunScriptOnNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(RunScriptOnNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:44)
	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:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:680)
Caused by: net.schmizz.sshj.userauth.UserAuthException: Exhausted available authentication methods
	at net.schmizz.sshj.userauth.UserAuthImpl.authenticate(UserAuthImpl.java:114)
	at net.schmizz.sshj.SSHClient.auth(SSHClient.java:204)
	at net.schmizz.sshj.SSHClient.auth(SSHClient.java:189)
	at net.schmizz.sshj.SSHClient.authPassword(SSHClient.java:265)
	at net.schmizz.sshj.SSHClient.authPassword(SSHClient.java:235)
	at net.schmizz.sshj.SSHClient.authPassword(SSHClient.java:219)
	at org.jclouds.sshj.SshjSshClient$1.create(SshjSshClient.java:195)
	at org.jclouds.sshj.SshjSshClient$1.create(SshjSshClient.java:171)
	at org.jclouds.sshj.SshjSshClient.acquire(SshjSshClient.java:220)
	... 9 more
Caused by: net.schmizz.sshj.userauth.UserAuthException: keyboard-interactive auth not allowed by server
	at net.schmizz.sshj.userauth.UserAuthImpl.authenticate(UserAuthImpl.java:81)
	... 17 more
[pool-2-thread-1] Test testAScriptExecutionAfterBootWithBasicTemplate(org.jclouds.gogrid.compute.GoGridComputeServiceLiveTest) succeeded: 462012ms
Test suite progress: tests succeeded: 91, failed: 0, skipped: 0.
Starting test testCorrectAuthException(org.jclouds.gogrid.compute.GoGridComputeServiceLiveTest)
[pool-2-thread-1] Test testCorrectAuthException(org.jclouds.gogrid.compute.GoGridComputeServiceLiveTest) succeeded: 334ms
Test suite progress: tests succeeded: 92, failed: 0, skipped: 0.
Starting test testCreateAndRunAService(org.jclouds.gogrid.compute.GoGridComputeServiceLiveTest)
Dec 30, 2011 10:45:21 AM org.jclouds.compute.BaseComputeServiceLiveTest testCreateAndRunAService
INFO: << available node(274169) os([name=Ubuntu 10.04 LTS (64-bit), family=ubuntu, version=10.04, arch=64 bit OS, is64Bit=true, description=Ubuntu 10.0.4 LTS Server (64-bit)]) in 271s
Dec 30, 2011 10:47:51 AM org.jclouds.compute.BaseComputeServiceLiveTest testCreateAndRunAService
INFO: << configured node(274169) with java full version "1.6.0_20-b20" in 141s
Dec 30, 2011 10:47:57 AM org.jclouds.compute.BaseComputeServiceLiveTest trackAvailabilityOfProcessOnNode
INFO: << initial start of jboss on node(274169) [backgroundProcessSeconds=3, socketOpenMilliseconds=4680, reportedStartupTimeMilliseconds=3636]
Dec 30, 2011 10:48:04 AM org.jclouds.compute.BaseComputeServiceLiveTest trackAvailabilityOfProcessOnNode
INFO: << warm start of jboss on node(274169) [backgroundProcessSeconds=2, socketOpenMilliseconds=3396, reportedStartupTimeMilliseconds=3213]
[pool-2-thread-1] Test testCreateAndRunAService(org.jclouds.gogrid.compute.GoGridComputeServiceLiveTest) succeeded: 468178ms
Test suite progress: tests succeeded: 93, failed: 0, skipped: 0.
Starting test testCreateTwoNodesWithRunScript(org.jclouds.gogrid.compute.GoGridComputeServiceLiveTest)
[pool-2-thread-1] Test testCreateTwoNodesWithRunScript(org.jclouds.gogrid.compute.GoGridComputeServiceLiveTest) succeeded: 369047ms
Test suite progress: tests succeeded: 94, failed: 0, skipped: 0.
Starting test testCreateAnotherNodeWithANewContextToEnsureSharedMemIsntRequired(org.jclouds.gogrid.compute.GoGridComputeServiceLiveTest)
Dec 30, 2011 10:54:46 AM org.jclouds.compute.BaseComputeServiceLiveTest testCreateAnotherNodeWithANewContextToEnsureSharedMemIsntRequired
INFO: creating another node based on existing nodes' location: [id=1, scope=ZONE, description=US West 1 Datacenter, parent=gogrid, iso3166Codes=[US-CA], metadata={}]
