public void TestAmericanFinAffidavit() { var options = AmericanDomusOpesOptions.RandomOpesOptions( Domus.US.AmericanUtil.RandomAmericanFirstName(Gender.Female), Domus.US.AmericanUtil.RandomAmericanLastName()); var income = AmericanIncome.RandomIncome(options); options.SumTotal = income.Total.ToDouble(); var assets = AmericanAssets.RandomAssets(options); var expenses = AmericanExpenses.RandomExpenses(options); var allItems = income.ToData(KindsOfTextCase.Kabab); foreach (var asset in assets.ToData(KindsOfTextCase.Kabab)) { allItems.Add(asset.Key, asset.Value); } foreach (var expense in expenses.ToData(KindsOfTextCase.Kabab)) { allItems.Add(expense.Key, expense.Value); } foreach (var key in allItems.Keys) { Console.WriteLine($"{key}, {allItems[key]}"); } }
public void TestGetYearNeg() { var testSubject = new AmericanIncome(); var testResult = testSubject.GetYearNeg(-3); System.Diagnostics.Debug.WriteLine(testResult); }
public void TestResolveEmployment() { var testSubject = new AmericanIncome(); var testResult = testSubject.GetRandomEmployment(null, null); Assert.IsNotNull(testResult); Assert.AreNotEqual(0, testResult.Count); }
public void TestGetItemNames2Portions() { var testInput = new AmericanDomusOpesOptions(); var grpName = "Institutional"; testInput.AddGivenDirectly("Partnerships", grpName, 7800); testInput.AddGivenDirectly("Fellowships", grpName, 1000); testInput.AddGivenDirectly("Annuity", grpName, 1000); testInput.SumTotal = 15000; var testSubject = new AmericanIncome(); var testResults = testSubject.GetItemNames2Portions(grpName, testInput); Assert.IsNotNull(testResults); Assert.AreNotEqual(0, testResults.Count); var testResultSum = testResults.Select(kv => kv.Item2).Sum(); System.Diagnostics.Debug.WriteLine(testResultSum); Assert.IsTrue(Math.Round(testResultSum) == 1.0D); //expect that when SumTotal is unassigned the ratios align exactly with assigned values testInput = new AmericanDomusOpesOptions(); testInput.AddGivenDirectly("Partnerships", grpName, 7800); testInput.AddGivenDirectly("Fellowships", grpName, 1000); testInput.AddGivenDirectly("Annuity", grpName, 1000); testSubject = new AmericanIncome(); testResults = testSubject.GetItemNames2Portions(grpName, testInput); Assert.IsNotNull(testResults); Assert.AreNotEqual(0, testResults.Count); testResultSum = testResults.Select(kv => kv.Item2).Sum(); System.Diagnostics.Debug.WriteLine(testResultSum); var trWages = testResults.FirstOrDefault(kv => kv.Item1 == "Partnerships"); var trOt = testResults.FirstOrDefault(kv => kv.Item1 == "Fellowships"); var trBonus = testResults.FirstOrDefault(kv => kv.Item1 == "Annuity"); Assert.IsNotNull(trWages); Assert.IsNotNull(trOt); Assert.IsNotNull(trBonus); Assert.AreEqual(0.796D, Math.Round(trWages.Item2, 3)); Assert.AreEqual(0.102D, Math.Round(trOt.Item2, 3)); Assert.AreEqual(0.102D, Math.Round(trBonus.Item2, 3)); foreach (var tr in testResults) { System.Diagnostics.Debug.WriteLine(tr); } }
public void TestGetEmploymentRanges() { var testSubject = new AmericanIncome(); var testResult = testSubject.GetEmploymentRanges(null); Assert.IsNotNull(testResult); Assert.AreNotEqual(0, testResult.Count); Assert.IsNotNull(testResult[0]?.Item1); }
public void TestGetRandomIncomeAmount() { //no args test var testSubject = new AmericanIncome(); var testResult = testSubject.GetRandomExpectedIncomeAmount(null); Assert.IsNotNull(testResult); Assert.IsFalse(testResult == Pecuniam.Zero); System.Diagnostics.Debug.WriteLine(testResult); }
public void TestGetRandomRateFromClassicHook() { var testSubject = new AmericanIncome(); var testResult = testSubject.GetRandomRateFromClassicHook(); Assert.IsTrue(testResult >= 0D); testResult = testSubject.GetRandomRateFromClassicHook(69); Assert.IsTrue(testResult > 0D); System.Diagnostics.Debug.WriteLine(testResult); }
public void TestRandomIncome() { var testSubject = AmericanIncome.RandomIncome(new AmericanDomusOpesOptions { Inception = new DateTime(DateTime.Today.Year, 1, 1) }); Assert.IsNotNull(testSubject); Assert.IsNotNull(testSubject.MyItems); Assert.AreNotEqual(0, testSubject.MyItems.Count); }
public void TestToData() { var testSubject = AmericanIncome.RandomIncome(); var testResult = testSubject.ToData(KindsOfTextCase.Kabab); Assert.IsNotNull(testResult); Assert.AreNotEqual(0, testResult.Count); foreach (var tr in testResult.Keys) { Console.WriteLine($"{tr}, {testResult[tr]}"); } }
public void TestGetIncomeYearsInDates() { var testSubject = new AmericanIncome(); var testResult = testSubject.GetYearsInDates(testSubject.GetYearNeg(-3)); Assert.IsNotNull(testResult); Assert.AreEqual(4, testResult.Count); foreach (var t in testResult) { System.Diagnostics.Debug.WriteLine(t); } }
public void TestGetItemNames() { var testSubject = new AmericanIncome(); var testNames = testSubject.GetItemNames(); var allNames = WealthBaseTests.GetExpectedNamesFromXml("income"); var expectations = allNames.Select(n => n.Item2).Distinct(); foreach (var tn in testNames) { Assert.IsTrue(expectations.Any(e => string.Equals(e, tn.Name, StringComparison.OrdinalIgnoreCase))); System.Diagnostics.Debug.WriteLine(tn); } }
public void TestResolveItems() { var testSubject = new AmericanIncome(); testSubject.RandomizeAllItems(null); Assert.IsNotNull(testSubject.MyItems); Assert.AreNotEqual(0, testSubject.MyItems.Count); foreach (var item in testSubject.MyItems) { System.Diagnostics.Debug.WriteLine(item); } }
public void TestGetJudgementIncomeNames2RandomRates() { var testSubject = new AmericanIncome(); var testResult = testSubject.GetJudgmentIncomeNames2RandomRates(null); Assert.IsNotNull(testResult); Assert.AreNotEqual(0, testResult.Count); var testResultSum = testResult.Select(kv => kv.Value).Sum(); Assert.AreEqual(1D, Math.Round(testResultSum)); foreach (var rate in testResult) { System.Diagnostics.Debug.WriteLine(rate); } }
public void TestCtor() { var testSubject = new AmericanIncome(); Assert.IsNotNull(testSubject.MyItems); Assert.AreEqual(0, testSubject.MyItems.Count); testSubject.AddItem("Lottery", "Subito", 10000D.ToPecuniam()); var testResultSum = testSubject.Total; Assert.IsNotNull(testResultSum); Assert.AreNotEqual(Pecuniam.Zero, testResultSum); Assert.AreEqual(10000D.ToPecuniam(), testResultSum); testSubject.AddItem("something else", "Subitio", 900D.ToPecuniam()); testResultSum = testSubject.Total; Assert.IsNotNull(testResultSum); Assert.AreNotEqual(Pecuniam.Zero, testResultSum); Assert.AreEqual(10900D.ToPecuniam(), testResultSum); }
public void TestAddItems() { var testSubject = new AmericanIncome(); var testResult = testSubject.TotalAnnualGrossEmploymentIncome; Assert.AreEqual(Pecuniam.Zero, testResult); testResult = testSubject.TotalAnnualNetEmploymentIncome; Assert.AreEqual(Pecuniam.Zero, testResult); testResult = testSubject.Total; Assert.AreEqual(Pecuniam.Zero, testResult); testSubject.AddItem("stocks", "securities", 9000.0D.ToPecuniam()); testResult = testSubject.TotalAnnualGrossEmploymentIncome; Assert.AreEqual(Pecuniam.Zero, testResult); testResult = testSubject.TotalAnnualNetEmploymentIncome; Assert.AreEqual(Pecuniam.Zero, testResult); testResult = testSubject.Total; Assert.AreEqual(9000.0D.ToPecuniam(), testResult); testSubject.AddItem("savings", "Banks", 600.0D.ToPecuniam()); testResult = testSubject.TotalAnnualGrossEmploymentIncome; Assert.AreEqual(Pecuniam.Zero, testResult); testResult = testSubject.TotalAnnualNetEmploymentIncome; Assert.AreEqual(Pecuniam.Zero, testResult); testResult = testSubject.Total; Assert.AreEqual(9600.0D.ToPecuniam(), testResult); var testEmployment = new AmericanEmployment(); var occ = new SocDetailedOccupation { Value = "Accountant" }; testEmployment.Occupation = occ; testEmployment.AddItem("Salary", null, 55000.0); testSubject.AddEmployment(testEmployment); testResult = testSubject.TotalAnnualGrossEmploymentIncome; Assert.AreEqual(55000.0.ToPecuniam(), testResult); testResult = testSubject.TotalAnnualNetEmploymentIncome; Assert.AreEqual(55000.0.ToPecuniam(), testResult); testResult = testSubject.Total; Assert.AreEqual((55000.0 + 9600.0D).ToPecuniam(), testResult); var tax = new AmericanDeductions(testEmployment); testEmployment.Deductions = tax; var fedTax = 55000.0D * AmericanEquations.FederalIncomeTaxRate.SolveForY(55000.0); tax.AddItem("Federal", null, fedTax); testResult = testSubject.TotalAnnualGrossEmploymentIncome; Assert.AreEqual(55000.0.ToPecuniam(), testResult); testResult = testSubject.TotalAnnualNetEmploymentIncome; Assert.AreEqual((55000.0 - fedTax).ToPecuniam(), testResult); testResult = testSubject.Total; Assert.AreEqual((55000.0 + 9600.0D - fedTax).ToPecuniam(), testResult); }