summaryrefslogtreecommitdiffstats
path: root/spec
diff options
context:
space:
mode:
authorPaul Berry <paul@puppetlabs.com>2010-11-09 17:11:39 -0800
committerPaul Berry <paul@puppetlabs.com>2010-11-09 17:11:39 -0800
commit06fb622e293100b214ac0de4f9d09d06dcbdb36e (patch)
tree6f23167087541df48f804c8bbb375d66e8653ecd /spec
parentd4df9634b94e498bdd63089f2cd95d49d4baa7f1 (diff)
parentf007a9d5719cacf0538c9155cc90de86e69d65df (diff)
Merge branch 'ticket/next/4989' into next
Diffstat (limited to 'spec')
-rw-r--r--spec/unit/data/xendomains4
-rw-r--r--spec/unit/util/xendomains.rb23
2 files changed, 27 insertions, 0 deletions
diff --git a/spec/unit/data/xendomains b/spec/unit/data/xendomains
new file mode 100644
index 0000000..9b112bc
--- /dev/null
+++ b/spec/unit/data/xendomains
@@ -0,0 +1,4 @@
+Name ID Mem VCPUs State Time(s)
+Domain-0 0 656 4 r----- 48140.9
+web01 48 512 2 -b---- 97651.5
+mailserver 53 512 4 -b---- 7536.1
diff --git a/spec/unit/util/xendomains.rb b/spec/unit/util/xendomains.rb
new file mode 100644
index 0000000..a0fa345
--- /dev/null
+++ b/spec/unit/util/xendomains.rb
@@ -0,0 +1,23 @@
+#!/usr/bin/env ruby
+
+require File.dirname(__FILE__) + '/../../spec_helper'
+
+require 'facter/util/xendomains'
+
+describe Facter::Util::Xendomains do
+ describe ".get_domains" do
+ it "should return a list of running Xen Domains on Xen0" do
+ sample_output_file = File.dirname(__FILE__) + '/../data/xendomains'
+ xen0_domains = File.read(sample_output_file)
+ Facter::Util::Resolution.stubs(:exec).with('/usr/sbin/xm list').returns(xen0_domains)
+ Facter::Util::Xendomains.get_domains.should == %{web01,mailserver}
+ end
+
+ context "when xm list isn't executable" do
+ it "should be nil" do
+ Facter::Util::Resolution.stubs(:exec).with('/usr/sbin/xm list').returns(nil)
+ Facter::Util::Xendomains.get_domains.should == nil
+ end
+ end
+ end
+end