From a6ff0515d3e70d0892610e2d8ecd7ff4c1fd3403 Mon Sep 17 00:00:00 2001 From: Brian Cain Date: Mon, 14 Nov 2016 09:49:23 -0800 Subject: [PATCH] Raise TokenError if none provided to Pooler.delete --- lib/vmfloaty.rb | 9 ++++++++- lib/vmfloaty/pooler.rb | 4 ++++ spec/vmfloaty/pooler_spec.rb | 4 ++++ 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/lib/vmfloaty.rb b/lib/vmfloaty.rb index 3c418c7..6ccd865 100644 --- a/lib/vmfloaty.rb +++ b/lib/vmfloaty.rb @@ -336,7 +336,14 @@ class Vmfloaty exit 1 else hosts = hostnames.split(',') - Pooler.delete(verbose, url, hosts, token) + begin + Pooler.delete(verbose, url, hosts, token) + rescue TokenError => e + STDERR.puts e + exit 1 + end + + puts "Schedulered vmpooler to delete vms #{hosts}." exit 0 end end diff --git a/lib/vmfloaty/pooler.rb b/lib/vmfloaty/pooler.rb index 9cca2f8..50820b0 100644 --- a/lib/vmfloaty/pooler.rb +++ b/lib/vmfloaty/pooler.rb @@ -94,6 +94,10 @@ class Pooler end def self.delete(verbose, url, hosts, token) + if token.nil? + raise TokenError, "Token provided was nil. Request cannot be made to delete vm" + end + conn = Http.get_conn(verbose, url) if token diff --git a/spec/vmfloaty/pooler_spec.rb b/spec/vmfloaty/pooler_spec.rb index c14d0ed..d3d994d 100644 --- a/spec/vmfloaty/pooler_spec.rb +++ b/spec/vmfloaty/pooler_spec.rb @@ -118,6 +118,10 @@ describe Pooler do expect(Pooler.delete(false, @vmpooler_url, ['fq6qlpjlsskycq6'], 'mytokenfile')).to eq @delete_response end + + it "raises a token error if no token provided" do + expect{ Pooler.delete(false, @vmpooler_url, ['myfakehost'], nil) }.to raise_error(TokenError) + end end describe "#status" do