test/base/test_rule_context.rb in nanoc-4.0.0b3 vs test/base/test_rule_context.rb in nanoc-4.0.0b4
- old
+ new
@@ -13,19 +13,28 @@
rep = mock
rep.stubs(:item).returns(item)
compiler = Nanoc::Int::Compiler.new(site)
# Create context
- @rule_context = Nanoc::Int::RuleContext.new(rep: rep, compiler: compiler)
+ executor = nil
+ rule_context = Nanoc::Int::RuleContext.new(rep: rep, executor: executor, compiler: compiler)
- # Check
- assert_equal rep, @rule_context.rep
- assert_equal item, @rule_context.item
- assert_equal site, @rule_context.site
- assert_equal config, @rule_context.config
- assert_equal layouts, @rule_context.layouts
- assert_equal items, @rule_context.items
+ # Check classes
+ assert_equal Nanoc::ItemRepView, rule_context.rep.class
+ assert_equal Nanoc::ItemView, rule_context.item.class
+ assert_equal Nanoc::SiteView, rule_context.site.class
+ assert_equal Nanoc::ConfigView, rule_context.config.class
+ assert_equal Nanoc::LayoutCollectionView, rule_context.layouts.class
+ assert_equal Nanoc::ItemCollectionView, rule_context.items.class
+
+ # Check content
+ assert_equal rep, rule_context.rep.unwrap
+ assert_equal item, rule_context.item.unwrap
+ assert_equal site, rule_context.site.unwrap
+ assert_equal config, rule_context.config.unwrap
+ assert_equal layouts, rule_context.layouts.unwrap
+ assert_equal items, rule_context.items.unwrap
end
def test_actions
# Mock everything
config = mock
@@ -39,21 +48,31 @@
item.stubs(:site).returns(site)
# Mock rep
rep = mock
rep.stubs(:item).returns(item)
- rep.expects(:filter).with(:foo, { bar: 'baz' })
- rep.expects(:layout).with('foo')
- rep.expects(:snapshot).with('awesome')
# Mock compiler
compiler = Nanoc::Int::Compiler.new(site)
# Create context
- @rule_context = Nanoc::Int::RuleContext.new(rep: rep, compiler: compiler)
+ executor = nil
+ rule_context = Nanoc::Int::RuleContext.new(rep: rep, executor: executor, compiler: compiler)
# Check
- rep.filter :foo, bar: 'baz'
- rep.layout 'foo'
- rep.snapshot 'awesome'
+ assert_raises(NoMethodError) do
+ rule_context.instance_eval do
+ item_rep.filter :foo, bar: 'baz'
+ end
+ end
+ assert_raises(NoMethodError) do
+ rule_context.instance_eval do
+ item_rep.layout 'foo'
+ end
+ end
+ assert_raises(NoMethodError) do
+ rule_context.instance_eval do
+ item_rep.snapshot 'awesome'
+ end
+ end
end
end