test/unit/trust/controller/resource_test.rb in trust-0.7.0 vs test/unit/trust/controller/resource_test.rb in trust-0.8.0

- old
+ new

@@ -68,10 +68,25 @@ end should 'resolve parameter' do assert_equal 'cool', @res.params end + context 'collection' do + should 'return array where parent represented' do + parent = stub('parent', :object => 12) + @res.expects(:association_name).with(parent).returns(15) + assert_equal [12, 15], @res.collection(parent) + end + should 'return class where no parent' do + assert_equal NameSpacedResource::MyEntity, @res.collection(nil) + end + should 'return with instance if present' do + parent = stub('parent', :object => 12) + @res.expects(:association_name).never + assert_equal [12, 15], @res.collection(parent, 15) + end + end end context 'Irregular Instance' do setup do @res = Trust::Controller::Resource::ResourceInfo.new('name_spaced_resource/people', {:name_spaced_resource_person => 'cool' }) @@ -214,37 +229,37 @@ end context 'Plain' do setup do Trust::Controller::Resource.any_instance.expects(:extract_resource_info).with('child', {}).returns(@resource_info) Trust::Controller::Resource.any_instance.expects(:extract_parent_info).with({:parent => nil}, {}, @request).returns(@parent_info) - end - should 'instantiate properly' do @resource = Trust::Controller::Resource.new(@controller, @properties, 'new',{}, @request) end should 'discover variable names' do - @resource = Trust::Controller::Resource.new(@controller, @properties, 'new',{}, @request) @resource_info.expects(:plural_name).returns(:children) assert_equal :child, @resource.send(:instance_name) assert_equal :parent, @resource.send(:parent_name) assert_equal :children, @resource.send(:plural_instance_name) end should 'have access to instances' do - @resource = Trust::Controller::Resource.new(@controller, @properties, 'new',{}, @request) @resource.expects(:plural_instance_name).twice.returns(:children) @resource.instances = [1] assert_equal [1], @resource.instances assert_equal [1], @controller.instance_variable_get(:@children) end should 'have access to instantiated' do - @resource = Trust::Controller::Resource.new(@controller, @properties, 'new',{}, @request) @resource.expects(:instances).returns(1) assert_equal 1, @resource.instantiated @resource.expects(:instances).returns(nil) @resource.expects(:instance).returns(2) assert_equal 2, @resource.instantiated end + should 'provide collection' do + @resource_info.expects(:collection).with(@parent_info, nil).returns(1) + assert_equal 1, @resource.collection + @resource_info.expects(:collection).with(@parent_info, 2).returns(3) + assert_equal 3, @resource.collection(2) + end should 'load as expected' do - @resource = Trust::Controller::Resource.new(@controller, @properties, 'new',{}, @request) @resource_info.stubs(:params).returns({}) @controller.expects(:respond_to?).with(:build).returns(false) @resource.load assert_equal 6, @controller.instance_variable_get(:@parent) assert_equal 6, @resource.parent