You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@deltacloud.apache.org by ma...@redhat.com on 2012/04/03 14:28:59 UTC

[PATCH 2/3] Updates Openstack unit tests for new driver

From: marios <ma...@redhat.com>


Signed-off-by: marios <ma...@redhat.com>
---
 server/tests/drivers/openstack/api_test.rb         |    4 +-
 .../drivers/openstack/hardware_profiles_test.rb    |   20 ++++--
 server/tests/drivers/openstack/images_test.rb      |    5 +-
 server/tests/drivers/openstack/instances_test.rb   |   64 ++++++++++++++++----
 server/tests/drivers/openstack/realms_test.rb      |    9 +--
 server/tests/drivers/openstack/setup.rb            |    6 +-
 6 files changed, 77 insertions(+), 31 deletions(-)

diff --git a/server/tests/drivers/openstack/api_test.rb b/server/tests/drivers/openstack/api_test.rb
index 4ec0ac6..14861b0 100644
--- a/server/tests/drivers/openstack/api_test.rb
+++ b/server/tests/drivers/openstack/api_test.rb
@@ -31,10 +31,10 @@ module OpenstackTest
       collections.include?('instance_states').should == true
       collections.include?('instances').should == true
       collections.include?('images').should == true
-      collections.include?('buckets').should == true
+#      collections.include?('buckets').should == true # NOT YET IMPLEMENTED FOR V2 driver
       collections.include?('realms').should == true
       collections.include?('hardware_profiles').should == true
-      collections.length.should == 7
+      collections.length.should == 6 #7
     end
 
   end
diff --git a/server/tests/drivers/openstack/hardware_profiles_test.rb b/server/tests/drivers/openstack/hardware_profiles_test.rb
index ed0cd16..0744011 100644
--- a/server/tests/drivers/openstack/hardware_profiles_test.rb
+++ b/server/tests/drivers/openstack/hardware_profiles_test.rb
@@ -12,7 +12,7 @@ module OpenstackTest
 
     def test_01_it_returns_hardware_profiles
       get_auth_url '/api;driver=openstack/hardware_profiles'
-      (last_xml_response/'hardware_profiles/hardware_profile').length.should == 5
+      (last_xml_response/'hardware_profiles/hardware_profile').length.should > 0
     end
 
     def test_02_each_hardware_profile_has_a_name
@@ -32,21 +32,27 @@ module OpenstackTest
         (profile/'property[@name="storage"]').first[:unit].should == 'GB'
         (profile/'property[@name="storage"]').first[:kind].should == 'fixed'
       end
+      hwp = ((last_xml_response/'hardware_profiles/hardware_profile').first)
+      @@hwp = { :id => hwp[:id],
+                :arch => (hwp/'property[@name="architecture"]').first[:value],
+                :mem => (hwp/'property[@name="memory"]').first[:value],
+                :disk => (hwp/'property[@name="storage"]').first[:value] }
+      @@no_of_profiles = (last_xml_response/'hardware_profiles/hardware_profile').length
     end
 
     def test_04_it_returns_single_hardware_profile
-      get_auth_url '/api;driver=openstack/hardware_profiles/1'
-      (last_xml_response/'hardware_profile/name').first.text.should == '1'
-      (last_xml_response/'hardware_profile/property[@name="architecture"]').first[:value].should == 'x86_64'
-      (last_xml_response/'hardware_profile/property[@name="memory"]').first[:value].should == '512'
-      (last_xml_response/'hardware_profile/property[@name="storage"]').first[:value].should == '0'
+      get_auth_url "/api;driver=openstack/hardware_profiles/#{@@hwp[:id]}"
+      (last_xml_response/'hardware_profile/name').first.text.should == @@hwp[:id]
+      (last_xml_response/'hardware_profile/property[@name="architecture"]').first[:value].should == @@hwp[:arch]
+      (last_xml_response/'hardware_profile/property[@name="memory"]').first[:value].should == @@hwp[:mem]
+      (last_xml_response/'hardware_profile/property[@name="storage"]').first[:value].should == @@hwp[:disk]
     end
 
     def test_05_it_filter_hardware_profiles
       get_auth_url '/api;driver=openstack/hardware_profiles?architecture=i386'
       (last_xml_response/'hardware_profiles/hardware_profile').length.should == 0
       get_auth_url '/api;driver=openstack/hardware_profiles?architecture=x86_64'
