Sha256: 27eb37b9b79657e467afaa482a947f7830426959cc1ae2afa0c8625e532559a8
Contents?: true
Size: 1.99 KB
Versions: 2
Compression:
Stored size: 1.99 KB
Contents
require 'test_helper' module Vedeu module DSL describe Composition do let(:described) { Vedeu::DSL::Composition } let(:instance) { described.new(model) } let(:model) { Vedeu::Views::Composition.new } let(:client) {} describe '#initialize' do it { instance.must_be_instance_of(described) } it { instance.instance_variable_get('@model').must_equal(model) } it { instance.instance_variable_get('@client').must_equal(client) } end describe '#view' do subject { instance.view('dysprosium') do # ... end } it { subject.must_be_instance_of(Vedeu::Views::ViewCollection) } it { subject.first.must_be_instance_of(Vedeu::Views::View) } context 'when the block is not given' do it { proc { instance.view }.must_raise(Vedeu::InvalidSyntax) } end end describe '#template_for' do let(:_name) {} let(:filename) {} let(:object) {} let(:content) { "Hydrogen\nCarbon\nOxygen\nNitrogen" } let(:options) { {} } subject { instance.template_for(_name, filename, object, options) } context 'when the name of the view is not given' do let(:filename) { 'my_interface.erb' } it { proc { subject }.must_raise(Vedeu::MissingRequired) } end context 'when the filename of the template is not given' do let(:_name) { 'my_interface' } it { proc { subject }.must_raise(Vedeu::MissingRequired) } end context 'when the name and filename are given' do let(:_name) { 'my_interface' } let(:filename) { 'my_interface.erb' } before { Vedeu::Templating::ViewTemplate.expects(:parse). with(object, filename, options).returns(content) } it { subject.must_be_instance_of(Vedeu::Views::ViewCollection) } end end end # Composition end # DSL end # Vedeu
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
vedeu-0.5.6 | test/lib/vedeu/dsl/composition_test.rb |
vedeu-0.5.5 | test/lib/vedeu/dsl/composition_test.rb |