public void ManyToMany_ShouldNotWorkWhileNotRunning() { using (new SyncFarmersMarketsFarmerOutlets()) { } var farmer1 = new Farmer(); var market1 = new FarmersMarket(); farmer1.Outlets.Count.Should().Be(0); market1.Vendors.Count.Should().Be(0); farmer1.Outlets.Add(market1); farmer1.Outlets.Count.Should().Be(1); market1.Vendors.Count.Should().Be(0); var farmer2 = new Farmer(); var market2 = new FarmersMarket(); farmer2.Outlets.Count.Should().Be(0); market2.Vendors.Count.Should().Be(0); farmer1.Outlets.Count.Should().Be(1); market1.Vendors.Count.Should().Be(0); market2.Vendors.Add(farmer2); farmer2.Outlets.Count.Should().Be(0); market2.Vendors.Count.Should().Be(1); farmer1.Outlets.Count.Should().Be(1); market1.Vendors.Count.Should().Be(0); market2.Vendors.Add(farmer1); farmer2.Outlets.Count.Should().Be(0); market2.Vendors.Count.Should().Be(2); farmer1.Outlets.Count.Should().Be(1); market1.Vendors.Count.Should().Be(0); }
public void ManyToMany_ShouldWork() { using (new SyncFarmersMarketsFarmerOutlets()) { var farmer1 = new Farmer(); var market1 = new FarmersMarket(); farmer1.Outlets.Count.Should().Be(0); market1.Vendors.Count.Should().Be(0); farmer1.Outlets.Add(market1); farmer1.Outlets.Count.Should().Be(1); market1.Vendors.Count.Should().Be(1); var farmer2 = new Farmer(); var market2 = new FarmersMarket(); farmer2.Outlets.Count.Should().Be(0); market2.Vendors.Count.Should().Be(0); farmer1.Outlets.Count.Should().Be(1); market1.Vendors.Count.Should().Be(1); market2.Vendors.Add(farmer2); farmer2.Outlets.Count.Should().Be(1); market2.Vendors.Count.Should().Be(1); farmer1.Outlets.Count.Should().Be(1); market1.Vendors.Count.Should().Be(1); market2.Vendors.Add(farmer1); farmer2.Outlets.Count.Should().Be(1); market2.Vendors.Count.Should().Be(2); farmer1.Outlets.Count.Should().Be(2); market1.Vendors.Count.Should().Be(1); market2.Vendors.Remove(farmer1); farmer2.Outlets.Count.Should().Be(1); market2.Vendors.Count.Should().Be(1); farmer1.Outlets.Count.Should().Be(1); market1.Vendors.Count.Should().Be(1); farmer2.Outlets.Remove(market2); farmer2.Outlets.Count.Should().Be(0); market2.Vendors.Count.Should().Be(0); farmer1.Outlets.Count.Should().Be(1); market1.Vendors.Count.Should().Be(1); } }