-      (last_xml_response/'hardware_profiles/hardware_profile').length.should == 5
+      (last_xml_response/'hardware_profiles/hardware_profile').length.should == @@no_of_profiles
     end
 
   end
diff --git a/server/tests/drivers/openstack/images_test.rb b/server/tests/drivers/openstack/images_test.rb
index 8b16f93..9b71653 100644
--- a/server/tests/drivers/openstack/images_test.rb
+++ b/server/tests/drivers/openstack/images_test.rb
@@ -25,14 +25,15 @@ module OpenstackTest
         (image/'architecture').should_not == nil
         (image/'architecture').should_not == ''
         (image/'state').text.should == 'ACTIVE'
-        (image/'owner_id').text.should == ENV['API_USER']
+        ENV['API_USER'].include?((image/'owner_id').text).should == true
         (image/'actions/link').length.should == 1
         (image/'actions/link').first[:rel].should == 'create_instance'
       end
+      @@image_id = ((last_xml_response/'images/image').first)[:id]
     end
 
     def test_03_it_returns_single_image
-      get_auth_url '/api;driver=openstack/images/1'
+      get_auth_url "/api;driver=openstack/images/#{@@image_id}"
       (last_xml_response/'image').length.should == 1
     end
 
diff --git a/server/tests/drivers/openstack/instances_test.rb b/server/tests/drivers/openstack/instances_test.rb
index 8020092..c2e2b76 100644
--- a/server/tests/drivers/openstack/instances_test.rb
+++ b/server/tests/drivers/openstack/instances_test.rb
@@ -11,35 +11,43 @@ module OpenstackTest
     end
 
     def test_01_01_it_can_create_instance_without_hardware_profile
+      get_auth_url '/api;driver=openstack/images'
+      @@image_id = ((last_xml_response/'images/image').first)[:id]
       params = {
-        :image_id => '4',
+        :image_id => @@image_id,
         :'api[driver]' => 'openstack',
       }
-      post_url '/api/instances', params
+      uri = '/api/instances'
+      vcr_cassette = stable_vcr_cassette_name('post', uri, params)
+      post_url uri, params, {'vcr_cassette'=>vcr_cassette}
       last_response.status.should == 201 # Created
       @@instance = last_xml_response
       (@@instance/'instance').length.should > 0
       (@@instance/'instance/name').first.text.should_not == nil
       (@@instance/'instance/name').first.text.should_not == nil
       (@@instance/'instance/owner_id').first.text.should_not == ''
-      (@@instance/'instance/owner_id').first.text.should == ENV['API_USER']
+      ENV['API_USER'].include?((@@instance/'instance/owner_id').first.text).should == true
       (@@instance/'instance/state').first.text.should == 'PENDING'
     end
 
     def test_01_02_it_can_create_instance_with_hardware_profile
+      get_auth_url '/api;driver=openstack/hardware_profiles'
+      @@hwp_id = ((last_xml_response/'hardware_profiles/hardware_profile').first)[:id]
       params = {
-        :image_id => '4',
-        :hwp_id => '2',
+        :image_id => @@image_id,
+        :hwp_id => @@hwp_id,
         :'api[driver]' => 'openstack',
       }
-      post_url '/api/instances', params
+      uri = '/api/instances'
+      vcr_cassette = stable_vcr_cassette_name('post', uri, params)
+      post_url uri, params, {'vcr_cassette'=>vcr_cassette}
       last_response.status.should == 201 # Created
       @@instance2 = last_xml_response
       (@@instance2/'instance').length.should > 0
       (@@instance2/'instance/name').first.text.should_not == nil
       (@@instance2/'instance/name').first.text.should_not == nil
       (@@instance2/'instance/owner_id').first.text.should_not == ''
