public void Execute_AnyToAny_Any(object value) { var code = "any-to-any"; var provider = new NativeTransformer <string>(); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.EqualTo("(any)")); }
public void Execute_EmptyToNull_Null(string value) { var code = "empty-to-null"; var provider = new NativeTransformer <string>(); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.EqualTo("(null)")); }
public void Execute_NumericToClip_Valid(object value, object min, object max, decimal expected) { var code = $"numeric-to-clip({min}, {max})"; var provider = new NativeTransformer <decimal>(); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.EqualTo(expected)); }
public void Execute_NullToValue_NotValue(object value) { var code = "null-to-value"; var provider = new NativeTransformer <string>(); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.Not.EqualTo("(value)")); }
public void Execute_Whitespace_Valid(object value, string expected) { var code = "text-to-without-whitespaces"; var provider = new NativeTransformer <string>(); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.EqualTo(expected)); }
public void Execute_NumericToRound_Valid(object value, decimal expected) { var code = "numeric-to-round(2)"; var provider = new NativeTransformer <decimal>(); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.EqualTo(expected)); }
public void Execute_LocalToUtcWithCityName_Valid(object value, DateTime expected) { var code = "local-to-utc(Brussels)"; var provider = new NativeTransformer <DateTime>(); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.EqualTo(expected)); }
public void Execute_HtmlToText_Valid(object value) { var code = "html-to-text"; var provider = new NativeTransformer <string>(); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.EqualTo("Cédric")); }
public void Execute_TextToHtml_Valid(object value) { var code = "text-to-html"; var provider = new NativeTransformer <string>(); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.EqualTo("Cédric")); }
public void Execute_DateToAge_Min38(int month, int day, int age) { var code = "date-to-age"; var provider = new NativeTransformer <DateTime>(); provider.Initialize(code); var result = provider.Execute(new DateTime(1978, month, day)); Assert.That(result, Is.AtLeast(age)); }
public void Execute_LowerCase_abc(object value) { var code = "text-to-lower"; var provider = new NativeTransformer <string>(); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.EqualTo(" abc ")); }
public void Execute_Length_5(object value) { var code = "text-to-length"; var provider = new NativeTransformer <string>(); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.EqualTo(5)); }
public void Execute_BlankToEmpty_NotEmpty(string value) { var code = "blank-to-empty"; var provider = new NativeTransformer <string>(); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.Not.EqualTo("(empty)")); }
public void Execute_NumericToAddTimes_Valid(object value, object additional, object times, decimal expected) { var code = $"numeric-to-add({additional}, {times})"; var provider = new NativeTransformer <decimal>(new ServiceLocator(), null); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.EqualTo(expected)); }
public void Execute_NullToZero_Valid(object value, decimal expected) { var code = "null-to-zero"; var provider = new NativeTransformer <decimal>(new ServiceLocator(), null); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.EqualTo(expected)); }
public void Execute_TokenCount_Valid(object value, int expected) { var code = "text-to-token-count"; var provider = new NativeTransformer <string>(); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.EqualTo(expected)); }
public void Execute_NullToDate_Valid(object value, DateTime expected) { var code = "null-to-date(2001-01-01)"; var provider = new NativeTransformer <DateTime>(); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.EqualTo(expected)); }
public void Execute_ChainingTransformationsStartingByValue_Valid(object value, decimal expected) { var code = "value | null-to-empty | text-to-length"; var provider = new NativeTransformer <string>(new ServiceLocator(), null); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.EqualTo(expected)); }
public void Execute_DateTimeToAddTimeSpanWithoutTimes_Valid() { var code = $"dateTime-to-add(04:00:00)"; var provider = new NativeTransformer <DateTime>(new ServiceLocator(), null); provider.Initialize(code); var result = provider.Execute(new DateTime(2017, 12, 31, 21, 0, 0)); Assert.That(result, Is.EqualTo(new DateTime(2018, 01, 01, 01, 0, 0))); }
public void Execute_DateTimeToClip_Valid(object value, DateTime expected) { var code = $"dateTime-to-clip(2019-03-01, 2019-03-31)"; var provider = new NativeTransformer <DateTime>(new ServiceLocator(), null); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.EqualTo(expected)); }
public void Execute_NumericToMultiply_Valid(object value, object multiplicator, decimal expected) { var code = $"numeric-to-multiply({multiplicator})"; var provider = new NativeTransformer <decimal>(new ServiceLocator(), null); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.EqualTo(expected)); }
public void Execute_Diacritics_Valid(object value) { var code = "text-to-without-diacritics"; var provider = new NativeTransformer <string>(); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.EqualTo("Cedric")); }
public void Execute_DateTimeToDate_Valid(object value) { var code = "dateTime-to-date"; var provider = new NativeTransformer <DateTime>(); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.EqualTo(new DateTime(2018, 2, 1))); }
public void Execute_UtcToLocalWithStandardName_Valid(object value, DateTime expected) { var code = "utc-to-local(Romance Standard Time)"; var provider = new NativeTransformer <DateTime>(); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.EqualTo(expected)); }
public void Execute_Trim_NotABC(object value) { var code = "text-to-trim"; var provider = new NativeTransformer <string>(); provider.Initialize(code); var result = provider.Execute(value); Assert.That(result, Is.Not.EqualTo("ABC")); }
public void Execute_TextToLastCharsWithVariable_Valid() { var variables = new Dictionary <string, ITestVariable>() { { "length", new GlobalVariable(new LiteralScalarResolver <int>(6)) } }; var code = "text-to-last-chars(@length)"; var provider = new NativeTransformer <string>(new ServiceLocator(), new Context(variables)); provider.Initialize(code); var result = provider.Execute("123456789"); Assert.That(result, Is.EqualTo("456789")); }
public void Execute_NumericToCeiling_Valid(object value, decimal expected) { var code = "numeric-to-ceiling"; var provider = new NativeTransformer <decimal>(new ServiceLocator(), null); provider.Initialize(code); var result = provider.Execute(value); if (expected == 0) { Assert.That(result, Is.Null); } else { Assert.That(result, Is.EqualTo(expected)); } }
public void Execute_DateTimeToLastOfYear_Valid(object value, DateTime expected) { var code = "dateTime-to-last-of-year"; var provider = new NativeTransformer <DateTime>(); provider.Initialize(code); var result = provider.Execute(value); if (expected == new DateTime(1, 1, 1)) { Assert.That(result, Is.Null); } else { Assert.That(result, Is.EqualTo(expected)); } }
public void Execute_MultipleChains_Valid() { var code1 = $"path-to-filename-without-extension | text-to-dateTime(yyyyMMdd_HHmmss) | local-to-utc(Brussels)"; var provider1 = new NativeTransformer <string>(new ServiceLocator(), null); provider1.Initialize(code1); var result1 = provider1.Execute("20191001_141542.xml"); Assert.That(result1, Is.EqualTo(new DateTime(2019, 10, 01, 12, 15, 42))); var code2 = $"dateTime-to-floor-minute | dateTime-to-add(00:30:00, -1)"; var provider2 = new NativeTransformer <DateTime>(new ServiceLocator(), null); provider2.Initialize(code2); var result2 = provider2.Execute(result1); Assert.That(result2, Is.EqualTo(new DateTime(2019, 10, 01, 11, 45, 00))); }
public void Instantiate_DerivedFromMain_Success() { var resolver = new Mock <ISequenceResolver>(); resolver.Setup(x => x.Execute()).Returns(new[] { "BE_20190101", "BE_20190102", "BE_20190103", "BE_20190104", "BE_20190105" }); var firstTransformation = new NativeTransformer <string>(new ServiceLocator(), null);; firstTransformation.Initialize("text-to-first-chars(2)"); var secondTransformation = new NativeTransformer <string>(new ServiceLocator(), null);; secondTransformation.Initialize("text-to-last-chars(8) | text-to-dateTime(yyyyMMdd)"); var thirdTransformation = new NativeTransformer <DateTime>(new ServiceLocator(), null);; thirdTransformation.Initialize("dateTime-to-add(7)"); var args = new DerivedVariableInstanceArgs() { Name = "main", Resolver = resolver.Object, Derivations = new Dictionary <string, DerivationArgs>() { { "first", new DerivationArgs() { Source = "main", Transformer = firstTransformation } }, { "second", new DerivationArgs() { Source = "main", Transformer = secondTransformation } }, { "third", new DerivationArgs() { Source = "second", Transformer = thirdTransformation } } } }; var factory = new InstanceFactory(); var instances = factory.Instantiate(args); Assert.That(instances.Count, Is.EqualTo(5)); Assert.That(instances.ElementAt(0).Variables.Count, Is.EqualTo(4)); Assert.That(instances.ElementAt(0).Variables.ContainsKey("main"), Is.True); Assert.That(instances.ElementAt(0).Variables["main"].GetValue(), Is.EqualTo("BE_20190101")); Assert.That(instances.ElementAt(0).Variables.ContainsKey("first"), Is.True); Assert.That(instances.ElementAt(0).Variables["first"].GetValue(), Is.EqualTo("BE")); Assert.That(instances.ElementAt(0).Variables.ContainsKey("second"), Is.True); Assert.That(instances.ElementAt(0).Variables["second"].GetValue(), Is.EqualTo(new DateTime(2019, 1, 1))); Assert.That(instances.ElementAt(0).Variables.ContainsKey("third"), Is.True); Assert.That(instances.ElementAt(0).Variables["third"].GetValue(), Is.EqualTo(new DateTime(2019, 1, 8))); Assert.That(instances.ElementAt(1).Variables.Count, Is.EqualTo(4)); Assert.That(instances.ElementAt(1).Variables.ContainsKey("main"), Is.True); Assert.That(instances.ElementAt(1).Variables["main"].GetValue(), Is.EqualTo("BE_20190102")); Assert.That(instances.ElementAt(1).Variables.ContainsKey("first"), Is.True); Assert.That(instances.ElementAt(1).Variables["first"].GetValue(), Is.EqualTo("BE")); Assert.That(instances.ElementAt(1).Variables.ContainsKey("second"), Is.True); Assert.That(instances.ElementAt(1).Variables["second"].GetValue(), Is.EqualTo(new DateTime(2019, 1, 2))); Assert.That(instances.ElementAt(1).Variables.ContainsKey("third"), Is.True); Assert.That(instances.ElementAt(1).Variables["third"].GetValue(), Is.EqualTo(new DateTime(2019, 1, 9))); }