From cfca6798d7b86ce2af87aa7b973fd3eb1541cdfb Mon Sep 17 00:00:00 2001 From: Sean Handley Date: Mon, 16 Jul 2012 21:30:03 +0200 Subject: [PATCH] Need to wait for imaging to complete. --- tests/serverlove/requests/compute/image_tests.rb | 10 ++++++++++ tests/serverlove/requests/compute/server_tests.rb | 10 ++++++++++ 2 files changed, 20 insertions(+) diff --git a/tests/serverlove/requests/compute/image_tests.rb b/tests/serverlove/requests/compute/image_tests.rb index ce271094a..159ce1bbe 100644 --- a/tests/serverlove/requests/compute/image_tests.rb +++ b/tests/serverlove/requests/compute/image_tests.rb @@ -38,6 +38,16 @@ Shindo.tests('Fog::Compute[:serverlove] | drive requests', ['serverlove']) do Fog::Compute[:serverlove].images.get(@image['drive']).imaging != "" # This will be "x%" when imaging end + tests("waits for imaging...").returns(true) do + while(percent_complete = Fog::Compute[:serverlove].images.get(@image['drive']).imaging) + sleep(1) + STDERR.print "#{percent_complete} " + break if percent_complete.include?("100") + end + STDERR.print "100% " + true + end + tests("#destroy_image").succeeds do Fog::Compute[:serverlove].destroy_image(@image['drive']) end diff --git a/tests/serverlove/requests/compute/server_tests.rb b/tests/serverlove/requests/compute/server_tests.rb index a5a41130f..81f6bbd92 100644 --- a/tests/serverlove/requests/compute/server_tests.rb +++ b/tests/serverlove/requests/compute/server_tests.rb @@ -41,6 +41,16 @@ Shindo.tests('Fog::Compute[:serverlove] | server requests', ['serverlove']) do Fog::Compute[:serverlove].update_server(@server['server'], { 'ide:0:0' => @image['drive'], 'boot' => 'ide:0:0'}) end + tests("waits for imaging...").returns(true) do + while(percent_complete = Fog::Compute[:serverlove].images.get(@image['drive']).imaging) + sleep(1) + STDERR.print "#{percent_complete} " + break if percent_complete.include?("100") + end + STDERR.print "100% " + true + end + tests("#start_server").returns(true) do Fog::Compute[:serverlove].start_server(@server['server']) Fog::Compute[:serverlove].servers.get(@server['server']).status == "active"