public void It_parses_integers() { Assert.Equal(1234m, DecimalParser.ParseOrNull("1234")); Assert.Equal(0m, DecimalParser.ParseOrNull("0")); Assert.Equal(0, DecimalParser.ParseOrNull(" 0", returnNullIfZero: false)); Assert.Equal(0, DecimalParser.ParseOrNull(" 0")); }
public void It_parses_decimals() { Assert.Equal(37.3m, DecimalParser.ParseOrNull("37,3")); Assert.Equal(37.3m, DecimalParser.ParseOrNull("37.3")); Assert.Equal(0.12345678910m, DecimalParser.ParseOrNull("0.12345678910")); Assert.Equal(37.0m, DecimalParser.ParseOrNull("00000037.00000000")); Assert.Equal(-37.0m, DecimalParser.ParseOrNull("-00000037.00000000")); Assert.Equal(-37.0m, DecimalParser.ParseOrNull("-00000037,00000000")); }
public void It_returns_null_if_parsing_empty_or_whitespace_or_invalid_string() { Assert.Null(DecimalParser.ParseOrNull(string.Empty)); Assert.Null(DecimalParser.ParseOrNull(" ")); Assert.Null(DecimalParser.ParseOrNull("\t\n ")); Assert.Null(DecimalParser.ParseOrNull(null)); Assert.Null(DecimalParser.ParseOrNull("abc")); Assert.Null(DecimalParser.ParseOrNull(" 0", returnNullIfZero: true)); Assert.Null(DecimalParser.ParseOrNull("0.0000000000", returnNullIfZero: true)); Assert.Null(DecimalParser.ParseOrNull(" 0x")); }
private void GenerateInvoicesBtn_Click(object sender, RoutedEventArgs e) { var validator = new InputValidator(); if (validator.IsValidInput(selectFileValue.Text, sheetValue.Text, rowValue.Text, selectDestinationValue.Text, companyNameValue.Text) == false) { return; } string readPath = selectFileValue.Text; int sheet = int.Parse(sheetValue.Text); int row = int.Parse(rowValue.Text); string savePathDir = selectDestinationValue.Text; string fullSavePath = $"{savePathDir}\\{fileNameTemplate}"; string company = companyNameValue.Text; IInvoiceParser invParser = new InvoiceParser(separator); IDecimalParser primParser = new DecimalParser(); IDateParser dateParser = new DateParser(); IReader reader = new ExcelReader(readPath, sheet, row, separator); IDocWriter writer = new DocWriter(); try { var engine = new Engine(invParser, primParser, dateParser, reader, writer, docTemplatePath, fullSavePath, company); engine.Start(); MessageBox.Show("Invoices created successfully."); this.ResetForm(); } catch (ArgumentNullException ex) { MessageBox.Show(ex.Message); } catch (ArgumentOutOfRangeException ex) { MessageBox.Show(ex.Message); } catch (ArgumentException ex) { MessageBox.Show(ex.Message); } catch (FileNotFoundException ex) { MessageBox.Show(ex.Message); } }
public void ValidDecimal_returnsDecimal() { Assert.AreEqual(100.2m, DecimalParser.Parse("100.2")); }
public void ValidIntValue_returnsDecimal() { Assert.AreEqual(100m, DecimalParser.Parse("100")); }