[INFO] Scanning for projects...
[WARNING] 
[WARNING] Some problems were encountered while building the effective model for org.jclouds.provider:cloudloadbalancers-us:bundle:1.5.0-SNAPSHOT
[WARNING] 'parent.relativePath' of POM org.jclouds:jclouds-project:1.5.0-SNAPSHOT (/Users/adriancole/workspace/git/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.5.0-SNAPSHOT, /Users/adriancole/workspace/git/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 CloudLoadBalancers US provider 1.5.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- maven-clean-plugin:2.4.1:clean (default-clean) @ cloudloadbalancers-us ---
[INFO] Deleting /Users/adriancole/workspace/git/jclouds/providers/cloudloadbalancers-us/target
[INFO] 
[INFO] --- maven-enforcer-plugin:1.1:enforce (enforce-maven) @ cloudloadbalancers-us ---
[INFO] 
[INFO] --- maven-enforcer-plugin:1.1:enforce (enforce-banned-dependencies) @ cloudloadbalancers-us ---
[INFO] 
[INFO] --- maven-enforcer-plugin:1.1:enforce (enforce-java) @ cloudloadbalancers-us ---
[INFO] 
[INFO] --- maven-remote-resources-plugin:1.3:process (process-remote-resources) @ cloudloadbalancers-us ---
[INFO] 
[INFO] --- maven-resources-plugin:2.5:resources (default-resources) @ cloudloadbalancers-us ---
[debug] execute contextualize
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /Users/adriancole/workspace/git/jclouds/providers/cloudloadbalancers-us/src/main/clojure
[INFO] Copying 1 resource
[INFO] Copying 2 resources
[INFO] 
[INFO] --- maven-compiler-plugin:2.5:compile (default-compile) @ cloudloadbalancers-us ---
[INFO] Compiling 1 source file to /Users/adriancole/workspace/git/jclouds/providers/cloudloadbalancers-us/target/classes
[INFO] 
[INFO] --- maven-resources-plugin:2.5:testResources (default-testResources) @ cloudloadbalancers-us ---
[debug] execute contextualize
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /Users/adriancole/workspace/git/jclouds/providers/cloudloadbalancers-us/src/test/clojure
[INFO] skip non existing resourceDirectory /Users/adriancole/workspace/git/jclouds/providers/cloudloadbalancers-us/src/test/resources
[INFO] Copying 2 resources
[INFO] 
[INFO] --- maven-compiler-plugin:2.5:testCompile (default-testCompile) @ cloudloadbalancers-us ---
[INFO] Compiling 3 source files to /Users/adriancole/workspace/git/jclouds/providers/cloudloadbalancers-us/target/test-classes
[INFO] 
[INFO] --- maven-surefire-plugin:2.12:test (default-test) @ cloudloadbalancers-us ---
[INFO] Surefire report directory: /Users/adriancole/workspace/git/jclouds/providers/cloudloadbalancers-us/target/surefire-reports

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSProviderTest
Configuring TestNG with: org.apache.maven.surefire.testng.conf.TestNGMapConfigurator@4139eeda
Starting test testAllContains(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSProviderTest)
Starting test testOfApiContains(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSProviderTest)
Starting test testTransformableToContains(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSProviderTest)
Starting test testWithId(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSProviderTest)
[pool-2-thread-1] Test testAllContains(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSProviderTest) succeeded: 65ms
Test suite progress: tests succeeded: 1, failed: 0, skipped: 0.
[pool-2-thread-2] Test testOfApiContains(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSProviderTest) succeeded: 65ms
Test suite progress: tests succeeded: 2, failed: 0, skipped: 0.
[pool-2-thread-4] Test testWithId(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSProviderTest) succeeded: 59ms
Test suite progress: tests succeeded: 3, failed: 0, skipped: 0.
[pool-2-thread-3] Test testTransformableToContains(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSProviderTest) succeeded: 85ms
Test suite progress: tests succeeded: 4, failed: 0, skipped: 0.
Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.988 sec

Results :

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

[INFO] 
[INFO] --- maven-bundle-plugin:2.3.7:bundle (default-bundle) @ cloudloadbalancers-us ---
[INFO] 
[INFO] --- maven-jar-plugin:2.4:test-jar (default) @ cloudloadbalancers-us ---
[INFO] Building jar: /Users/adriancole/workspace/git/jclouds/providers/cloudloadbalancers-us/target/cloudloadbalancers-us-1.5.0-SNAPSHOT-tests.jar
[INFO] 
[INFO] --- maven-surefire-plugin:2.12:test (integration) @ cloudloadbalancers-us ---
[INFO] Surefire report directory: /Users/adriancole/workspace/git/jclouds/providers/cloudloadbalancers-us/target/surefire-reports

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running TestSuite
Configuring TestNG with: org.apache.maven.surefire.testng.conf.TestNGMapConfigurator@56406199
Starting test setupContext(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSLoadBalancerClientLiveTest)
[TestNG] Test setupContext(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSLoadBalancerClientLiveTest) failed.
Test suite progress: tests succeeded: 0, failed: 1, skipped: 0.
Starting test testCreateLoadBalancer(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSLoadBalancerClientLiveTest)
[TestNG] Test testCreateLoadBalancer(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSLoadBalancerClientLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 1, failed: 1, skipped: 0.
Starting test testCreateLoadBalancers(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSNodeClientLiveTest)
[TestNG] Test testCreateLoadBalancers(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSNodeClientLiveTest) failed.
Test suite progress: tests succeeded: 1, failed: 2, skipped: 0.
Starting test testUpdateLoadBalancer(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSLoadBalancerClientLiveTest)
[TestNG] Test testUpdateLoadBalancer(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSLoadBalancerClientLiveTest) succeeded: 11ms
Test suite progress: tests succeeded: 2, failed: 2, skipped: 0.
[TestNG] Test testAddNodes(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSNodeClientLiveTest) skipped.
Test suite progress: tests succeeded: 2, failed: 2, skipped: 1.
Starting test testListLoadBalancers(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSLoadBalancerClientLiveTest)
[TestNG] Test testListLoadBalancers(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSLoadBalancerClientLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 3, failed: 2, skipped: 1.
[TestNG] Test testModifyNode(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSNodeClientLiveTest) skipped.
Test suite progress: tests succeeded: 3, failed: 2, skipped: 2.
[TestNG] Test testListNodes(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSNodeClientLiveTest) skipped.
Test suite progress: tests succeeded: 3, failed: 2, skipped: 3.
Tests run: 8, Failures: 2, Errors: 0, Skipped: 3, Time elapsed: 10.791 sec <<< FAILURE!

Results :

Failed tests:   setupContext(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSLoadBalancerClientLiveTest): null: lists don't have the same size expected:<2> but was:<0>
  testCreateLoadBalancers(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSNodeClientLiveTest): Need to have some regions! expected:<true> but was:<false>

Tests run: 8, Failures: 2, Errors: 0, Skipped: 3

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 32.751s
[INFO] Finished at: Mon Sep 17 01:03:17 PDT 2012
[INFO] Final Memory: 17M/265M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.12:test (integration) on project cloudloadbalancers-us: There are test failures.
[ERROR] 
[ERROR] Please refer to /Users/adriancole/workspace/git/jclouds/providers/cloudloadbalancers-us/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
