test/unit/serializer_test.rb in paper_trail-6.0.2 vs test/unit/serializer_test.rb in paper_trail-7.0.0
- old
+ new
@@ -1,118 +1,107 @@
require "test_helper"
require "custom_json_serializer"
class SerializerTest < ActiveSupport::TestCase
- extend CleanupCallbacks
-
- cleanup_callbacks(Fluxor, :create)
- cleanup_callbacks(Fluxor, :update)
- cleanup_callbacks(Fluxor, :destroy)
- cleanup_callbacks(Fluxor, :save)
-
- setup do
- Fluxor.instance_eval "has_paper_trail"
- end
-
context "YAML Serializer" do
setup do
- @fluxor = Fluxor.create name: "Some text."
+ @customer = Customer.create name: "Some text."
# this is exactly what PaperTrail serializes
- @original_fluxor_attributes = @fluxor.paper_trail.attributes_before_change
+ @original_attributes = @customer.paper_trail.attributes_before_change
- @fluxor.update_attributes name: "Some more text."
+ @customer.update_attributes name: "Some more text."
end
should "work with the default `YAML` serializer" do
# Normal behaviour
- assert_equal 2, @fluxor.versions.length
- assert_nil @fluxor.versions[0].reify
- assert_equal "Some text.", @fluxor.versions[1].reify.name
+ assert_equal 2, @customer.versions.length
+ assert_nil @customer.versions[0].reify
+ assert_equal "Some text.", @customer.versions[1].reify.name
# Check values are stored as `YAML`.
- assert_equal @original_fluxor_attributes, YAML.load(@fluxor.versions[1].object)
- assert_equal YAML.dump(@original_fluxor_attributes), @fluxor.versions[1].object
+ assert_equal @original_attributes, YAML.load(@customer.versions[1].object)
+ assert_equal YAML.dump(@original_attributes), @customer.versions[1].object
end
end
context "JSON Serializer" do
setup do
PaperTrail.configure do |config|
config.serializer = PaperTrail::Serializers::JSON
end
- @fluxor = Fluxor.create name: "Some text."
+ @customer = Customer.create name: "Some text."
# this is exactly what PaperTrail serializes
- @original_fluxor_attributes = @fluxor.paper_trail.attributes_before_change
+ @original_attributes = @customer.paper_trail.attributes_before_change
- @fluxor.update_attributes name: "Some more text."
+ @customer.update_attributes name: "Some more text."
end
teardown do
PaperTrail.config.serializer = PaperTrail::Serializers::YAML
end
should "reify with JSON serializer" do
# Normal behaviour
- assert_equal 2, @fluxor.versions.length
- assert_nil @fluxor.versions[0].reify
- assert_equal "Some text.", @fluxor.versions[1].reify.name
+ assert_equal 2, @customer.versions.length
+ assert_nil @customer.versions[0].reify
+ assert_equal "Some text.", @customer.versions[1].reify.name
# Check values are stored as JSON.
- assert_equal @original_fluxor_attributes,
- ActiveSupport::JSON.decode(@fluxor.versions[1].object)
- assert_equal ActiveSupport::JSON.encode(@original_fluxor_attributes),
- @fluxor.versions[1].object
+ assert_equal @original_attributes,
+ ActiveSupport::JSON.decode(@customer.versions[1].object)
+ assert_equal ActiveSupport::JSON.encode(@original_attributes),
+ @customer.versions[1].object
end
should "store object_changes" do
- initial_changeset = { "name" => [nil, "Some text."], "id" => [nil, @fluxor.id] }
+ initial_changeset = { "name" => [nil, "Some text."], "id" => [nil, @customer.id] }
second_changeset = { "name" => ["Some text.", "Some more text."] }
- assert_equal initial_changeset, @fluxor.versions[0].changeset
- assert_equal second_changeset, @fluxor.versions[1].changeset
+ assert_equal initial_changeset, @customer.versions[0].changeset
+ assert_equal second_changeset, @customer.versions[1].changeset
end
end
context "Custom Serializer" do
setup do
PaperTrail.configure do |config|
config.serializer = CustomJsonSerializer
end
- @fluxor = Fluxor.create
+ @customer = Customer.create
# this is exactly what PaperTrail serializes
- @original_fluxor_attributes = @fluxor.
+ @original_attributes = @customer.
paper_trail.
attributes_before_change.
reject { |_k, v| v.nil? }
- @fluxor.update_attributes name: "Some more text."
+ @customer.update_attributes name: "Some more text."
end
teardown do
PaperTrail.config.serializer = PaperTrail::Serializers::YAML
end
should "reify with custom serializer" do
# Normal behaviour
- assert_equal 2, @fluxor.versions.length
- assert_nil @fluxor.versions[0].reify
- assert_nil @fluxor.versions[1].reify.name
+ assert_equal 2, @customer.versions.length
+ assert_nil @customer.versions[0].reify
+ assert_nil @customer.versions[1].reify.name
# Check values are stored as JSON.
- assert_equal @original_fluxor_attributes,
- ActiveSupport::JSON.decode(@fluxor.versions[1].object)
- assert_equal ActiveSupport::JSON.encode(@original_fluxor_attributes),
- @fluxor.versions[1].object
+ assert_equal @original_attributes,
+ ActiveSupport::JSON.decode(@customer.versions[1].object)
+ assert_equal ActiveSupport::JSON.encode(@original_attributes),
+ @customer.versions[1].object
end
should "store object_changes" do
- initial_changeset = { "id" => [nil, @fluxor.id] }
+ initial_changeset = { "id" => [nil, @customer.id] }
second_changeset = { "name" => [nil, "Some more text."] }
- assert_equal initial_changeset, @fluxor.versions[0].changeset
- assert_equal second_changeset, @fluxor.versions[1].changeset
+ assert_equal initial_changeset, @customer.versions[0].changeset
+ assert_equal second_changeset, @customer.versions[1].changeset
end
end
end