public void ToXML_EnsuresUSLocaleForDecimals()
{
CultureInfo existingCulture = CultureInfo.CurrentCulture;
try
{
#if netcore
CultureInfo.CurrentCulture = new CultureInfo("it-IT");
#else
Thread.CurrentThread.CurrentCulture = CultureInfo.GetCultureInfo("it-IT");
#endif
TransactionRequest transactionRequest = new TransactionRequest
{
Amount = 100.0M,
TaxAmount = 10.0M,
};
SubscriptionRequest subscriptionRequest = new SubscriptionRequest
{
Price = 200.0M,
};
SubscriptionTransactionRequest subscriptionTransactionRequest = new SubscriptionTransactionRequest
{
Amount = 300.0M
};
ModificationRequest modificationRequest = new ModificationRequest
{
Amount = 400.0M
};
TestHelper.AssertIncludes("<amount>100.00</amount>", transactionRequest.ToXml());
TestHelper.AssertIncludes("<tax-amount>10.00</tax-amount>", transactionRequest.ToXml());
TestHelper.AssertIncludes("<price>200.00</price>", subscriptionRequest.ToXml());
TestHelper.AssertIncludes("<amount>300.00</amount>", subscriptionTransactionRequest.ToXml());
TestHelper.AssertIncludes("<amount>400.00</amount>", modificationRequest.ToXml("root"));
}
finally
{
#if netcore
CultureInfo.CurrentCulture = existingCulture;
#else
Thread.CurrentThread.CurrentCulture = existingCulture;
#endif
}
}