public void AccessHoldingsByStockMultipleEntries() { var stock1 = new Stock(Guid.NewGuid()); stock1.List("ABC", "ABC Pty Ltd", new Date(1974, 01, 01), false, AssetCategory.AustralianStocks); var stock2 = new Stock(Guid.NewGuid()); stock2.List("XYZ", "ZYZ Pty Ltd", new Date(1974, 01, 01), false, AssetCategory.AustralianStocks); var holdings = new HoldingCollection(); holdings.Add(stock1, new Date(2000, 01, 01)); holdings.Add(stock2, new Date(2000, 01, 01)); var holding = holdings[stock1.Id]; using (new AssertionScope()) { holding.Should().BeEquivalentTo(new { Stock = stock1, EffectivePeriod = new DateRange(new Date(2000, 01, 01), Date.MaxValue), }); holding[new Date(2000, 01, 01)].Should().Be(new HoldingProperties(0, 0.00m, 0.00m)); } }
public void AllHoldingsNoEntries() { var stock1 = new Stock(Guid.NewGuid()); stock1.List("ABC", "ABC Pty Ltd", new Date(1974, 01, 01), false, AssetCategory.AustralianStocks); var stock2 = new Stock(Guid.NewGuid()); stock2.List("XYZ", "ZYZ Pty Ltd", new Date(1974, 01, 01), false, AssetCategory.AustralianStocks); var holdings = new HoldingCollection(); holdings.All().Should().BeEmpty(); }
public void AllHoldingsSingleEntry() { var stock1 = new Stock(Guid.NewGuid()); stock1.List("ABC", "ABC Pty Ltd", new Date(1974, 01, 01), false, AssetCategory.AustralianStocks); var stock2 = new Stock(Guid.NewGuid()); stock2.List("XYZ", "ZYZ Pty Ltd", new Date(1974, 01, 01), false, AssetCategory.AustralianStocks); var holdings = new HoldingCollection(); holdings.Add(stock1, new Date(2000, 01, 01)); holdings.All().Should().HaveCount(1); }
public void AllHoldingsByDateRangeNoEntriesInRange() { var stock1 = new Stock(Guid.NewGuid()); stock1.List("ABC", "ABC Pty Ltd", new Date(1974, 01, 01), false, AssetCategory.AustralianStocks); var stock2 = new Stock(Guid.NewGuid()); stock2.List("XYZ", "ZYZ Pty Ltd", new Date(1974, 01, 01), false, AssetCategory.AustralianStocks); var holdings = new HoldingCollection(); holdings.Add(stock1, new Date(2000, 01, 01)); holdings.Add(stock2, new Date(2002, 01, 01)); holdings.All(new DateRange(new Date(1999, 01, 01), new Date(1999, 12, 01))).Should().BeEmpty(); }
public void AddHoldingExisingStock() { var stock1 = new Stock(Guid.NewGuid()); stock1.List("ABC", "ABC Pty Ltd", new Date(1974, 01, 01), false, AssetCategory.AustralianStocks); var stock2 = new Stock(Guid.NewGuid()); stock2.List("XYZ", "ZYZ Pty Ltd", new Date(1974, 01, 01), false, AssetCategory.AustralianStocks); var holdings = new HoldingCollection(); holdings.Add(stock1, new Date(2000, 01, 01)); Action a = () => holdings.Add(stock1, new Date(2001, 01, 01)); a.Should().Throw <ArgumentException>(); }
public void GetHoldingsByStockNoEntries() { var holdings = new HoldingCollection(); holdings.Get(Guid.NewGuid()).Should().BeNull(); }
public void AccessHoldingsByStockNoEntries() { var holdings = new HoldingCollection(); holdings[Guid.NewGuid()].Should().BeNull(); }