def volume_tests(connection, params, mocks_implemented = true) model_tests(connection.volumes, params[:volume_attributes], mocks_implemented) do if !Fog.mocking? || mocks_implemented @instance.wait_for { ready? } end @server = @instance.connection.servers.create(params[:server_attributes]) @server.wait_for { ready? } tests('attach').succeeds do @instance.attach(@server) end tests('detach').succeeds do @instance.detach end @server.destroy end end Shindo.tests("Fog::Compute[:cloudstack] | volume", :cloudstack) do config = compute_providers[:cloudstack] volume_tests(Fog::Compute[:cloudstack], config, config[:mocked]) do if Fog.mocking? && !mocks_implemented pending else responds_to(:ready?) responds_to(:flavor) end end end