public void Format_StringScalarToken_SpecialCharactersAreEscaped() { var output = new StringWriter(); var formater = new JsonPropertyFormatter(output); var token = new ScalarToken(" \" "); token.Render(formater); Assert.Equal("\" \\\" \"", output.ToString()); }
public void Format_NullScalarToken_IsFormatedAsNullString() { var output = new StringWriter(); var formater = new JsonPropertyFormatter(output); var token = new ScalarToken(null); token.Render(formater); Assert.Equal("null", output.ToString()); }
public void Render_SomeFormatter_FormatterIsCalled() { var formatterMock = new Mock <IPropertyFormatter>(); var formatter = formatterMock.Object; var scalar = new ScalarToken(null); scalar.Render(formatter); formatterMock.Verify(m => m.Format(scalar), Times.Once); }
public void Format_NonFormattableScalarToken_IsFormatedFromToString() { var output = new StringWriter(); var formater = new JsonPropertyFormatter(output); var value = new Nonformatable(); var token = new ScalarToken(value); token.Render(formater); Assert.Equal(value.ToString(), output.ToString()); }
public void Format_IntScalarToken_IsFormatedAsNumber() { var output = new StringWriter(); var formater = new JsonPropertyFormatter(output); decimal value = Some.Int(); var token = new ScalarToken(value); token.Render(formater); Assert.Equal(value.ToString(CultureInfo.InvariantCulture), output.ToString()); }
public void Format_DecimalScalarToken_IsFormatedUsingSpecificCulture() { var formatProvider = new CultureInfo("cs-CZ"); var output = new StringWriter(); var formater = new JsonPropertyFormatter(output, formatProvider); decimal value = Some.Decimal(); var token = new ScalarToken(value); token.Render(formater); Assert.Equal(value.ToString(formatProvider), output.ToString()); }
public void Render_NullFormatter_ThrowsArgumentNullException() { var scalar = new ScalarToken(null); Assert.Throws <ArgumentNullException>(() => scalar.Render(null)); }