Sha256: 1216b44e080f837743847bb5add0782554e84de8295087c7f5b65c7560986d48

Contents?: true

Size: 1.51 KB

Versions: 3

Compression:

Stored size: 1.51 KB

Contents

require_relative "test_helper"

class RelationsTest < ActiveSupport::TestCase

  test "archive_all! archives all records in an AR Association" do
    3.times { Archival.create! }

    archivals = Archival.all
    archivals.archive_all!
    assert archivals.first.archived?
    assert archivals.last.archived?
  end

  test "archive_all! archives all records with the same archival number" do
    3.times { Archival.create! }

    archivals = Archival.all
    archivals.archive_all!
    assert_equal archivals.first.archive_number, archivals.last.archive_number
  end

  test "archive_all! archives children records" do
    3.times do
      parent = Archival.create!
      2.times do
        parent.archivals.create!
      end
    end

    parents = Archival.all
    parents.archive_all!

    assert parents.first.archivals.first.archived?
    assert parents.first.archivals.last.archived?
  end

  test "unarchive_all! unarchives all records in an AR association" do
    3.times { Archival.create! }

    archivals = Archival.all
    archivals.archive_all!
    archivals.unarchive_all!
    assert_not archivals.first.archived?
    assert_not archivals.last.archived?
  end

  test "unarchive_all! unarchives children records" do
    3.times do
      parent = Archival.create!
      2.times do
        parent.archivals.create!
      end
    end

    parents = Archival.all
    parents.archive_all!
    parents.unarchive_all!

    assert_not parents.first.archivals.first.archived?
    assert_not parents.first.archivals.last.archived?
  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
archival_record-4.0.0 test/relations_test.rb
archival_record-3.0.1 test/relations_test.rb
archival_record-3.0.0 test/relations_test.rb