public void TestPreferredShareDividendYieldCalculation(double fixedDividend, int parValue, double price, double expectedValue) { PreferredStock preferredStock = new PreferredStock("Test", 10, parValue, fixedDividend); Assert.AreEqual(preferredStock.CalculateDividendYield(price), expectedValue); }
public void TestInvalidPriceInYieldCalcThrowsException(double price) { CommonStock commonStock = new CommonStock("Test", 8, 100); CommonStock preferedStock = new PreferredStock("Test", 8, 100, 0.02); Assert.Throws <ArgumentOutOfRangeException>(() => commonStock.CalculateDividendYield(price)); Assert.Throws <ArgumentOutOfRangeException>(() => preferedStock.CalculateDividendYield(price)); }
public void AddPreferredStockTest() { var stockPreferred = new PreferredStock { symbol = "GIN", lastDividend = 8, fixedDividend = 0.02, parValue = 100 }; exchangeStock.AddStock(stockPreferred); Assert.AreEqual(stockPreferred, exchangeStock.GetStockBySymbol("GIN")); }
public void CalculateDividendYieldForPreferredStockTest() { var stockPreferred = new PreferredStock { symbol = "GIN", lastDividend = 8, fixedDividend = 0.02, parValue = 100 }; var currentDividendPreffered = exchangeStock.CalculateDividendYield(stockPreferred, 100); var expectedDividendYield = 0.02; Assert.AreEqual(expectedDividendYield, currentDividendPreffered); }
public void CalculatPriceEarningsRatioForPreferredStockTest() { var stockPreferred = new PreferredStock { symbol = "GIN", lastDividend = 8, fixedDividend = 0.02, parValue = 100 }; var currentPeRatio = exchangeStock.CalculatePriceEarningsRatio(stockPreferred, 100); var expectedPeRatio = 5000; Assert.AreEqual(expectedPeRatio, currentPeRatio); }
public void Equals_IfStockSymbolIsNull_ReturnsFalse() { // Arrange var stock1 = new CommonStock(); var stock2 = new PreferredStock(); // Act var areEquals = stock1.Equals(stock2); // Assert Assert.False(areEquals); }
public void Test_StocksPERatioException() { string stock = "GIN"; double lastDividend = 0; double fixedDividend = 2; double parValue = 100; double stockPrice = 25; double price = 200; PreferredStock testStock = new PreferredStock(stock, lastDividend, fixedDividend, parValue, stockPrice); double PEratio = testStock.PERatio(price); }
public void Test_StocksPreferredYieldException() { string stock = "GIN"; double lastDividend = 8; double fixedDividend = 2; double parValue = 100; double stockPrice = 25; double price = 0; PreferredStock testStock = new PreferredStock(stock, lastDividend, fixedDividend, parValue, stockPrice); double dividendYield = testStock.DividendYield(price); }
public void CalculateDividendYield_WithZeroPrice_ThrowsArgumentException() { // Arrange var stock = new PreferredStock { FixedDividend = 0.5M, ParValue = 100 }; // Act var testDelegate = new TestDelegate(() => stock.CalculateDividendYield(0)); // Assert Assert.That(testDelegate, Throws.ArgumentException); }
public decimal CalculateDividendYield_WithNonZeroPriceAndPositiveDividend_CorrectlyCalculates(decimal price, decimal parValue) { // Arrange var stock = new PreferredStock { FixedDividend = 0.5M, ParValue = parValue }; // Act var result = stock.CalculateDividendYield(price); // Assert return(result); }
public void Equals_WithTwoStocksWithSameSymbolOfDifferentSubtypes_ReturnsTrue() { // Arrange var stock1 = new CommonStock { StockSymbol = "TEA" }; var stock2 = new PreferredStock { StockSymbol = "TEA" }; // Act var areEquals = stock1.Equals(stock2); // Assert Assert.True(areEquals); }
public void Test_StocksPreferredYield() { string stock = "GIN"; double lastDividend = 8; double fixedDividend = 2; double parValue = 100; double stockPrice = 25; double price = 64; double expected = ((fixedDividend / 100) * parValue) / price; PreferredStock testStock = new PreferredStock(stock, lastDividend, fixedDividend, parValue, stockPrice); double dividendYield = testStock.DividendYield(price); Assert.AreEqual(expected, dividendYield); }
public void Test_StocksPERatio() { string stock = "GIN"; double lastDividend = 8; double fixedDividend = 2; double parValue = 100; double stockPrice = 25; double price = 64; double expected = price / lastDividend; PreferredStock testStock = new PreferredStock(stock, lastDividend, fixedDividend, parValue, stockPrice); double PEratio = testStock.PERatio(price); Assert.AreEqual(expected, PEratio); }
public void TestPreferredStockPERatio() { // Test Preferred Stock PreferredStock stock; stock = new PreferredStock("TST", 10, 1, 100); float pe; // Test 0/10 => 0 pe = stock.GetPERatio(0); Assert.AreEqual(0, pe, float.Epsilon); // Test 10/10 => 1 pe = stock.GetPERatio(10); Assert.AreEqual(1, pe, float.Epsilon); // Test 10/0 => NaN stock.LastDividend = 0; pe = stock.GetPERatio(10); Assert.AreEqual(float.NaN, pe); // LastPrice stock = new PreferredStock("TST", 10, 1, 100); // Test 0/10 => 0 stock.LastPrice = 0; pe = stock.GetPERatio(); Assert.AreEqual(0, pe, float.Epsilon); // Test 10/10 => 1 stock.LastPrice = 10; pe = stock.GetPERatio(); Assert.AreEqual(1, pe, float.Epsilon); // Test 10/0 => NaN stock.LastPrice = 10; stock.LastDividend = 0; pe = stock.GetPERatio(); Assert.AreEqual(float.NaN, pe); }
public void TestPreferredStockYield() { // Test Preferred Stock PreferredStock stock; stock = new PreferredStock("TST", 10, 0, 100); float yield; // Test 0*100/50 => 0 yield = stock.GetDividendYield(50); Assert.AreEqual(0, yield, float.Epsilon); // Test 0.1*100/10 => 1 stock.FixedDividend = 0.1f; yield = stock.GetDividendYield(10); Assert.AreEqual(1, yield, float.Epsilon); // Test 0.1*100/0 => NaN yield = stock.GetDividendYield(0); Assert.AreEqual(float.NaN, yield); // LastPrice stock = new PreferredStock("TST", 10, 0, 100); // Test 0*100/50 => 0 stock.LastPrice = 50; yield = stock.GetDividendYield(); Assert.AreEqual(0, yield, float.Epsilon); // Test 0.1*100/10 => 1 stock.LastPrice = 10; stock.FixedDividend = 0.1f; yield = stock.GetDividendYield(); Assert.AreEqual(1, yield, float.Epsilon); // Test 0.1*100/0 => NaN stock.LastPrice = 0; yield = stock.GetDividendYield(); Assert.AreEqual(float.NaN, yield); }
public void TestCreationPreferredStock() { IStock prefStock = new PreferredStock(1, 2, "GIN", 2); Assert.IsNotNull(prefStock); }