diff options
Diffstat (limited to 'spec')
-rwxr-xr-x | spec/unit/interface_spec.rb | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/spec/unit/interface_spec.rb b/spec/unit/interface_spec.rb index 2365d5cac..e52b45d8a 100755 --- a/spec/unit/interface_spec.rb +++ b/spec/unit/interface_spec.rb @@ -162,11 +162,17 @@ describe Puppet::Interface do end describe "with inherited options" do - let :face do + let :parent do parent = Class.new(subject) parent.option("--inherited") + parent.action(:parent_action) do end + parent + end + + let :face do face = parent.new(:example, '0.2.1') face.option("--local") + face.action(:face_action) do end face end @@ -174,6 +180,22 @@ describe Puppet::Interface do it "should list inherited options" do face.options.should =~ [:inherited, :local] end + + it "should see all options on face actions" do + face.get_action(:face_action).options.should =~ [:inherited, :local] + end + + it "should see all options on inherited actions accessed on the subclass" do + face.get_action(:parent_action).options.should =~ [:inherited, :local] + end + + it "should not see subclass actions on the parent class" do + parent.options.should =~ [:inherited] + end + + it "should not see subclass actions on actions accessed on the parent class" do + parent.get_action(:parent_action).options.should =~ [:inherited] + end end describe "#get_option" do |