Sha256: 5a1c9d089b6b06edaa2281041f03eb68f2a39da583527d5014a56187307de4c2
Contents?: true
Size: 986 Bytes
Versions: 2
Compression:
Stored size: 986 Bytes
Contents
# frozen_string_literal: true require 'spec_helper' require 'fortnox/api/types' require 'fortnox/api/types/required' describe Fortnox::API::Types::Required, type: :type do before { stub_const('TestClass', Class.new(Dry::Struct)) } shared_examples_for 'required attribute' do |_type| subject { -> { TestClass.new({}) } } let(:error_message) do "[#{TestClass}.new] #{:required_attribute.inspect} is missing in Hash input" end it 'raises an error' do is_expected.to raise_error(Dry::Struct::Error, error_message) end end describe 'String' do before do class TestClass attribute :required_attribute, Fortnox::API::Types::Required::String end end include_examples 'required attribute', String end describe 'Float' do before do class TestClass attribute :required_attribute, Fortnox::API::Types::Required::Float end end include_examples 'required attribute', Float end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
fortnox-api-0.8.2 | spec/fortnox/api/types/required_spec.rb |
fortnox-api-0.8.1 | spec/fortnox/api/types/required_spec.rb |