From c8293ac75a7baa7d49359e9ad650370c327828a0 Mon Sep 17 00:00:00 2001 From: Peter Postma Date: Tue, 13 Aug 2024 11:05:09 +0200 Subject: [PATCH] Fix `Action#ticket` and add specs. --- lib/kentaa/api.rb | 1 + lib/kentaa/api/resources/action.rb | 2 +- spec/fixtures/responses/action.json | 7 +++++++ spec/kentaa/api/resources/action_spec.rb | 12 ++++++++---- 4 files changed, 17 insertions(+), 5 deletions(-) diff --git a/lib/kentaa/api.rb b/lib/kentaa/api.rb index 9d0131f..eb925f1 100644 --- a/lib/kentaa/api.rb +++ b/lib/kentaa/api.rb @@ -37,6 +37,7 @@ require_relative 'api/resources/site' require_relative 'api/resources/sites' require_relative 'api/resources/team' +require_relative 'api/resources/ticket' require_relative 'api/resources/theme' require_relative 'api/resources/user' require_relative 'api/resources/users' diff --git a/lib/kentaa/api/resources/action.rb b/lib/kentaa/api/resources/action.rb index 55f3406..1b75a94 100644 --- a/lib/kentaa/api/resources/action.rb +++ b/lib/kentaa/api/resources/action.rb @@ -165,7 +165,7 @@ def registration_fee end def ticket - @location ||= Kentaa::Api::Resources::Ticket.new(data[:ticket]) if data[:ticket] + @ticket ||= Kentaa::Api::Resources::Ticket.new(data[:ticket]) if data[:ticket] end def location diff --git a/spec/fixtures/responses/action.json b/spec/fixtures/responses/action.json index 4a85511..9d2423a 100644 --- a/spec/fixtures/responses/action.json +++ b/spec/fixtures/responses/action.json @@ -37,6 +37,13 @@ "amount": "25.0", "title": "Sign up fee" }, + "ticket": { + "id": 1, + "created_at": "2024-07-17T21:14:11Z", + "updated_at": "2024-07-17T21:14:11Z", + "ticket_number": "3OJHY9RU5D", + "ticket_url": "https://demo1.kentaa.nl/admin/acties/1/download-ticket.pdf" + }, "photos": [ { "id": 2, diff --git a/spec/kentaa/api/resources/action_spec.rb b/spec/kentaa/api/resources/action_spec.rb index 1ce7b58..039cedd 100644 --- a/spec/kentaa/api/resources/action_spec.rb +++ b/spec/kentaa/api/resources/action_spec.rb @@ -217,15 +217,19 @@ describe '#registration_fee' do it 'returns the related registration fee' do - expect(response.registration_fee).to be_a(Kentaa::Api::Resources::RegistrationFee) - expect(response.registration_fee.amount).to eq(BigDecimal('25.0')) - expect(response.registration_fee.title).to eq('Sign up fee') + registration_fee = response.registration_fee + expect(registration_fee).to be_a(Kentaa::Api::Resources::RegistrationFee) + expect(registration_fee.amount).to eq(BigDecimal('25.0')) + expect(registration_fee.title).to eq('Sign up fee') end end describe '#ticket' do it 'returns the related ticket' do - expect(response.ticket).to be_nil + ticket = response.ticket + expect(ticket).to be_a(Kentaa::Api::Resources::Ticket) + expect(ticket.ticket_number).to eq('3OJHY9RU5D') + expect(ticket.ticket_url).to eq('https://demo1.kentaa.nl/admin/acties/1/download-ticket.pdf') end end