Sha256: 78a7597da39ea082484cf97ad03a1fa6f7ccc7c4652c2ce299abeb87e44e4820

Contents?: true

Size: 1.49 KB

Versions: 12

Compression:

Stored size: 1.49 KB

Contents

require File.expand_path('../test_helper', __FILE__)

module Loquor
  class ResourceMockTest < Minitest::Test
    class Foobar < Resource
      extend ResourceMock
      self.attributes = {
        name: "Foobar"
      }
    end

    def test_should_be_able_to_set_allowed_attributes
      name = "Cat"
      foobar = Foobar.find(1)
      foobar.name = name
      assert_equal name, foobar.name
    end

    def test_should_not_be_able_to_set_arbitary_attributes
      foobar = Foobar.find(1)
      ex = assert_raises(NameError) do
        foobar.description = "Cat"
      end
      assert_equal "undefined local variable or method 'description=' for Loquor::ResourceMockTest::Foobar", ex.message
    end

    def test_should_return_sample_object
      foobar = Foobar.sample
      assert_equal "Foobar", foobar.name
    end

    def test_should_allow_sample_attributes_to_be_overriden
      name = "Cat"
      foobar = Foobar.sample(name: name)
      assert_equal name, foobar.name
    end

    def test_should_not_be_able_to_override_arbitary_attributes
      ex = assert_raises(NameError) do
        Foobar.sample(cat: "foobar")
      end
      assert_equal "undefined local variable or method 'cat' for Loquor::ResourceMockTest::Foobar", ex.message
    end

    def test_should_respond_to_create
      name = "foobar123"
      foobar = Foobar.create(name: name)
      assert_equal name, foobar.name
    end

    def test_should_respond_to_update
      assert_equal true, Foobar.update(1, name: "foobar")
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
loquor-1.9.0 test/resource_mock_test.rb
loquor-1.8.0 test/resource_mock_test.rb
loquor-1.7.0 test/resource_mock_test.rb
loquor-1.6.0 test/resource_mock_test.rb
loquor-1.5.0 test/resource_mock_test.rb
loquor-1.4.0 test/resource_mock_test.rb
loquor-1.3.0 test/resource_mock_test.rb
loquor-1.2.1 test/resource_mock_test.rb
loquor-1.2.0 test/resource_mock_test.rb
loquor-1.1.1 test/resource_mock_test.rb
loquor-1.1.0 test/resource_mock_test.rb
loquor-1.0.0 test/resource_mock_test.rb