summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRanjib Dey <ranjib@pagerduty.com>2015-06-13 00:21:45 -0700
committerRanjib Dey <ranjib@pagerduty.com>2015-06-13 00:24:12 -0700
commit9661b839d18d56168d010c9d6f6d01e404c81d0e (patch)
tree81358faf8768bfee2db1411c3bd4332cfeb835d3
parent0f642172350c9ce6297499d0619abdcd36921e9c (diff)
downloadchef-9661b839d18d56168d010c9d6f6d01e404c81d0e.tar.gz
add spec for eventhandler dsl
-rw-r--r--spec/unit/event_dispatch/dsl_spec.rb35
1 files changed, 35 insertions, 0 deletions
diff --git a/spec/unit/event_dispatch/dsl_spec.rb b/spec/unit/event_dispatch/dsl_spec.rb
new file mode 100644
index 0000000000..ba91dde2e7
--- /dev/null
+++ b/spec/unit/event_dispatch/dsl_spec.rb
@@ -0,0 +1,35 @@
+#
+# Author:: Ranjib Dey (<ranjib@linux.com>)
+#
+# Copyright:: Copyright (c) 2015 Ranjib Dey
+# License:: Apache License, Version 2.0
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+require 'spec_helper'
+require 'chef/event_dispatch/dsl'
+
+describe Chef::EventDispatch::DSL do
+ subject{ described_class.new }
+
+ it 'raise error when invalid event type is supplied' do
+ expect do
+ subject.on(:foo_bar) {}
+ end.to raise_error(Chef::Exceptions::UnknownEventType)
+ end
+
+ it 'register user hooks against valid event type' do
+ subject.on(:run_failed) {'testhook'}
+ expect(Chef::Config[:event_handlers].first.run_failed).to eq('testhook')
+ end
+end