public void Can_freeze_instance() { var data = CreateData(); Freezer.Freeze(data); Assert.IsTrue(Freezer.IsFrozen(data)); }
public void IsFrozen_throws_on_non_freezable() { var data = new Data() { Id = 42, Name = "Everything" }; Freezer.IsFrozen(data); }
public void FreezeDry_clones_unfrozen_instance() { var data = CreateData(); var data2 = Freezer.FreezeDry(data); AssertSameValue(data, data2); Assert.IsFalse(Freezer.IsFrozen(data)); Assert.IsTrue(Freezer.IsFrozen(data2)); }
public void Thaw_on_unfrozen_returns_new_unfrozen_instance() { var data = CreateData(); var data2 = Freezer.Thaw(data); Assert.AreNotSame(data, data2); AssertSameValue(data, data2); Assert.IsFalse(Freezer.IsFrozen(data2)); }
public void FreezeDry_on_frozen_instance_is_noop() { var data = CreateData(); Freezer.Freeze(data); var data2 = Freezer.FreezeDry(data); Assert.AreSame(data, data2); Assert.IsTrue(Freezer.IsFrozen(data2)); }
public void FreezeDry_on_non_freezable_returns_freezable() { var data = new Data() { Id = 42, Name = "Everything" }; var data2 = Freezer.FreezeDry(data); Assert.AreNotSame(data, data2); Assert.IsTrue(Freezer.IsFreezable(data2)); AssertSameValue(data, data2); Assert.IsTrue(Freezer.IsFrozen(data2)); }
public void Wrapped_instance_is_unfrozen_by_default() { Assert.IsFalse(Freezer.IsFrozen(CreateData())); }