-      (@@instance2/'instance/owner_id').first.text.should == ENV['API_USER']
+      ENV['API_USER'].include?((@@instance2/'instance/owner_id').first.text).should == true
       (@@instance2/'instance/state').first.text.should == 'PENDING'
     end
 
@@ -58,6 +66,7 @@ module OpenstackTest
       (@@instance2/'instance/authentication/login/password').first.text.should_not == nil
       (@@instance2/'instance/authentication/login/password').first.text.should_not == ''
     end
+
 =begin
     TODO: Disabled since our testing setup doesn't return IP addresses yet ;-)
     def test_03_01_created_instance_has_correct_addresses
@@ -75,7 +84,7 @@ module OpenstackTest
 
     def test_03_02_created_instance_has_correct_hardware_profile
       (@@instance2/'instance/hardware_profile').length.should == 1
-      (@@instance2/'instance/hardware_profile').first[:id].should == "2"
+      (@@instance2/'instance/hardware_profile').first[:id].should == @@hwp_id
       (@@instance2/'instance/hardware_profile').first[:href].should_not == nil
     end
 
@@ -94,7 +103,6 @@ module OpenstackTest
       (last_xml_response/'instance/actions/link[@rel="reboot"]').first.should_not == nil
       (last_xml_response/'instance/actions/link[@rel="stop"]').first.should_not == nil
       (last_xml_response/'instance/actions/link[@rel="create_image"]').first.should_not == nil
-      (last_xml_response/'instance/actions/link[@rel="run"]').first.should_not == nil
     end
 
     def test_04_02_created_instance_goes_to_running_state
@@ -112,7 +120,6 @@ module OpenstackTest
       (last_xml_response/'instance/actions/link[@rel="reboot"]').first.should_not == nil
       (last_xml_response/'instance/actions/link[@rel="stop"]').first.should_not == nil
       (last_xml_response/'instance/actions/link[@rel="create_image"]').first.should_not == nil
-      (last_xml_response/'instance/actions/link[@rel="run"]').first.should_not == nil
     end
 
     def test_05_01_created_instance_can_be_rebooted
@@ -120,7 +127,7 @@ module OpenstackTest
         :'api[driver]' => 'openstack',
       }
       post_url "/api/instances/#{(@@instance/'instance').first[:id]}/reboot", params
-      last_response.status.should == 200
+      last_response.status.should == 202
       20.times do |tick|
         get_auth_url "/api;driver=openstack/instances/#{(@@instance/'instance').first[:id]}", { :tick => tick}
         last_response.status.should_not == 500
@@ -130,7 +137,31 @@ module OpenstackTest
       end
     end
 
+    def test_05_02_created_instance_can_be_rebooted
+      params = {
+        :'api[driver]' => 'openstack',
+      }
+      post_url "/api/instances/#{(@@instance2/'instance').first[:id]}/reboot", params
+      last_response.status.should == 202
+      20.times do |tick|
+        get_auth_url "/api;driver=openstack/instances/#{(@@instance2/'instance').first[:id]}", { :tick => tick}
+        last_response.status.should_not == 500
+        state = (last_xml_response/'instance/state').first.text
+        break if state=='RUNNING'
+        sleep(5)
+      end
+    end
+
     def test_06_01_created_instance_can_be_destroyed
+      #first make sure we recovered from the reboot
+      20.times do |tick|
+        get_auth_url "/api;driver=openstack/instances/#{(@@instance/'instance').first[:id]}", { :tick => tick}
+        last_response.status.should_not == 500
+        state = (last_xml_response/'instance/state').first.text
+        break if state=='RUNNING'
+        sleep(5)
+      end
+      #now destroy
       params = {
         :'api[driver]' => 'openstack',
       }
