Best NBi code snippet using NBi.Core.Transformation.Transformer.Native.DateTimeToFirstOfYear.DateTimeToAdd
DateToPointInTimeTest.cs
Source:DateToPointInTimeTest.cs
...139 [TestCase("2019-03-11 17:00:00", 0, "04:00:00", "2019-03-11 17:00:00")]140 [TestCase("2019-03-11 17:00:00", 1, "04:00:00", "2019-03-11 21:00:00")]141 [TestCase("2019-03-11 17:00:00", 2, "04:00:00", "2019-03-12 01:00:00")]142 [TestCase("2019-03-11 17:00:00", -1, "04:00:00", "2019-03-11 13:00:00")]143 public void Execute_DateTimeToAdd_Valid(object value, int times, string timeSpan, DateTime expected)144 {145 var function = new DateTimeToAdd(new LiteralScalarResolver<string>(timeSpan), new LiteralScalarResolver<int>(times));146 var result = function.Evaluate(value);147 Assert.That(result, Is.EqualTo(expected));148 }149 [Test]150 [TestCase("2019-03-11 17:00:00", 0, "04:00:00", "2019-03-11 17:00:00")]151 [TestCase("2019-03-11 17:00:00", 1, "04:00:00", "2019-03-11 13:00:00")]152 [TestCase("2019-03-11 17:00:00", 5, "04:00:00", "2019-03-10 21:00:00")]153 [TestCase("2019-03-11 17:00:00", -1, "04:00:00", "2019-03-11 21:00:00")]154 public void Execute_DateTimeToSubtract_Valid(object value, int times, string timeSpan, DateTime expected)155 {156 var function = new DateTimeToSubtract(new LiteralScalarResolver<string>(timeSpan), new LiteralScalarResolver<int>(times));157 var result = function.Evaluate(value);158 Assert.That(result, Is.EqualTo(expected));159 }...
DateTimeTransformations.cs
Source:DateTimeTransformations.cs
...135 {136 protected override object EvaluateDateTime(DateTime value)137 => value.AddTicks(TimeSpan.TicksPerMinute - (value.Ticks % TimeSpan.TicksPerMinute == 0 ? TimeSpan.TicksPerMinute : value.Ticks % TimeSpan.TicksPerMinute));138 }139 class DateTimeToAdd : AbstractDateTimeTransformation140 {141 public IScalarResolver<int> Times { get; }142 public IScalarResolver<string> TimeSpan { get; }143 public DateTimeToAdd(IScalarResolver<string> timeSpan, IScalarResolver<int> times)144 => (TimeSpan, Times) = (timeSpan, times);145 public DateTimeToAdd(IScalarResolver<string> timeSpan)146 : this(timeSpan, new LiteralScalarResolver<int>(1)) { }147 protected override object EvaluateDateTime(DateTime value)148 => value.AddTicks(System.TimeSpan.Parse(TimeSpan.Execute()).Ticks * Times.Execute());149 }150 class DateTimeToSubtract : DateTimeToAdd151 {152 public DateTimeToSubtract(IScalarResolver<string> timeSpan, IScalarResolver<int> times)153 : base(timeSpan, times) { }154 public DateTimeToSubtract(IScalarResolver<string> timeSpan)155 : base(timeSpan) { }156 protected override object EvaluateDateTime(DateTime value)157 => value.AddTicks(System.TimeSpan.Parse(TimeSpan.Execute()).Ticks * Times.Execute() * -1);158 }159}...
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!