bookingsync-api 0.1.3 → 0.1.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/bookingsync-api.gemspec +1 -0
- data/lib/bookingsync/api/client.rb +41 -24
- data/lib/bookingsync/api/client/payments.rb +1 -1
- data/lib/bookingsync/api/client/rentals.rb +2 -2
- data/lib/bookingsync/api/version.rb +1 -1
- data/spec/bookingsync/api/client/accounts_spec.rb +8 -2
- data/spec/bookingsync/api/client/amenities_spec.rb +8 -2
- data/spec/bookingsync/api/client/availabilities_spec.rb +8 -2
- data/spec/bookingsync/api/client/bathrooms_spec.rb +25 -12
- data/spec/bookingsync/api/client/bedrooms_spec.rb +24 -11
- data/spec/bookingsync/api/client/booking_comments_spec.rb +23 -10
- data/spec/bookingsync/api/client/bookings_fees_spec.rb +8 -2
- data/spec/bookingsync/api/client/bookings_payments_spec.rb +8 -2
- data/spec/bookingsync/api/client/bookings_spec.rb +36 -20
- data/spec/bookingsync/api/client/bookings_taxes_spec.rb +8 -2
- data/spec/bookingsync/api/client/change_overs_spec.rb +8 -2
- data/spec/bookingsync/api/client/clients_spec.rb +23 -13
- data/spec/bookingsync/api/client/destinations_spec.rb +8 -2
- data/spec/bookingsync/api/client/fees_spec.rb +8 -2
- data/spec/bookingsync/api/client/inquiries_spec.rb +13 -7
- data/spec/bookingsync/api/client/living_rooms_spec.rb +22 -9
- data/spec/bookingsync/api/client/nightly_rate_maps_spec.rb +15 -6
- data/spec/bookingsync/api/client/payment_gateways_spec.rb +8 -2
- data/spec/bookingsync/api/client/payments_spec.rb +34 -16
- data/spec/bookingsync/api/client/periods_spec.rb +29 -14
- data/spec/bookingsync/api/client/photos_spec.rb +23 -9
- data/spec/bookingsync/api/client/preferences_general_settings_spec.rb +11 -4
- data/spec/bookingsync/api/client/rates_rules_spec.rb +25 -12
- data/spec/bookingsync/api/client/rates_spec.rb +8 -2
- data/spec/bookingsync/api/client/rates_tables_spec.rb +23 -10
- data/spec/bookingsync/api/client/rental_agreements_spec.rb +18 -8
- data/spec/bookingsync/api/client/rental_cancelation_policies_spec.rb +8 -1
- data/spec/bookingsync/api/client/rental_cancelation_policy_items_spec.rb +8 -1
- data/spec/bookingsync/api/client/rentals_amenities_spec.rb +22 -9
- data/spec/bookingsync/api/client/rentals_fees_spec.rb +14 -5
- data/spec/bookingsync/api/client/rentals_spec.rb +53 -19
- data/spec/bookingsync/api/client/reviews_spec.rb +12 -6
- data/spec/bookingsync/api/client/seasons_spec.rb +30 -14
- data/spec/bookingsync/api/client/sources_spec.rb +17 -8
- data/spec/bookingsync/api/client/special_offers_spec.rb +30 -15
- data/spec/bookingsync/api/client/strict_bookings_spec.rb +10 -14
- data/spec/bookingsync/api/client/taxes_spec.rb +8 -2
- data/spec/bookingsync/api/client_spec.rb +23 -7
- data/spec/bookingsync/api/relation_spec.rb +1 -1
- data/spec/bookingsync/api/resource_spec.rb +8 -8
- data/spec/bookingsync/api/response_spec.rb +8 -8
- data/spec/fixtures/cassettes/BookingSync_API_Client_Accounts/_account/returns_a_single_account.yml +26 -18
- data/spec/fixtures/cassettes/BookingSync_API_Client_Accounts/_accounts/returns_accounts.yml +26 -18
- data/spec/fixtures/cassettes/BookingSync_API_Client_Amenities/_amenities/returns_amenities.yml +220 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_Amenities/_amenity/returns_amenity.yml +50 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_Availabilities/_availabilities/returns_availabilities.yml +37 -21
- data/spec/fixtures/cassettes/BookingSync_API_Client_Availabilities/_availability/returns_a_single_availability.yml +33 -25
- data/spec/fixtures/cassettes/BookingSync_API_Client_Bathrooms/_bathroom/returns_a_single_bathroom.yml +26 -18
- data/spec/fixtures/cassettes/BookingSync_API_Client_Bathrooms/_bathrooms/returns_bathrooms.yml +33 -22
- data/spec/fixtures/cassettes/BookingSync_API_Client_Bathrooms/_cancel_bathroom/cancels_given_bathroom.yml +21 -15
- data/spec/fixtures/cassettes/BookingSync_API_Client_Bathrooms/_create_bathroom/creates_a_new_bathroom.yml +30 -19
- data/spec/fixtures/cassettes/BookingSync_API_Client_Bathrooms/_edit_bathroom/updates_given_bathroom_by_ID.yml +26 -19
- data/spec/fixtures/cassettes/BookingSync_API_Client_Bedrooms/_bedroom/returns_a_single_bedroom.yml +26 -18
- data/spec/fixtures/cassettes/BookingSync_API_Client_Bedrooms/_bedrooms/returns_bedrooms.yml +32 -24
- data/spec/fixtures/cassettes/BookingSync_API_Client_Bedrooms/_cancel_bedroom/cancels_given_bedroom.yml +21 -15
- data/spec/fixtures/cassettes/BookingSync_API_Client_Bedrooms/_create_bedroom/creates_a_new_bedroom.yml +29 -18
- data/spec/fixtures/cassettes/BookingSync_API_Client_Bedrooms/_edit_bedroom/updates_given_bedroom_by_ID.yml +25 -19
- data/spec/fixtures/cassettes/BookingSync_API_Client_BookingComments/_booking_comment/returns_single_booking_comment.yml +42 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_BookingComments/_booking_comments/returns_booking_comments.yml +45 -33
- data/spec/fixtures/cassettes/BookingSync_API_Client_BookingComments/_create_booking_comment/creates_booking_comment.yml +43 -24
- data/spec/fixtures/cassettes/BookingSync_API_Client_BookingComments/_create_booking_comment/returns_newly_created_booking_comment.yml +43 -24
- data/spec/fixtures/cassettes/BookingSync_API_Client_BookingComments/_delete_booking_comment/deletes_given_booking_comment.yml +29 -17
- data/spec/fixtures/cassettes/BookingSync_API_Client_BookingComments/_edit_booking_comment/returns_updated_booking_comment.yml +36 -22
- data/spec/fixtures/cassettes/BookingSync_API_Client_BookingComments/_edit_booking_comment/updates_booking_comment.yml +36 -22
- data/spec/fixtures/cassettes/BookingSync_API_Client_Bookings/_booking/returns_a_single_booking.yml +44 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_Bookings/_booking/returns_a_single_canceled_booking.yml +30 -23
- data/spec/fixtures/cassettes/BookingSync_API_Client_Bookings/_bookings/pagination/with_a_block/yields_block_with_batch_of_bookings.yml +100 -115
- data/spec/fixtures/cassettes/BookingSync_API_Client_Bookings/_bookings/pagination/with_auto_paginate_true/returns_all_bookings_joined_from_many_requests.yml +100 -115
- data/spec/fixtures/cassettes/BookingSync_API_Client_Bookings/_bookings/pagination/with_per_page_setting/returns_limited_number_of_bookings.yml +52 -28
- data/spec/fixtures/cassettes/BookingSync_API_Client_Bookings/_bookings/returns_bookings.yml +57 -25
- data/spec/fixtures/cassettes/BookingSync_API_Client_Bookings/_cancel_booking/cancels_given_booking.yml +36 -20
- data/spec/fixtures/cassettes/BookingSync_API_Client_Bookings/_create_booking/creates_a_booking.yml +49 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_Bookings/_edit_booking/updates_given_booking_by_ID.yml +44 -24
- data/spec/fixtures/cassettes/BookingSync_API_Client_BookingsFees/_bookings_fee/returns_a_single_bookings_fee.yml +26 -18
- data/spec/fixtures/cassettes/BookingSync_API_Client_BookingsFees/_bookings_fees/returns_bookings_fees.yml +27 -19
- data/spec/fixtures/cassettes/BookingSync_API_Client_BookingsPayments/_bookings_payment/returns_a_single_bookings_payment.yml +26 -18
- data/spec/fixtures/cassettes/BookingSync_API_Client_BookingsPayments/_bookings_payments/returns_bookings_payments.yml +51 -28
- data/spec/fixtures/cassettes/BookingSync_API_Client_BookingsTaxes/_bookings_tax/returns_a_single_bookings_tax.yml +26 -18
- data/spec/fixtures/cassettes/BookingSync_API_Client_BookingsTaxes/_bookings_taxes/returns_bookings_taxes.yml +28 -20
- data/spec/fixtures/cassettes/BookingSync_API_Client_ChangeOvers/_change_over/returns_a_single_change_over.yml +44 -38
- data/spec/fixtures/cassettes/BookingSync_API_Client_ChangeOvers/_change_overs/returns_change_overs.yml +43 -37
- data/spec/fixtures/cassettes/BookingSync_API_Client_Clients/_client/returns_a_single_client.yml +27 -19
- data/spec/fixtures/cassettes/BookingSync_API_Client_Clients/_clients/returns_clients.yml +32 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_Clients/_create_client/creates_a_new_client.yml +30 -19
- data/spec/fixtures/cassettes/BookingSync_API_Client_Clients/_edit_client/updates_given_client_by_ID.yml +25 -19
- data/spec/fixtures/cassettes/BookingSync_API_Client_Destinations/_destination/returns_a_single_destination.yml +29 -24
- data/spec/fixtures/cassettes/BookingSync_API_Client_Destinations/_destinations/returns_destinations.yml +59 -25
- data/spec/fixtures/cassettes/BookingSync_API_Client_Fees/_create_fee/creates_a_new_fee.yml +25 -18
- data/spec/fixtures/cassettes/BookingSync_API_Client_Fees/_fee/returns_a_single_fee.yml +26 -18
- data/spec/fixtures/cassettes/BookingSync_API_Client_Fees/_fees/returns_fees.yml +31 -19
- data/spec/fixtures/cassettes/BookingSync_API_Client_Inquiries/_create_inquiry/creates_a_new_inquiry.yml +50 -27
- data/spec/fixtures/cassettes/BookingSync_API_Client_Inquiries/_inquiries/returns_inquiries.yml +50 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_Inquiries/_inquiry/returns_a_single_inquiry.yml +29 -21
- data/spec/fixtures/cassettes/BookingSync_API_Client_LivingRooms/_cancel_living_room/cancels_given_living_room.yml +35 -31
- data/spec/fixtures/cassettes/BookingSync_API_Client_LivingRooms/_create_living_room/creates_a_new_living_room.yml +41 -37
- data/spec/fixtures/cassettes/BookingSync_API_Client_LivingRooms/_edit_living_room/updates_given_living_room_by_ID.yml +38 -34
- data/spec/fixtures/cassettes/BookingSync_API_Client_LivingRooms/_living_room/returns_a_single_living_room.yml +44 -40
- data/spec/fixtures/cassettes/BookingSync_API_Client_LivingRooms/_living_rooms/returns_living_rooms.yml +43 -39
- data/spec/fixtures/cassettes/BookingSync_API_Client_NightlyRateMaps/_edit_nightly_rate_map/updates_given_nightly_rate_map_by_ID.yml +39 -33
- data/spec/fixtures/cassettes/BookingSync_API_Client_NightlyRateMaps/_nightly_rate_map/returns_a_single_nightly_rate_map.yml +44 -38
- data/spec/fixtures/cassettes/BookingSync_API_Client_NightlyRateMaps/_nightly_rate_maps/returns_nightly_rate_maps.yml +44 -38
- data/spec/fixtures/cassettes/BookingSync_API_Client_PaymentGateways/_payment_gateway/returns_a_single_payment_gateway.yml +38 -24
- data/spec/fixtures/cassettes/BookingSync_API_Client_PaymentGateways/_payment_gateways/returns_payment_gateways.yml +37 -23
- data/spec/fixtures/cassettes/BookingSync_API_Client_Payments/_cancel_payment/cancels_given_payment.yml +36 -20
- data/spec/fixtures/cassettes/BookingSync_API_Client_Payments/_create_payment/creates_a_new_payment.yml +50 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_Payments/_edit_payment/updates_given_payment_by_ID.yml +44 -25
- data/spec/fixtures/cassettes/BookingSync_API_Client_Payments/_payment/returns_a_single_payment.yml +26 -18
- data/spec/fixtures/cassettes/BookingSync_API_Client_Payments/_payments/returns_payments.yml +55 -27
- data/spec/fixtures/cassettes/BookingSync_API_Client_Periods/_create_period/creates_a_new_period.yml +49 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_Periods/_delete_period/deletes_given_period.yml +35 -19
- data/spec/fixtures/cassettes/BookingSync_API_Client_Periods/_edit_period/updates_given_period_by_ID.yml +43 -25
- data/spec/fixtures/cassettes/BookingSync_API_Client_Periods/_period/returns_a_single_period.yml +28 -20
- data/spec/fixtures/cassettes/BookingSync_API_Client_Periods/_periods/returns_periods.yml +49 -25
- data/spec/fixtures/cassettes/BookingSync_API_Client_Photos/_create_photo/creates_a_photo.yml +47 -24
- data/spec/fixtures/cassettes/BookingSync_API_Client_Photos/_create_photo/creates_a_photo_with_encoded_photo_file.yml +47 -24
- data/spec/fixtures/cassettes/BookingSync_API_Client_Photos/_create_photo/creates_a_photo_with_photo_path.yml +47 -24
- data/spec/fixtures/cassettes/BookingSync_API_Client_Photos/_create_photo/creates_a_photo_with_remote_URL.yml +47 -24
- data/spec/fixtures/cassettes/BookingSync_API_Client_Photos/_delete_photo/delete_given_photo.yml +37 -21
- data/spec/fixtures/cassettes/BookingSync_API_Client_Photos/_edit_photo/updates_photo_s_description.yml +42 -23
- data/spec/fixtures/cassettes/BookingSync_API_Client_Photos/_edit_photo/updates_photo_s_image_file.yml +42 -23
- data/spec/fixtures/cassettes/BookingSync_API_Client_Photos/_photo/returns_a_single_photo.yml +28 -20
- data/spec/fixtures/cassettes/BookingSync_API_Client_Photos/_photos/returns_photos.yml +38 -22
- data/spec/fixtures/cassettes/BookingSync_API_Client_PreferencesGeneralSettings/_edit_preferences_general_setting/updates_given_preferences_general_setting_by_ID.yml +39 -34
- data/spec/fixtures/cassettes/BookingSync_API_Client_PreferencesGeneralSettings/_preferences_general_settings/returns_preferences_general_settings.yml +50 -42
- data/spec/fixtures/cassettes/BookingSync_API_Client_Rates/_rate/returns_a_single_rate.yml +28 -20
- data/spec/fixtures/cassettes/BookingSync_API_Client_Rates/_rates/returns_rates.yml +48 -24
- data/spec/fixtures/cassettes/BookingSync_API_Client_RatesRules/_create_rates_rule/creates_a_new_rates_rule.yml +29 -18
- data/spec/fixtures/cassettes/BookingSync_API_Client_RatesRules/_delete_rates_rule/deletes_given_rates_rule.yml +21 -15
- data/spec/fixtures/cassettes/BookingSync_API_Client_RatesRules/_edit_rates_rule/updates_given_rates_rule_by_ID.yml +24 -18
- data/spec/fixtures/cassettes/BookingSync_API_Client_RatesRules/_rates_rule/returns_a_single_rates_rule.yml +26 -18
- data/spec/fixtures/cassettes/BookingSync_API_Client_RatesRules/_rates_rules/returns_rates_rules.yml +27 -19
- data/spec/fixtures/cassettes/BookingSync_API_Client_RatesTables/_create_rates_table/creates_a_new_rates_table.yml +49 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_RatesTables/_delete_rates_table/deletes_given_rates_table.yml +36 -20
- data/spec/fixtures/cassettes/BookingSync_API_Client_RatesTables/_edit_rates_table/updates_given_rates_table_by_ID.yml +43 -25
- data/spec/fixtures/cassettes/BookingSync_API_Client_RatesTables/_rates_table/returns_a_single_rates_table.yml +26 -18
- data/spec/fixtures/cassettes/BookingSync_API_Client_RatesTables/_rates_tables/returns_rates_tables.yml +54 -36
- data/spec/fixtures/cassettes/BookingSync_API_Client_RentalAgreements/_create_rental_agreement/creates_a_new_rental_agreement.yml +50 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_RentalAgreements/_create_rental_agreement_for_booking/creates_a_new_rental_agreement.yml +50 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_RentalAgreements/_create_rental_agreement_for_rental/creates_a_new_rental_agreement.yml +50 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_RentalAgreements/_rental_agreement/returns_a_single_rental_agreement.yml +30 -21
- data/spec/fixtures/cassettes/BookingSync_API_Client_RentalAgreements/_rental_agreements/returns_rental_agreements.yml +52 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_RentalCancelationPolicies/_rental_cancelation_policies/returns_rental_cancelation_policies.yml +48 -27
- data/spec/fixtures/cassettes/BookingSync_API_Client_RentalCancelationPolicies/_rental_cancelation_policy/returns_a_single_rental_cancelation_policy.yml +42 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_RentalCancelationPolicyItems/_rental_cancelation_policy_item/returns_a_single_rental_cancelation_policy_item.yml +41 -25
- data/spec/fixtures/cassettes/BookingSync_API_Client_RentalCancelationPolicyItems/_rental_cancelation_policy_items/returns_rental_cancelation_policy_items.yml +43 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_Rentals/_create_rental/creates_a_new_rental.yml +49 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_Rentals/_delete_rental/deletes_given_rental.yml +36 -20
- data/spec/fixtures/cassettes/BookingSync_API_Client_Rentals/_edit_rental/updates_given_rental_by_ID.yml +44 -28
- data/spec/fixtures/cassettes/BookingSync_API_Client_Rentals/_rental/returns_a_single_rental.yml +234 -31
- data/spec/fixtures/cassettes/BookingSync_API_Client_Rentals/_rental/with_additional_query_params/returns_a_single_rental_with_defined_params.yml +322 -0
- data/spec/fixtures/cassettes/BookingSync_API_Client_Rentals/_rentals/links/returns_associated_photos.yml +453 -77
- data/spec/fixtures/cassettes/BookingSync_API_Client_Rentals/_rentals/returns_rentals.yml +405 -54
- data/spec/fixtures/cassettes/BookingSync_API_Client_Rentals/_rentals/returns_rentals_by_ids.yml +336 -32
- data/spec/fixtures/cassettes/BookingSync_API_Client_Rentals/_rentals_meta/returns_meta_information_about_all_rentals.yml +53 -25
- data/spec/fixtures/cassettes/BookingSync_API_Client_Rentals/_rentals_meta/returns_meta_information_about_requested_rentals.yml +55 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_Rentals/_rentals_search/performs_autopagination_using_POST.yml +121 -81
- data/spec/fixtures/cassettes/BookingSync_API_Client_Rentals/_rentals_search/rentals_ids_given/makes_a_search_within_given_rentals.yml +42 -28
- data/spec/fixtures/cassettes/BookingSync_API_Client_Rentals/_rentals_search/returns_rentals.yml +42 -28
- data/spec/fixtures/cassettes/BookingSync_API_Client_RentalsAmenities/_create_rentals_amenity/creates_a_new_rentals_amenity.yml +29 -18
- data/spec/fixtures/cassettes/BookingSync_API_Client_RentalsAmenities/_delete_rentals_amenity/deletes_given_rentals_amenity.yml +21 -15
- data/spec/fixtures/cassettes/BookingSync_API_Client_RentalsAmenities/_edit_rentals_amenity/updates_given_rentals_amenity_by_ID.yml +24 -18
- data/spec/fixtures/cassettes/BookingSync_API_Client_RentalsAmenities/_rentals_amenities/links/returns_associated_amenity.yml +104 -52
- data/spec/fixtures/cassettes/BookingSync_API_Client_RentalsAmenities/_rentals_amenities/links/returns_associated_rental.yml +283 -53
- data/spec/fixtures/cassettes/BookingSync_API_Client_RentalsAmenities/_rentals_amenities/returns_rentals_amenities.yml +51 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_RentalsAmenities/_rentals_amenity/returns_rentals_amenity.yml +50 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_RentalsFees/_create_rentals_fee/creates_a_new_rentals_fee.yml +30 -19
- data/spec/fixtures/cassettes/BookingSync_API_Client_RentalsFees/_rentals_fee/returns_a_single_rentals_fee.yml +30 -22
- data/spec/fixtures/cassettes/BookingSync_API_Client_RentalsFees/_rentals_fees/returns_rentals_fees.yml +27 -18
- data/spec/fixtures/cassettes/BookingSync_API_Client_Reviews/_create_review/creates_a_new_review.yml +49 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_Reviews/_review/returns_a_single_review.yml +26 -18
- data/spec/fixtures/cassettes/BookingSync_API_Client_Reviews/_reviews/returns_reviews.yml +41 -33
- data/spec/fixtures/cassettes/BookingSync_API_Client_Seasons/_create_season/creates_a_new_season.yml +50 -27
- data/spec/fixtures/cassettes/BookingSync_API_Client_Seasons/_delete_season/deletes_given_season.yml +36 -20
- data/spec/fixtures/cassettes/BookingSync_API_Client_Seasons/_edit_season/updates_given_season_by_ID.yml +44 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_Seasons/_season/returns_a_single_season.yml +29 -21
- data/spec/fixtures/cassettes/BookingSync_API_Client_Seasons/_seasons/returns_seasons.yml +55 -36
- data/spec/fixtures/cassettes/BookingSync_API_Client_Sources/_create_source/creates_a_new_source.yml +40 -25
- data/spec/fixtures/cassettes/BookingSync_API_Client_Sources/_edit_source/updates_given_source_by_ID.yml +36 -25
- data/spec/fixtures/cassettes/BookingSync_API_Client_Sources/_source/returns_a_single_source.yml +26 -18
- data/spec/fixtures/cassettes/BookingSync_API_Client_Sources/_sources/returns_sources.yml +42 -24
- data/spec/fixtures/cassettes/BookingSync_API_Client_SpecialOffers/_create_special_offer/creates_a_new_special_offer.yml +50 -26
- data/spec/fixtures/cassettes/BookingSync_API_Client_SpecialOffers/_delete_special_offer/deletes_given_special_offer.yml +36 -20
- data/spec/fixtures/cassettes/BookingSync_API_Client_SpecialOffers/_edit_special_offer/updates_given_special_offer_by_ID.yml +44 -25
- data/spec/fixtures/cassettes/BookingSync_API_Client_SpecialOffers/_special_offer/returns_a_single_special_offer.yml +29 -22
- data/spec/fixtures/cassettes/BookingSync_API_Client_SpecialOffers/_special_offers/returns_special_offers.yml +48 -24
- data/spec/fixtures/cassettes/BookingSync_API_Client_StrictBookings/_create_strict_booking/creates_a_booking.yml +43 -24
- data/spec/fixtures/cassettes/BookingSync_API_Client_Taxes/_tax/returns_a_single_tax.yml +26 -18
- data/spec/fixtures/cassettes/BookingSync_API_Client_Taxes/_taxes/returns_taxes.yml +28 -19
- data/spec/spec_helper.rb +6 -0
- data/spec/support/vcr_helper.rb +29 -0
- metadata +21 -10
- data/lib/bookingsync/api/client/preferences_payments.rb +0 -22
- data/spec/bookingsync/api/client/preferences_payments_spec.rb +0 -12
- data/spec/fixtures/cassettes/BookingSync_API_Client_PreferencesPayments/_preferences_payments/returns_preferences_payments.yml +0 -80
- data/spec/fixtures/cassettes/BookingSync_API_Client_Rentals/_rentals/links/returns_links_to_associated_resources.yml +0 -91
@@ -3,6 +3,8 @@ require "spec_helper"
|
|
3
3
|
describe BookingSync::API::Client::Rates do
|
4
4
|
let(:client) { BookingSync::API::Client.new(test_access_token) }
|
5
5
|
|
6
|
+
before { |ex| @casette_base_path = casette_path(casette_dir, ex.metadata) }
|
7
|
+
|
6
8
|
describe ".rates", :vcr do
|
7
9
|
it "returns rates" do
|
8
10
|
expect(client.rates).not_to be_empty
|
@@ -11,9 +13,13 @@ describe BookingSync::API::Client::Rates do
|
|
11
13
|
end
|
12
14
|
|
13
15
|
describe ".rate", :vcr do
|
16
|
+
let(:prefetched_rate_id) {
|
17
|
+
find_resource("#{@casette_base_path}_rates/returns_rates.yml", "rates")[:id]
|
18
|
+
}
|
19
|
+
|
14
20
|
it "returns a single rate" do
|
15
|
-
rate = client.rate(
|
16
|
-
expect(rate.id).to eq
|
21
|
+
rate = client.rate(prefetched_rate_id)
|
22
|
+
expect(rate.id).to eq prefetched_rate_id
|
17
23
|
end
|
18
24
|
end
|
19
25
|
end
|
@@ -3,6 +3,8 @@ require "spec_helper"
|
|
3
3
|
describe BookingSync::API::Client::RatesTables do
|
4
4
|
let(:client) { BookingSync::API::Client.new(test_access_token) }
|
5
5
|
|
6
|
+
before { |ex| @casette_base_path = casette_path(casette_dir, ex.metadata) }
|
7
|
+
|
6
8
|
describe ".rates_tables", :vcr do
|
7
9
|
it "returns rates tables" do
|
8
10
|
expect(client.rates_tables).not_to be_empty
|
@@ -11,15 +13,19 @@ describe BookingSync::API::Client::RatesTables do
|
|
11
13
|
end
|
12
14
|
|
13
15
|
describe ".rates_table", :vcr do
|
16
|
+
let(:prefetched_rates_table_id) {
|
17
|
+
find_resource("#{@casette_base_path}_rates_tables/returns_rates_tables.yml", "rates_tables")[:id]
|
18
|
+
}
|
19
|
+
|
14
20
|
it "returns a single rates_table" do
|
15
|
-
rates_table = client.rates_table(
|
16
|
-
expect(rates_table.id).to eq
|
21
|
+
rates_table = client.rates_table(prefetched_rates_table_id)
|
22
|
+
expect(rates_table.id).to eq prefetched_rates_table_id
|
17
23
|
end
|
18
24
|
end
|
19
25
|
|
20
26
|
describe ".create_rates_table", :vcr do
|
21
27
|
let(:attributes) {
|
22
|
-
{ name: "New rate table" }
|
28
|
+
{ name: "New test rate table" }
|
23
29
|
}
|
24
30
|
|
25
31
|
it "creates a new rates_table" do
|
@@ -31,7 +37,7 @@ describe BookingSync::API::Client::RatesTables do
|
|
31
37
|
it "returns newly created rates_table" do
|
32
38
|
VCR.use_cassette("BookingSync_API_Client_RatesTables/_create_rates_table/creates_a_new_rates_table") do
|
33
39
|
rates_table = client.create_rates_table(attributes)
|
34
|
-
expect(rates_table.name).to
|
40
|
+
expect(rates_table.name).to eq(attributes[:name])
|
35
41
|
end
|
36
42
|
end
|
37
43
|
end
|
@@ -40,26 +46,33 @@ describe BookingSync::API::Client::RatesTables do
|
|
40
46
|
let(:attributes) {
|
41
47
|
{ name: "Updated rate table" }
|
42
48
|
}
|
49
|
+
let(:created_rates_table_id) {
|
50
|
+
find_resource("#{@casette_base_path}_create_rates_table/creates_a_new_rates_table.yml", "rates_tables")[:id]
|
51
|
+
}
|
43
52
|
|
44
53
|
it "updates given rates_table by ID" do
|
45
|
-
client.edit_rates_table(
|
46
|
-
assert_requested :put, bs_url("rates_tables
|
54
|
+
client.edit_rates_table(created_rates_table_id, attributes)
|
55
|
+
assert_requested :put, bs_url("rates_tables/#{created_rates_table_id}"),
|
47
56
|
body: { rates_tables: [attributes] }.to_json
|
48
57
|
end
|
49
58
|
|
50
59
|
it "returns updated rates_table" do
|
51
60
|
VCR.use_cassette("BookingSync_API_Client_RatesTables/_edit_rates_table/updates_given_rates_table_by_ID") do
|
52
|
-
rates_table = client.edit_rates_table(
|
61
|
+
rates_table = client.edit_rates_table(created_rates_table_id, attributes)
|
53
62
|
expect(rates_table).to be_kind_of(BookingSync::API::Resource)
|
54
|
-
expect(rates_table.name).to
|
63
|
+
expect(rates_table.name).to eq(attributes[:name])
|
55
64
|
end
|
56
65
|
end
|
57
66
|
end
|
58
67
|
|
59
68
|
describe ".delete_rates_table", :vcr do
|
69
|
+
let(:created_rates_table_id) {
|
70
|
+
find_resource("#{@casette_base_path}_create_rates_table/creates_a_new_rates_table.yml", "rates_tables")[:id]
|
71
|
+
}
|
72
|
+
|
60
73
|
it "deletes given rates_table" do
|
61
|
-
client.delete_rates_table(
|
62
|
-
assert_requested :delete, bs_url("rates_tables
|
74
|
+
client.delete_rates_table(created_rates_table_id)
|
75
|
+
assert_requested :delete, bs_url("rates_tables/#{created_rates_table_id}")
|
63
76
|
end
|
64
77
|
end
|
65
78
|
end
|
@@ -6,6 +6,8 @@ describe BookingSync::API::Client::RentalAgreements do
|
|
6
6
|
{ body: "Lorem ipsum" }
|
7
7
|
}
|
8
8
|
|
9
|
+
before { |ex| @casette_base_path = casette_path(casette_dir, ex.metadata) }
|
10
|
+
|
9
11
|
describe ".rental_agreements", :vcr do
|
10
12
|
it "returns rental agreements" do
|
11
13
|
expect(client.rental_agreements).not_to be_empty
|
@@ -14,9 +16,13 @@ describe BookingSync::API::Client::RentalAgreements do
|
|
14
16
|
end
|
15
17
|
|
16
18
|
describe ".rental_agreement", :vcr do
|
19
|
+
let(:prefetched_rental_agreement_id) {
|
20
|
+
find_resource("#{@casette_base_path}_rental_agreements/returns_rental_agreements.yml", "rental_agreements")[:id]
|
21
|
+
}
|
22
|
+
|
17
23
|
it "returns a single rental_agreement" do
|
18
|
-
rental_agreement = client.rental_agreement(
|
19
|
-
expect(rental_agreement.id).to eq
|
24
|
+
rental_agreement = client.rental_agreement(prefetched_rental_agreement_id)
|
25
|
+
expect(rental_agreement.id).to eq prefetched_rental_agreement_id
|
20
26
|
end
|
21
27
|
end
|
22
28
|
|
@@ -30,13 +36,15 @@ describe BookingSync::API::Client::RentalAgreements do
|
|
30
36
|
it "returns newly created rental agreement" do
|
31
37
|
VCR.use_cassette("BookingSync_API_Client_RentalAgreements/_create_rental_agreement/creates_a_new_rental_agreement") do
|
32
38
|
rental_agreement = client.create_rental_agreement(attributes)
|
33
|
-
expect(rental_agreement.body).to
|
39
|
+
expect(rental_agreement.body).to eq(attributes[:body])
|
34
40
|
end
|
35
41
|
end
|
36
42
|
end
|
37
43
|
|
38
44
|
describe ".create_rental_agreement_for_booking", :vcr do
|
39
|
-
let(:booking)
|
45
|
+
let(:booking) do
|
46
|
+
find_resource("#{casette_dir}/BookingSync_API_Client_Bookings/_booking/returns_a_single_booking.yml", "bookings")
|
47
|
+
end
|
40
48
|
|
41
49
|
it "creates a new rental agreement" do
|
42
50
|
client.create_rental_agreement_for_booking(booking, attributes)
|
@@ -47,24 +55,26 @@ describe BookingSync::API::Client::RentalAgreements do
|
|
47
55
|
it "returns newly created rental agreement" do
|
48
56
|
VCR.use_cassette("BookingSync_API_Client_RentalAgreements/_create_rental_agreement_for_booking/creates_a_new_rental_agreement") do
|
49
57
|
rental_agreement = client.create_rental_agreement_for_booking(booking, attributes)
|
50
|
-
expect(rental_agreement.body).to
|
58
|
+
expect(rental_agreement.body).to eq(attributes[:body])
|
51
59
|
end
|
52
60
|
end
|
53
61
|
end
|
54
62
|
|
55
63
|
describe ".create_rental_agreement_for_rental", :vcr do
|
56
|
-
let(:rental)
|
64
|
+
let(:rental) do
|
65
|
+
find_resource("#{casette_dir}/BookingSync_API_Client_Rentals/_rental/returns_a_single_rental.yml", "rentals")
|
66
|
+
end
|
57
67
|
|
58
68
|
it "creates a new rental agreement" do
|
59
69
|
client.create_rental_agreement_for_rental(rental, attributes)
|
60
|
-
assert_requested :post, bs_url("rentals/
|
70
|
+
assert_requested :post, bs_url("rentals/#{rental}/rental_agreements"),
|
61
71
|
body: { rental_agreements: [attributes] }.to_json
|
62
72
|
end
|
63
73
|
|
64
74
|
it "returns newly created rental agreement" do
|
65
75
|
VCR.use_cassette("BookingSync_API_Client_RentalAgreements/_create_rental_agreement_for_rental/creates_a_new_rental_agreement") do
|
66
76
|
rental_agreement = client.create_rental_agreement_for_rental(rental, attributes)
|
67
|
-
expect(rental_agreement.body).to
|
77
|
+
expect(rental_agreement.body).to eq(attributes[:body])
|
68
78
|
end
|
69
79
|
end
|
70
80
|
end
|
@@ -3,6 +3,8 @@ require "spec_helper"
|
|
3
3
|
describe BookingSync::API::Client::RentalCancelationPolicies do
|
4
4
|
let(:client) { BookingSync::API::Client.new(test_access_token) }
|
5
5
|
|
6
|
+
before { |ex| @casette_base_path = casette_path(casette_dir, ex.metadata) }
|
7
|
+
|
6
8
|
describe ".rental_cancelation_policies", :vcr do
|
7
9
|
it "returns rental cancelation policies" do
|
8
10
|
expect(client.rental_cancelation_policies).not_to be_empty
|
@@ -11,8 +13,13 @@ describe BookingSync::API::Client::RentalCancelationPolicies do
|
|
11
13
|
end
|
12
14
|
|
13
15
|
describe ".rental_cancelation_policy", :vcr do
|
16
|
+
let(:prefetched_rental_cancelation_policy_id) {
|
17
|
+
find_resource("#{@casette_base_path}_rental_cancelation_policies/returns_rental_cancelation_policies.yml",
|
18
|
+
"rental_cancelation_policies")[:id]
|
19
|
+
}
|
20
|
+
|
14
21
|
it "returns a single rental cancelation policy" do
|
15
|
-
expect(client.rental_cancelation_policy(
|
22
|
+
expect(client.rental_cancelation_policy(prefetched_rental_cancelation_policy_id).body).to eq "```body```"
|
16
23
|
end
|
17
24
|
end
|
18
25
|
end
|
@@ -3,6 +3,8 @@ require "spec_helper"
|
|
3
3
|
describe BookingSync::API::Client::RentalCancelationPolicyItems do
|
4
4
|
let(:client) { BookingSync::API::Client.new(test_access_token) }
|
5
5
|
|
6
|
+
before { |ex| @casette_base_path = casette_path(casette_dir, ex.metadata) }
|
7
|
+
|
6
8
|
describe ".rental_cancelation_policy_items", :vcr do
|
7
9
|
it "returns rental cancelation policy items" do
|
8
10
|
expect(client.rental_cancelation_policy_items).not_to be_empty
|
@@ -11,8 +13,13 @@ describe BookingSync::API::Client::RentalCancelationPolicyItems do
|
|
11
13
|
end
|
12
14
|
|
13
15
|
describe ".rental_cancelation_policy_item", :vcr do
|
16
|
+
let(:prefetched_rental_cancelation_policy_item_id) {
|
17
|
+
find_resource("#{@casette_base_path}_rental_cancelation_policy_items/returns_rental_cancelation_policy_items.yml",
|
18
|
+
"rental_cancelation_policy_items")[:id]
|
19
|
+
}
|
20
|
+
|
14
21
|
it "returns a single rental cancelation policy item" do
|
15
|
-
expect(client.rental_cancelation_policy_item(
|
22
|
+
expect(client.rental_cancelation_policy_item(prefetched_rental_cancelation_policy_item_id).penalty_percentage).to eq "20.0"
|
16
23
|
end
|
17
24
|
end
|
18
25
|
end
|
@@ -3,6 +3,8 @@ require "spec_helper"
|
|
3
3
|
describe BookingSync::API::Client::RentalsAmenities do
|
4
4
|
let(:client) { BookingSync::API::Client.new(test_access_token) }
|
5
5
|
|
6
|
+
before { |ex| @casette_base_path = casette_path(casette_dir, ex.metadata) }
|
7
|
+
|
6
8
|
describe ".rentals_amenities", :vcr do
|
7
9
|
it "returns rentals amenities" do
|
8
10
|
expect(client.rentals_amenities).not_to be_empty
|
@@ -23,19 +25,23 @@ describe BookingSync::API::Client::RentalsAmenities do
|
|
23
25
|
end
|
24
26
|
|
25
27
|
describe ".rentals_amenity", :vcr do
|
28
|
+
let(:prefetched_rentals_amenity_id) {
|
29
|
+
find_resource("#{@casette_base_path}_rentals_amenities/returns_rentals_amenities.yml", "rentals_amenities")[:id]
|
30
|
+
}
|
31
|
+
|
26
32
|
it "returns rentals_amenity" do
|
27
|
-
amenity = client.rentals_amenity(
|
28
|
-
assert_requested :get, bs_url("rentals_amenities
|
33
|
+
amenity = client.rentals_amenity(prefetched_rentals_amenity_id)
|
34
|
+
assert_requested :get, bs_url("rentals_amenities/#{prefetched_rentals_amenity_id}")
|
29
35
|
end
|
30
36
|
end
|
31
37
|
|
32
38
|
describe ".create_rentals_amenity", :vcr do
|
33
|
-
let(:attributes) { { amenity_id:
|
39
|
+
let(:attributes) { { amenity_id: 48, details_en: "Details" } }
|
34
40
|
let(:rental) { BookingSync::API::Resource.new(client, id: 5116) }
|
35
41
|
|
36
42
|
it "creates a new rentals_amenity" do
|
37
43
|
client.create_rentals_amenity(rental, attributes)
|
38
|
-
assert_requested :post, bs_url("rentals/
|
44
|
+
assert_requested :post, bs_url("rentals/#{rental}/rentals_amenities"),
|
39
45
|
body: { rentals_amenities: [attributes] }.to_json
|
40
46
|
end
|
41
47
|
|
@@ -49,16 +55,19 @@ describe BookingSync::API::Client::RentalsAmenities do
|
|
49
55
|
|
50
56
|
describe ".edit_rentals_amenity", :vcr do
|
51
57
|
let(:attributes) { { details_en: "New Details" } }
|
58
|
+
let(:created_rentals_amenity_id) {
|
59
|
+
find_resource("#{@casette_base_path}_create_rentals_amenity/creates_a_new_rentals_amenity.yml", "rentals_amenities")[:id]
|
60
|
+
}
|
52
61
|
|
53
62
|
it "updates given rentals_amenity by ID" do
|
54
|
-
client.edit_rentals_amenity(
|
55
|
-
assert_requested :put, bs_url("rentals_amenities
|
63
|
+
client.edit_rentals_amenity(created_rentals_amenity_id, attributes)
|
64
|
+
assert_requested :put, bs_url("rentals_amenities/#{created_rentals_amenity_id}"),
|
56
65
|
body: { rentals_amenities: [attributes] }.to_json
|
57
66
|
end
|
58
67
|
|
59
68
|
it "returns updated rentals_amenity" do
|
60
69
|
VCR.use_cassette("BookingSync_API_Client_RentalsAmenities/_edit_rentals_amenity/updates_given_rentals_amenity_by_ID") do
|
61
|
-
rentals_amenity = client.edit_rentals_amenity(
|
70
|
+
rentals_amenity = client.edit_rentals_amenity(created_rentals_amenity_id, attributes)
|
62
71
|
expect(rentals_amenity).to be_kind_of(BookingSync::API::Resource)
|
63
72
|
expect(rentals_amenity.details).to eq(en: "New Details")
|
64
73
|
end
|
@@ -66,9 +75,13 @@ describe BookingSync::API::Client::RentalsAmenities do
|
|
66
75
|
end
|
67
76
|
|
68
77
|
describe ".delete_rentals_amenity", :vcr do
|
78
|
+
let(:created_rentals_amenity_id) {
|
79
|
+
find_resource("#{@casette_base_path}_create_rentals_amenity/creates_a_new_rentals_amenity.yml", "rentals_amenities")[:id]
|
80
|
+
}
|
81
|
+
|
69
82
|
it "deletes given rentals_amenity" do
|
70
|
-
client.delete_rentals_amenity(
|
71
|
-
assert_requested :delete, bs_url("rentals_amenities
|
83
|
+
client.delete_rentals_amenity(created_rentals_amenity_id)
|
84
|
+
assert_requested :delete, bs_url("rentals_amenities/#{created_rentals_amenity_id}")
|
72
85
|
end
|
73
86
|
end
|
74
87
|
end
|
@@ -3,6 +3,8 @@ require "spec_helper"
|
|
3
3
|
describe BookingSync::API::Client::RentalsFees do
|
4
4
|
let(:client) { BookingSync::API::Client.new(test_access_token) }
|
5
5
|
|
6
|
+
before { |ex| @casette_base_path = casette_path(casette_dir, ex.metadata) }
|
7
|
+
|
6
8
|
describe ".rentals_fees", :vcr do
|
7
9
|
it "returns rentals fees" do
|
8
10
|
expect(client.rentals_fees).not_to be_empty
|
@@ -11,16 +13,23 @@ describe BookingSync::API::Client::RentalsFees do
|
|
11
13
|
end
|
12
14
|
|
13
15
|
describe ".rentals_fee", :vcr do
|
16
|
+
let(:prefetched_rentals_fee_id) {
|
17
|
+
find_resource("#{@casette_base_path}_rentals_fees/returns_rentals_fees.yml", "rentals_fees")[:id]
|
18
|
+
}
|
19
|
+
|
14
20
|
it "returns a single rentals_fee" do
|
15
|
-
rentals_fee = client.rentals_fee(
|
16
|
-
expect(rentals_fee.id).to eq
|
21
|
+
rentals_fee = client.rentals_fee(prefetched_rentals_fee_id)
|
22
|
+
expect(rentals_fee.id).to eq prefetched_rentals_fee_id
|
17
23
|
end
|
18
24
|
end
|
19
25
|
|
20
26
|
describe ".create_rentals_fee", :vcr do
|
27
|
+
let(:fee_id) {
|
28
|
+
find_resource("#{casette_dir}/BookingSync_API_Client_Fees/_fees/returns_fees.yml", "fees")[:id]
|
29
|
+
}
|
21
30
|
let(:attributes) do
|
22
31
|
{
|
23
|
-
fee_id:
|
32
|
+
fee_id: fee_id,
|
24
33
|
maximum_bookable: 10,
|
25
34
|
always_applied: true
|
26
35
|
}
|
@@ -29,14 +38,14 @@ describe BookingSync::API::Client::RentalsFees do
|
|
29
38
|
|
30
39
|
it "creates a new rentals_fee" do
|
31
40
|
client.create_rentals_fee(rental, attributes)
|
32
|
-
assert_requested :post, bs_url("rentals/
|
41
|
+
assert_requested :post, bs_url("rentals/#{rental}/rentals_fees"),
|
33
42
|
body: { rentals_fees: [attributes] }.to_json
|
34
43
|
end
|
35
44
|
|
36
45
|
it "returns newly created rentals_fee" do
|
37
46
|
VCR.use_cassette("BookingSync_API_Client_RentalsFees/_create_rentals_fee/creates_a_new_rentals_fee") do
|
38
47
|
rentals_fee = client.create_rentals_fee(rental, attributes)
|
39
|
-
expect(rentals_fee.links.fee).to eq
|
48
|
+
expect(rentals_fee.links.fee).to eq fee_id
|
40
49
|
expect(rentals_fee.maximum_bookable).to eq 10
|
41
50
|
expect(rentals_fee.always_applied).to eq true
|
42
51
|
end
|
@@ -3,6 +3,8 @@ require "spec_helper"
|
|
3
3
|
describe BookingSync::API::Client::Rentals do
|
4
4
|
let(:client) { BookingSync::API::Client.new(test_access_token) }
|
5
5
|
|
6
|
+
before { |ex| @casette_base_path = casette_path(casette_dir, ex.metadata) }
|
7
|
+
|
6
8
|
describe ".rentals", :vcr do
|
7
9
|
it "returns rentals" do
|
8
10
|
expect(client.rentals).not_to be_empty
|
@@ -10,9 +12,11 @@ describe BookingSync::API::Client::Rentals do
|
|
10
12
|
end
|
11
13
|
|
12
14
|
it "returns rentals by ids" do
|
13
|
-
|
14
|
-
|
15
|
-
|
15
|
+
rental_ids = find_resources("#{@casette_base_path}_rentals/returns_rentals.yml", "rentals").map { |r| r["id"] }[0..1]
|
16
|
+
|
17
|
+
rentals = client.rentals(ids: rental_ids)
|
18
|
+
expect(rentals.size).to eq(2)
|
19
|
+
assert_requested :get, bs_url("rentals/#{rental_ids.join(',')}")
|
16
20
|
end
|
17
21
|
|
18
22
|
describe "links" do
|
@@ -25,17 +29,21 @@ describe BookingSync::API::Client::Rentals do
|
|
25
29
|
|
26
30
|
describe ".rentals_search", :vcr do
|
27
31
|
it "returns rentals" do
|
28
|
-
expect(client.rentals_search(start_at: "2016-
|
32
|
+
expect(client.rentals_search(start_at: "2016-12-15", end_at: "2016-12-22")).not_to be_empty
|
29
33
|
assert_requested :post, bs_url("rentals/search"),
|
30
|
-
body: { start_at: "2016-
|
34
|
+
body: { start_at: "2016-12-15", end_at: "2016-12-22" }.to_json
|
31
35
|
end
|
32
36
|
|
33
37
|
context "rentals ids given" do
|
38
|
+
let(:rental_ids) {
|
39
|
+
find_resources("#{@casette_base_path}_rentals/returns_rentals.yml", "rentals").map { |r| r["id"] }[0..1]
|
40
|
+
}
|
41
|
+
|
34
42
|
it "makes a search within given rentals" do
|
35
|
-
rentals = client.rentals_search(ids:
|
43
|
+
rentals = client.rentals_search(ids: rental_ids, start_at: "2016-12-15", end_at: "2016-12-22")
|
36
44
|
expect(rentals.size).to eq(1)
|
37
|
-
assert_requested :post, bs_url("rentals
|
38
|
-
body: { start_at: "2016-
|
45
|
+
assert_requested :post, bs_url("rentals/#{rental_ids.join(',')}/search"),
|
46
|
+
body: { start_at: "2016-12-15", end_at: "2016-12-22" }.to_json
|
39
47
|
end
|
40
48
|
end
|
41
49
|
|
@@ -50,9 +58,23 @@ describe BookingSync::API::Client::Rentals do
|
|
50
58
|
end
|
51
59
|
|
52
60
|
describe ".rental", :vcr do
|
61
|
+
let(:prefetched_rental) {
|
62
|
+
find_resource("#{@casette_base_path}_rentals/returns_rentals.yml", "rentals")
|
63
|
+
}
|
64
|
+
|
53
65
|
it "returns a single rental" do
|
54
|
-
rental = client.rental(
|
55
|
-
expect(rental.name).to
|
66
|
+
rental = client.rental(prefetched_rental[:id])
|
67
|
+
expect(rental.name).to eq(prefetched_rental[:name])
|
68
|
+
expect(rental).to_not have_key(:availability)
|
69
|
+
end
|
70
|
+
|
71
|
+
context "with additional query params" do
|
72
|
+
it "returns a single rental with defined params" do
|
73
|
+
rental = client.rental(prefetched_rental[:id], include: [:availability, :change_over])
|
74
|
+
expect(rental.name).to eq(prefetched_rental[:name])
|
75
|
+
expect(rental).to have_key(:availability)
|
76
|
+
expect(rental).to have_key(:change_over)
|
77
|
+
end
|
56
78
|
end
|
57
79
|
end
|
58
80
|
|
@@ -68,22 +90,26 @@ describe BookingSync::API::Client::Rentals do
|
|
68
90
|
it "returns newly created rental" do
|
69
91
|
VCR.use_cassette("BookingSync_API_Client_Rentals/_create_rental/creates_a_new_rental") do
|
70
92
|
rental = client.create_rental(attributes)
|
71
|
-
expect(rental.name).to
|
72
|
-
expect(rental.sleeps).to
|
93
|
+
expect(rental.name).to eq("New rental")
|
94
|
+
expect(rental.sleeps).to eq(2)
|
73
95
|
end
|
74
96
|
end
|
75
97
|
end
|
76
98
|
|
77
99
|
describe ".edit_rental", :vcr do
|
100
|
+
let(:created_rental_id) {
|
101
|
+
find_resource("#{casette_dir}/BookingSync_API_Client_Rentals/_create_rental/creates_a_new_rental.yml", "rentals")[:id]
|
102
|
+
}
|
103
|
+
|
78
104
|
it "updates given rental by ID" do
|
79
|
-
client.edit_rental(
|
80
|
-
assert_requested :put, bs_url("rentals
|
105
|
+
client.edit_rental(created_rental_id, name: "Updated Rental name")
|
106
|
+
assert_requested :put, bs_url("rentals/#{created_rental_id}"),
|
81
107
|
body: { rentals: [{ name: "Updated Rental name" }] }.to_json
|
82
108
|
end
|
83
109
|
|
84
110
|
it "returns updated rental" do
|
85
111
|
VCR.use_cassette("BookingSync_API_Client_Rentals/_edit_rental/updates_given_rental_by_ID") do
|
86
|
-
rental = client.edit_rental(
|
112
|
+
rental = client.edit_rental(created_rental_id, name: "Updated Rental name")
|
87
113
|
expect(rental).to be_kind_of(BookingSync::API::Resource)
|
88
114
|
expect(rental.name).to eq("Updated Rental name")
|
89
115
|
end
|
@@ -91,16 +117,24 @@ describe BookingSync::API::Client::Rentals do
|
|
91
117
|
end
|
92
118
|
|
93
119
|
describe ".delete_rental", :vcr do
|
120
|
+
let(:created_rental_id) {
|
121
|
+
find_resource("#{casette_dir}/BookingSync_API_Client_Rentals/_create_rental/creates_a_new_rental.yml", "rentals")[:id]
|
122
|
+
}
|
123
|
+
|
94
124
|
it "deletes given rental" do
|
95
|
-
client.delete_rental(
|
96
|
-
assert_requested :delete, bs_url("rentals
|
125
|
+
client.delete_rental(created_rental_id)
|
126
|
+
assert_requested :delete, bs_url("rentals/#{created_rental_id}")
|
97
127
|
end
|
98
128
|
end
|
99
129
|
|
100
130
|
describe ".rentals_meta", :vcr do
|
131
|
+
let(:rental_ids) {
|
132
|
+
find_resources("#{@casette_base_path}_rentals/returns_rentals.yml", "rentals").map { |r| r["id"] }
|
133
|
+
}
|
134
|
+
|
101
135
|
it "returns meta information about requested rentals" do
|
102
|
-
client.rentals_meta(
|
103
|
-
assert_requested :get, bs_url("rentals
|
136
|
+
client.rentals_meta(rental_ids)
|
137
|
+
assert_requested :get, bs_url("rentals/#{rental_ids.join(',')}/meta")
|
104
138
|
end
|
105
139
|
|
106
140
|
it "returns meta information about all rentals" do
|