public void PlnFrom_WhenCurrencyContainOnlyCents_ThenCanNotParse() { var money = MoneyFactory.PlnFrom("50 cents"); Assert.AreEqual(50m, money.Value().Value); Assert.AreEqual(Currency.PLN, money.Value().Currency); }
static void Main(string[] args) { IMoney graphical_money_obj = null; int currency_display_value, sum = 0; const int ONE_MILLION = 10000; // Assume this is one million int[] currency_denominations = new[] { 1, 5, 10, 20, 50, 100 }; MoneyFactory moneyFactory = new MoneyFactory(); Random rand = new Random(); while (sum <= ONE_MILLION) { currency_display_value = currency_denominations[rand.Next(0, currency_denominations.Length)]; if (currency_display_value == 1 || currency_display_value == 5) { graphical_money_obj = moneyFactory.GetMoneyToDisplay(EnMoneyType.Metallic); } else { graphical_money_obj = moneyFactory.GetMoneyToDisplay(EnMoneyType.Paper); } graphical_money_obj.GetDisplayOfMoneyFalling(currency_display_value); sum = sum + currency_display_value; } Console.WriteLine("Total number of objects created is: " + MoneyFactory.ObjectsCount.ToString()); Console.ReadLine(); }
public void PlnFrom_WhenAmountIsShort_ThenCanParse() { var money = MoneyFactory.PlnFrom("5.53 USD"); Assert.AreEqual(5.53m, money.Value().Value); Assert.AreEqual(Currency.PLN, money.Value().Currency); }
public void PlnFrom_WhenCurrencyFormatIsStrang_ThenCanParse() { var money = MoneyFactory.PlnFrom("zł,sdf.sdf l euro1 5.,4.5,.53zł sdfsdf USD"); Assert.AreEqual(1545.53m, money.Value().Value); Assert.AreEqual(Currency.PLN, money.Value().Currency); }
public void PlnFrom_WhenDecimalSeparatorIsComma_ThenCanParse() { var money = MoneyFactory.PlnFrom("1 545,53 USD"); Assert.AreEqual(1545.53m, money.Value().Value); Assert.AreEqual(Currency.PLN, money.Value().Currency); }
public void PlnFrom_WhenCurrencyIsDifferent_ThenCanParse() { var money = MoneyFactory.PlnFrom("zł euro1 545,53zł USD"); Assert.AreEqual(1545.53m, money.Value().Value); Assert.AreEqual(Currency.PLN, money.Value().Currency); }
public void PlnFrom_WhenGroupSeparatorIsWhiteSpace_ThenCanParse() { var money = MoneyFactory.PlnFrom("1 545.53 USD"); Assert.AreEqual(1545.53m, money.Value().Value); Assert.AreEqual(Currency.PLN, money.Value().Currency); }
public void PlnFrom_WhenAmountHasMinus_ThenCanParse() { var money = MoneyFactory.PlnFrom("- 1,545.53 USD"); Assert.AreEqual(-1545.53m, money.Value().Value); Assert.AreEqual(Currency.PLN, money.Value().Currency); }
public void EuroFrom_WhenGroupSeparatorIsDot_ThenCanParse() { var money = MoneyFactory.EuroFrom("1.545.53 USD"); Assert.AreEqual(1545.53m, money.Value().Value); Assert.AreEqual(Currency.EURO, money.Value().Currency); }
static void Main(string[] args) { const int ONE_MILLION = 10000; int[] currencyDenominations = new[] { 1, 5, 10, 20, 50, 100 }; MoneyFactory moneyFactory = new MoneyFactory(); int sum = 0; while (sum <= ONE_MILLION) { IMoney graphicalMoneyObj = null; Random rand = new Random(); int currencyDisplayValue = currencyDenominations[rand.Next(0, currencyDenominations.Length)]; if (currencyDisplayValue == 1 || currencyDisplayValue == 5) { graphicalMoneyObj = moneyFactory.GetMoneyToDisplay(EnMoneyType.Metallic); } else { graphicalMoneyObj = moneyFactory.GetMoneyToDisplay(EnMoneyType.Paper); } graphicalMoneyObj.GetDisplayOfMoneyFalling(currencyDisplayValue); sum = sum + currencyDisplayValue; } Console.WriteLine("Total Objects created=" + MoneyFactory.ObjectsCount.ToString()); }
/// <summary> Creates a random Money entity </summary> private Money RandomMoney() { // Array of Coins enum Coins[] coins = Enum.GetValues(typeof(Coins)).Cast <Coins>().ToArray(); int maxVal = coins.Sum(x => (int)x); int randNum = random.Next(0, maxVal); int totalRarity = 0; // Loop until monster selected foreach (Coins coin in coins) { int rarity = (int)coin; // Return Money entity if selected if (randNum < rarity + totalRarity) { return(MoneyFactory.Create(coin)); } totalRarity += rarity; } return(null); }
public Money CopyAmountFromConfirmation(ICurrencyPolicy policy) { var amountValue = GetValueByRegexs( patternToMatchPosition: CofirmationTemplate.AmountPattern(policy.CurrencySymbolForRegex), patternToMatchValue: @"\d+\.\d+"); var amount = MoneyFactory.Money(amountValue, policy.CurrencySymbolForAmount).Value(); LogMachedValue(amount.ToString()); return(amount); }
public Money CopyAmountFromConfirmation(ICurrencyPolicy policy) { var value = this.Match(4, ConfirmationTemplate.AmountPattern); var amount = MoneyFactory.Money(value, policy.CurrencySymbolForAmount); if (!amount.HasValue()) { throw new ApplicationException("Amount not exist"); } var amountValue = amount.Value(); LogMachedValue(amountValue.Value + amountValue.Currency); return(amountValue); }
static void Main(string[] args) { IMoney graphical_money_obj = null; int currency_display_value, sum = 0; const int ONE_MILLION = 10000; // Assume this is one million int[] currency_denominations = new[] { 1, 5, 10, 20, 50, 100 }; MoneyFactory moneyFactory = new MoneyFactory(); Random rand = new Random(); while (sum <= ONE_MILLION) { currency_display_value = currency_denominations[rand.Next(0, currency_denominations.Length)]; if (currency_display_value == 1 || currency_display_value == 5) graphical_money_obj = moneyFactory.GetMoneyToDisplay(EnMoneyType.Metallic); else graphical_money_obj = moneyFactory.GetMoneyToDisplay(EnMoneyType.Paper); graphical_money_obj.GetDisplayOfMoneyFalling(currency_display_value); sum = sum + currency_display_value; } Console.WriteLine("Total number of objects created is: " + MoneyFactory.ObjectsCount.ToString()); Console.ReadLine(); }
public void PlnFrom_WhenCurrencyFormatIsIncorrect_ThenCanNotParse() { var money = MoneyFactory.PlnFrom(".,sdf4.5s,.5s3zł"); Assert.False(money.HasValue()); }