mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-01-15 19:06:50 +00:00
Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
abf9c4e438 |
@@ -1,8 +1,8 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
class Api::AddressSerializer < ActiveModel::Serializer
|
||||
cached
|
||||
delegate :cache_key, to: :object
|
||||
# cached
|
||||
# delegate :cache_key, to: :object
|
||||
|
||||
attributes :id, :zipcode, :city, :state_name, :state_id,
|
||||
:phone, :firstname, :lastname, :address1, :address2, :city, :country_id,
|
||||
|
||||
@@ -1,40 +0,0 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
require 'spec_helper'
|
||||
|
||||
describe Api::AddressSerializer do
|
||||
subject(:serializer) { described_class.new(address) }
|
||||
let(:address) { build(:address) }
|
||||
|
||||
describe "#country_name" do
|
||||
it "provides the country's name" do
|
||||
address.country.name = "Australia"
|
||||
expect(serializer.country_name).to eq "Australia"
|
||||
end
|
||||
end
|
||||
|
||||
describe "#state_name" do
|
||||
it "provides the state's abbreviation" do
|
||||
address.state.abbr = "Vic"
|
||||
expect(serializer.state_name).to eq "Vic"
|
||||
end
|
||||
end
|
||||
|
||||
describe "caching" do
|
||||
it "updates with the record" do
|
||||
expect {
|
||||
address.update!(first_name: "Nick")
|
||||
}.to change {
|
||||
serializer.to_json
|
||||
}
|
||||
end
|
||||
|
||||
it "uses stored result when database wasn't changed" do
|
||||
expect {
|
||||
address.first_name = "Nick"
|
||||
}.to_not change {
|
||||
serializer.to_json
|
||||
}
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user