@@ -146,10 +177,19 @@ module OpenstackTest
     end
 
     def test_06_02_created_instance_can_be_destroyed
+      #first make sure we recovered from the reboot
+      20.times do |tick|
+        get_auth_url "/api;driver=openstack/instances/#{(@@instance2/'instance').first[:id]}", { :tick => tick}
+        last_response.status.should_not == 500
+        state = (last_xml_response/'instance/state').first.text
+        break if state=='RUNNING'
+        sleep(5)
+      end
+      #now destroy
       params = {
         :'api[driver]' => 'openstack',
       }
-      post_url "/api/instances/#{(@@instance2/'instance').first[:id]}/stop", params, authenticate
+      post_url "/api/instances/#{(@@instance2/'instance').first[:id]}/stop", params
       last_response.status.should == 200
       20.times do |tick|
         get_auth_url "/api;driver=openstack/instances/#{(@@instance2/'instance').first[:id]}", { :tick => tick}
diff --git a/server/tests/drivers/openstack/realms_test.rb b/server/tests/drivers/openstack/realms_test.rb
index 7929099..f62a6f9 100644
--- a/server/tests/drivers/openstack/realms_test.rb
+++ b/server/tests/drivers/openstack/realms_test.rb
@@ -12,7 +12,7 @@ module OpenstackTest
 
     def test_01_it_returns_realms
       get_auth_url '/api;driver=openstack/realms'
-      (last_xml_response/'realms/realm').length.should == 1
+      (last_xml_response/'realms/realm').length.should > 0
     end
 
     def test_02_each_realm_has_a_name
@@ -20,16 +20,15 @@ module OpenstackTest
       (last_xml_response/'realms/realm').each do |profile|
         (profile/'name').text.should_not == nil
         (profile/'name').text.should_not == ''
-        (profile/'name').text.should == 'United States'
+        (profile/'name').text.should == 'default'
       end
     end
 
     def test_03_it_returns_single_realm
       get_auth_url '/api;driver=openstack/realms/us'
-      (last_xml_response/'realm').first[:id].should == 'us'
-      (last_xml_response/'realm/name').first.text.should == 'United States'
+      (last_xml_response/'realm').first[:id].should == 'default'
+      (last_xml_response/'realm/name').first.text.should == 'default'
       (last_xml_response/'realm/state').first.text.should == 'AVAILABLE'
-      (last_xml_response/'realm/limit').first.text.should == ''
     end
 
   end
diff --git a/server/tests/drivers/openstack/setup.rb b/server/tests/drivers/openstack/setup.rb
index 3e3645a..b9e1ca0 100644
--- a/server/tests/drivers/openstack/setup.rb
+++ b/server/tests/drivers/openstack/setup.rb
@@ -1,8 +1,8 @@
 ENV.delete 'API_VERBOSE'
 ENV['API_DRIVER']   = "openstack"
-ENV['API_USER']     = 'mfojtik'
-ENV['API_PASSWORD'] = 'test'
-ENV['API_PROVIDER'] = 'http://mfojtik-2.brq.redhat.com:8774/auth/1.1'
+ENV['API_USER']     = 'foo@bar.com+foo@bar.com-default-tenant'
+ENV['API_PASSWORD'] = 'Not_a_real_password!1'
+ENV['API_PROVIDER'] = 'https://region-a.geo-1.identity.hpcloudsvc.com:35357/v2.0/'
 
 require 'vcr'
 DeltacloudTestCommon::record!
-- 
1.7.6.5


Re: [PATCH 2/3] Updates Openstack unit tests for new driver

Posted by Michal Fojtik <mi...@mifo.sk>.
ACK.


On Apr 3, 2012, at 2:28 PM, marios@redhat.com wrote:

