public void Cyclical_references_are_supported() { { var r = new Repository <Cyclocycle>(_sx); var c1 = new Cyclocycle { Id = "c1", Name = "Cycle1" }; var c2 = new Cyclocycle { Id = "c2", Name = "Cycle2", Whoah = Reference.To(c1) }; r.Save(c1); r.Save(c2); c1.Whoah = Reference.To(c2); r.Save(c1); } { var r = new Repository <Cyclocycle>(_sx); var c1 = r.Get("c1"); var c2 = c1.Whoah.Value; var c1a = c2.Whoah.Value; var c2a = c1a.Whoah.Value; Assert.That(c1a, Is.SameAs(c1)); Assert.That(c2a, Is.SameAs(c2)); } }
public void Cyclical_references_are_supported() { { var r = new Repository<Cyclocycle>(_sx); var c1 = new Cyclocycle { Id = "c1", Name = "Cycle1" }; var c2 = new Cyclocycle { Id = "c2", Name = "Cycle2", Whoah = Reference.To(c1) }; r.Save(c1); r.Save(c2); c1.Whoah = Reference.To(c2); r.Save(c1); } { var r = new Repository<Cyclocycle>(_sx); var c1 = r.Get("c1"); var c2 = c1.Whoah.Value; var c1a = c2.Whoah.Value; var c2a = c1a.Whoah.Value; Assert.That(c1a, Is.SameAs(c1)); Assert.That(c2a, Is.SameAs(c2)); } }