Best NBi code snippet using NBi.Core.Transformation.Transformer.Native.DateToAge.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!!