> From: marios <ma...@redhat.com>
> 
> 
> Signed-off-by: marios <ma...@redhat.com>
> ---
> server/tests/drivers/openstack/api_test.rb         |    4 +-
> .../drivers/openstack/hardware_profiles_test.rb    |   20 ++++--
> server/tests/drivers/openstack/images_test.rb      |    5 +-
> server/tests/drivers/openstack/instances_test.rb   |   64 ++++++++++++++++----
> server/tests/drivers/openstack/realms_test.rb      |    9 +--
> server/tests/drivers/openstack/setup.rb            |    6 +-
> 6 files changed, 77 insertions(+), 31 deletions(-)
> 
> diff --git a/server/tests/drivers/openstack/api_test.rb b/server/tests/drivers/openstack/api_test.rb
> index 4ec0ac6..14861b0 100644
> --- a/server/tests/drivers/openstack/api_test.rb
> +++ b/server/tests/drivers/openstack/api_test.rb
> @@ -31,10 +31,10 @@ module OpenstackTest
>       collections.include?('instance_states').should == true
>       collections.include?('instances').should == true
>       collections.include?('images').should == true
> -      collections.include?('buckets').should == true
> +#      collections.include?('buckets').should == true # NOT YET IMPLEMENTED FOR V2 driver
>       collections.include?('realms').should == true
>       collections.include?('hardware_profiles').should == true
> -      collections.length.should == 7
> +      collections.length.should == 6 #7
>     end
> 
>   end
> diff --git a/server/tests/drivers/openstack/hardware_profiles_test.rb b/server/tests/drivers/openstack/hardware_profiles_test.rb
> index ed0cd16..0744011 100644
> --- a/server/tests/drivers/openstack/hardware_profiles_test.rb
> +++ b/server/tests/drivers/openstack/hardware_profiles_test.rb
> @@ -12,7 +12,7 @@ module OpenstackTest
> 
>     def test_01_it_returns_hardware_profiles
>       get_auth_url '/api;driver=openstack/hardware_profiles'
> -      (last_xml_response/'hardware_profiles/hardware_profile').length.should == 5
> +      (last_xml_response/'hardware_profiles/hardware_profile').length.should > 0
>     end
> 
>     def test_02_each_hardware_profile_has_a_name
> @@ -32,21 +32,27 @@ module OpenstackTest
>         (profile/'property[@name="storage"]').first[:unit].should == 'GB'
>         (profile/'property[@name="storage"]').first[:kind].should == 'fixed'
>       end
> +      hwp = ((last_xml_response/'hardware_profiles/hardware_profile').first)
> +      @@hwp = { :id => hwp[:id],
> +                :arch => (hwp/'property[@name="architecture"]').first[:value],
> +                :mem => (hwp/'property[@name="memory"]').first[:value],
> +                :disk => (hwp/'property[@name="storage"]').first[:value] }
> +      @@no_of_profiles = (last_xml_response/'hardware_profiles/hardware_profile').length
>     end
> 
>     def test_04_it_returns_single_hardware_profile
> -      get_auth_url '/api;driver=openstack/hardware_profiles/1'
> -      (last_xml_response/'hardware_profile/name').first.text.should == '1'
> -      (last_xml_response/'hardware_profile/property[@name="architecture"]').first[:value].should == 'x86_64'
> -      (last_xml_response/'hardware_profile/property[@name="memory"]').first[:value].should == '512'
> -      (last_xml_response/'hardware_profile/property[@name="storage"]').first[:value].should == '0'
> +      get_auth_url "/api;driver=openstack/hardware_profiles/#{@@hwp[:id]}"
> +      (last_xml_response/'hardware_profile/name').first.text.should == @@hwp[:id]
> +      (last_xml_response/'hardware_profile/property[@name="architecture"]').first[:value].should == @@hwp[:arch]
> +      (last_xml_response/'hardware_profile/property[@name="memory"]').first[:value].should == @@hwp[:mem]
> +      (last_xml_response/'hardware_profile/property[@name="storage"]').first[:value].should == @@hwp[:disk]
>     end
> 
>     def test_05_it_filter_hardware_profiles
>       get_auth_url '/api;driver=openstack/hardware_profiles?architecture=i386'
>       (last_xml_response/'hardware_profiles/hardware_profile').length.should == 0
>       get_auth_url '/api;driver=openstack/hardware_profiles?architecture=x86_64'
> -      (last_xml_response/'hardware_profiles/hardware_profile').length.should == 5
> +      (last_xml_response/'hardware_profiles/hardware_profile').length.should == @@no_of_profiles
>     end
> 
>   end
> diff --git a/server/tests/drivers/openstack/images_test.rb b/server/tests/drivers/openstack/images_test.rb
> index 8b16f93..9b71653 100644
> --- a/server/tests/drivers/openstack/images_test.rb
> +++ b/server/tests/drivers/openstack/images_test.rb
> @@ -25,14 +25,15 @@ module OpenstackTest
>         (image/'architecture').should_not == nil
>         (image/'architecture').should_not == ''
>         (image/'state').text.should == 'ACTIVE'
> -        (image/'owner_id').text.should == ENV['API_USER']
> +        ENV['API_USER'].include?((image/'owner_id').text).should == true
>         (image/'actions/link').length.should == 1
>         (image/'actions/link').first[:rel].should == 'create_instance'
>       end
> +      @@image_id = ((last_xml_response/'images/image').first)[:id]
>     end
> 
>     def test_03_it_returns_single_image
> -      get_auth_url '/api;driver=openstack/images/1'
> +      get_auth_url "/api;driver=openstack/images/#{@@image_id}"
>       (last_xml_response/'image').length.should == 1
>     end
> 
> diff --git a/server/tests/drivers/openstack/instances_test.rb b/server/tests/drivers/openstack/instances_test.rb
> index 8020092..c2e2b76 100644
> --- a/server/tests/drivers/openstack/instances_test.rb
> +++ b/server/tests/drivers/openstack/instances_test.rb
> @@ -11,35 +11,43 @@ module OpenstackTest
>     end
> 
>     def test_01_01_it_can_create_instance_without_hardware_profile
> +      get_auth_url '/api;driver=openstack/images'
> +      @@image_id = ((last_xml_response/'images/image').first)[:id]
>       params = {
> -        :image_id => '4',
> +        :image_id => @@image_id,
>         :'api[driver]' => 'openstack',
>       }
> -      post_url '/api/instances', params
> +      uri = '/api/instances'
> +      vcr_cassette = stable_vcr_cassette_name('post', uri, params)
> +      post_url uri, params, {'vcr_cassette'=>vcr_cassette}
>       last_response.status.should == 201 # Created
>       @@instance = last_xml_response
>       (@@instance/'instance').length.should > 0
>       (@@instance/'instance/name').first.text.should_not == nil
>       (@@instance/'instance/name').first.text.should_not == nil
>       (@@instance/'instance/owner_id').first.text.should_not == ''
> -      (@@instance/'instance/owner_id').first.text.should == ENV['API_USER']
> +      ENV['API_USER'].include?((@@instance/'instance/owner_id').first.text).should == true
>       (@@instance/'instance/state').first.text.should == 'PENDING'
>     end
> 
>     def test_01_02_it_can_create_instance_with_hardware_profile
> +      get_auth_url '/api;driver=openstack/hardware_profiles'
> +      @@hwp_id = ((last_xml_response/'hardware_profiles/hardware_profile').first)[:id]
>       params = {
> -        :image_id => '4',
> -        :hwp_id => '2',
> +        :image_id => @@image_id,
> +        :hwp_id => @@hwp_id,
>         :'api[driver]' => 'openstack',
>       }
> -      post_url '/api/instances', params
> +      uri = '/api/instances'
> +      vcr_cassette = stable_vcr_cassette_name('post', uri, params)
> +      post_url uri, params, {'vcr_cassette'=>vcr_cassette}
>       last_response.status.should == 201 # Created
>       @@instance2 = last_xml_response
>       (@@instance2/'instance').length.should > 0
>       (@@instance2/'instance/name').first.text.should_not == nil
>       (@@instance2/'instance/name').first.text.should_not == nil
>       (@@instance2/'instance/owner_id').first.text.should_not == ''
> -      (@@instance2/'instance/owner_id').first.text.should == ENV['API_USER']
> +      ENV['API_USER'].include?((@@instance2/'instance/owner_id').first.text).should == true
>       (@@instance2/'instance/state').first.text.should == 'PENDING'
>     end
> 
> @@ -58,6 +66,7 @@ module OpenstackTest
>       (@@instance2/'instance/authentication/login/password').first.text.should_not == nil
>       (@@instance2/'instance/authentication/login/password').first.text.should_not == ''
>     end
> +
> =begin
>     TODO: Disabled since our testing setup doesn't return IP addresses yet ;-)
>     def test_03_01_created_instance_has_correct_addresses
> @@ -75,7 +84,7 @@ module OpenstackTest
> 
>     def test_03_02_created_instance_has_correct_hardware_profile
>       (@@instance2/'instance/hardware_profile').length.should == 1
> -      (@@instance2/'instance/hardware_profile').first[:id].should == "2"
> +      (@@instance2/'instance/hardware_profile').first[:id].should == @@hwp_id
>       (@@instance2/'instance/hardware_profile').first[:href].should_not == nil
>     end
> 
> @@ -94,7 +103,6 @@ module OpenstackTest
>       (last_xml_response/'instance/actions/link[@rel="reboot"]').first.should_not == nil
>       (last_xml_response/'instance/actions/link[@rel="stop"]').first.should_not == nil
>       (last_xml_response/'instance/actions/link[@rel="create_image"]').first.should_not == nil
> -      (last_xml_response/'instance/actions/link[@rel="run"]').first.should_not == nil
>     end
> 
>     def test_04_02_created_instance_goes_to_running_state
> @@ -112,7 +120,6 @@ module OpenstackTest
>       (last_xml_response/'instance/actions/link[@rel="reboot"]').first.should_not == nil
>       (last_xml_response/'instance/actions/link[@rel="stop"]').first.should_not == nil
>       (last_xml_response/'instance/actions/link[@rel="create_image"]').first.should_not == nil
> -      (last_xml_response/'instance/actions/link[@rel="run"]').first.should_not == nil
>     end
> 
>     def test_05_01_created_instance_can_be_rebooted
> @@ -120,7 +127,7 @@ module OpenstackTest
>         :'api[driver]' => 'openstack',
>       }
>       post_url "/api/instances/#{(@@instance/'instance').first[:id]}/reboot", params
> -      last_response.status.should == 200
> +      last_response.status.should == 202
>       20.times do |tick|
>         get_auth_url "/api;driver=openstack/instances/#{(@@instance/'instance').first[:id]}", { :tick => tick}
>         last_response.status.should_not == 500
> @@ -130,7 +137,31 @@ module OpenstackTest
>       end
>     end
> 
> +    def test_05_02_created_instance_can_be_rebooted
> +      params = {
> +        :'api[driver]' => 'openstack',
> +      }
> +      post_url "/api/instances/#{(@@instance2/'instance').first[:id]}/reboot", params
> +      last_response.status.should == 202
> +      20.times do |tick|
> +        get_auth_url "/api;driver=openstack/instances/#{(@@instance2/'instance').first[:id]}", { :tick => tick}
> +        last_response.status.should_not == 500
> +        state = (last_xml_response/'instance/state').first.text
> +        break if state=='RUNNING'
> +        sleep(5)
> +      end
> +    end
> +
>     def test_06_01_created_instance_can_be_destroyed
> +      #first make sure we recovered from the reboot
> +      20.times do |tick|
> +        get_auth_url "/api;driver=openstack/instances/#{(@@instance/'instance').first[:id]}", { :tick => tick}
> +        last_response.status.should_not == 500
> +        state = (last_xml_response/'instance/state').first.text
> +        break if state=='RUNNING'
> +        sleep(5)
> +      end
> +      #now destroy
>       params = {
>         :'api[driver]' => 'openstack',
>       }
> @@ -146,10 +177,19 @@ module OpenstackTest
>     end
> 
>     def test_06_02_created_instance_can_be_destroyed
> +      #first make sure we recovered from the reboot
> +      20.times do |tick|
> +        get_auth_url "/api;driver=openstack/instances/#{(@@instance2/'instance').first[:id]}", { :tick => tick}
> +        last_response.status.should_not == 500
> +        state = (last_xml_response/'instance/state').first.text
> +        break if state=='RUNNING'
> +        sleep(5)
> +      end
> +      #now destroy
>       params = {
>         :'api[driver]' => 'openstack',
>       }
> -      post_url "/api/instances/#{(@@instance2/'instance').first[:id]}/stop", params, authenticate
> +      post_url "/api/instances/#{(@@instance2/'instance').first[:id]}/stop", params
>       last_response.status.should == 200
>       20.times do |tick|
>         get_auth_url "/api;driver=openstack/instances/#{(@@instance2/'instance').first[:id]}", { :tick => tick}
> diff --git a/server/tests/drivers/openstack/realms_test.rb b/server/tests/drivers/openstack/realms_test.rb
> index 7929099..f62a6f9 100644
> --- a/server/tests/drivers/openstack/realms_test.rb
> +++ b/server/tests/drivers/openstack/realms_test.rb
> @@ -12,7 +12,7 @@ module OpenstackTest
> 
>     def test_01_it_returns_realms
>       get_auth_url '/api;driver=openstack/realms'
> -      (last_xml_response/'realms/realm').length.should == 1
> +      (last_xml_response/'realms/realm').length.should > 0
>     end
> 
>     def test_02_each_realm_has_a_name
> @@ -20,16 +20,15 @@ module OpenstackTest
>       (last_xml_response/'realms/realm').each do |profile|
>         (profile/'name').text.should_not == nil
>         (profile/'name').text.should_not == ''
> -        (profile/'name').text.should == 'United States'
> +        (profile/'name').text.should == 'default'
>       end
>     end
> 
>     def test_03_it_returns_single_realm
>       get_auth_url '/api;driver=openstack/realms/us'
> -      (last_xml_response/'realm').first[:id].should == 'us'
> -      (last_xml_response/'realm/name').first.text.should == 'United States'
> +      (last_xml_response/'realm').first[:id].should == 'default'
> +      (last_xml_response/'realm/name').first.text.should == 'default'
>       (last_xml_response/'realm/state').first.text.should == 'AVAILABLE'
> -      (last_xml_response/'realm/limit').first.text.should == ''
>     end
> 
>   end
> diff --git a/server/tests/drivers/openstack/setup.rb b/server/tests/drivers/openstack/setup.rb
> index 3e3645a..b9e1ca0 100644
> --- a/server/tests/drivers/openstack/setup.rb
> +++ b/server/tests/drivers/openstack/setup.rb
> @@ -1,8 +1,8 @@
> ENV.delete 'API_VERBOSE'
> ENV['API_DRIVER']   = "openstack"
> -ENV['API_USER']     = 'mfojtik'
> -ENV['API_PASSWORD'] = 'test'
> -ENV['API_PROVIDER'] = 'http://mfojtik-2.brq.redhat.com:8774/auth/1.1'
> +ENV['API_USER']     = 'foo@bar.com+foo@bar.com-default-tenant'
> +ENV['API_PASSWORD'] = 'Not_a_real_password!1'
> +ENV['API_PROVIDER'] = 'https://region-a.geo-1.identity.hpcloudsvc.com:35357/v2.0/'
> 
> require 'vcr'
> DeltacloudTestCommon::record!
> -- 
> 1.7.6.5
>