Sha256: ad51bd0289ea497da4a7db2510683583f55e6306a6c9d3fd202150f6b96a2c87
Contents?: true
Size: 1.77 KB
Versions: 2
Compression:
Stored size: 1.77 KB
Contents
require 'unit_test_helper' class RecordBaseModelTest < Test::Unit::TestCase include TestHelper class AppleModel < Xeroizer::Record::BaseModel set_api_controller_name 'AppleController' set_permissions :read, :write end class PearModel < Xeroizer::Record::BaseModel set_api_controller_name 'PearController' set_permissions :read end class OrangeModel < Xeroizer::Record::BaseModel set_permissions :read, :write, :update end def setup @client = Xeroizer::OAuth2Application.new(CLIENT_ID, CLIENT_SECRET) @apple_model = AppleModel.new(@client, 'Apple') @pear_model = PearModel.new(@client, 'Pear') @orange_model = OrangeModel.new(@client, 'Orange') end context "RecordModel.api_controller_name" do should "api_controller_name should default to pluralized model name" do assert_equal('Oranges', @orange_model.api_controller_name) end should "set_api_controller_name should set the base controller name used by Xero" do assert_equal('AppleController', @apple_model.api_controller_name) assert_equal('PearController', @pear_model.api_controller_name) end end context "model permssions" do should "save permissions correctly" do assert_equal(%w(read write), @apple_model.class.permissions.keys.map(&:to_s).sort) assert_equal(%w(read), @pear_model.class.permissions.keys.map(&:to_s).sort) assert_equal(%w(read update write), @orange_model.class.permissions.keys.map(&:to_s).sort) end end context "InvalidPermissionError" do should "also be catchable by the name 'InvaidPermissionError' for historical reasons" do assert_raise(Xeroizer::Record::BaseModel::InvaidPermissionError) do raise Xeroizer::Record::BaseModel::InvalidPermissionError end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
xeroizer-3.0.1 | test/unit/record/base_model_test.rb |
xeroizer-3.0.0 | test/unit/record/base_model_test.rb |