Best NBi code snippet using NBi.Core.Transformation.Transformer.Native.UtcToLocal
TextTest.cs
Source: TextTest.cs
...389 [TestCase("2019-11-01T19:58Z", "yyyy-MM-ddTHH:mmZ", "Brussels", "2019-11-01 20:58:00")]390 [TestCase("2019-10-01T19:58Z", "yyyy-MM-ddTHH:mmZ", "Brussels", "2019-10-01 21:58:00")]391 [TestCase("2019-10-01T19:58Z", "yyyy-MM-ddTHH:mmZ", "Moscow", "2019-10-01 22:58:00")]392 [TestCase("2019-10-01T19:58Z", "yyyy-MM-ddTHH:mmZ", "Pacific Standard Time", "2019-10-01 12:58:00")]393 public void Execute_TextToDateTimeAndUtcToLocal_Valid(string value, string format, string timeZone, DateTime expected)394 {395 var textToDateTime = new TextToDateTime(new LiteralScalarResolver<string>(format));396 var utcToLocal = new UtcToLocal(new LiteralScalarResolver<string>(timeZone));397 var result = utcToLocal.Evaluate(textToDateTime.Evaluate(value));398 Assert.That(result, Is.EqualTo(expected));399 Assert.That(((DateTime)result).Kind, Is.EqualTo(DateTimeKind.Unspecified));400 }401 [Test]402 [TestCase("20190317111223", "yyyyMMddhhmmss", "fr-fr", "2019-03-17 11:12:23")]403 [TestCase("mercredi 25-sept.-19", "dddd dd-MMM-yy", "fr-fr", "2019-09-25")]404 public void Execute_TextToDateTimeWithCulture_Valid(string value, string format, string culture, DateTime expected)405 {406 var function = new TextToDateTime(new LiteralScalarResolver<string>(format), new LiteralScalarResolver<string>(culture));407 var result = function.Evaluate(value);408 Assert.That(result, Is.EqualTo(expected));409 }410 [Test]...
NativeTransformationFactoryTest.cs
...47 {48 var factory = new NativeTransformationFactory(new ServiceLocator(), null);;49 var result = factory.Instantiate("utc-to-local(Brussels)");50 Assert.That(result, Is.AssignableTo<INativeTransformation>());51 Assert.That(result, Is.TypeOf<UtcToLocal>());52 Assert.That((result as UtcToLocal).TimeZoneLabel, Is.AssignableTo<IScalarResolver>());53 Assert.That((result as UtcToLocal).TimeZoneLabel, Is.AssignableTo<IScalarResolver<string>>());54 Assert.That((result as UtcToLocal).TimeZoneLabel, Is.TypeOf<LiteralScalarResolver<string>>());55 Assert.That((result as UtcToLocal).TimeZoneLabel.Execute(), Is.EqualTo("Brussels"));56 }57 [Test]58 public void Instantiate_ExistingWithParameterIncludingSpaces_CorrectType()59 {60 var factory = new NativeTransformationFactory(new ServiceLocator(), null);;61 var result = factory.Instantiate("utc-to-local( Romance Standard Time )");62 Assert.That(result, Is.AssignableTo<INativeTransformation>());63 Assert.That(result, Is.TypeOf<UtcToLocal>());64 Assert.That((result as UtcToLocal).TimeZoneLabel.Execute(), Is.EqualTo("Romance Standard Time"));65 }66 [Test]67 public void Instantiate_ExistingWithParameterAndWhitespaces_CorrectType()68 {69 var factory = new NativeTransformationFactory(new ServiceLocator(), null);;70 var result = factory.Instantiate("\r\n\t\t\tutc-to-local(Brussels) \t\r\n");71 Assert.That(result, Is.AssignableTo<INativeTransformation>());72 Assert.That(result, Is.TypeOf<UtcToLocal>());73 Assert.That((result as UtcToLocal).TimeZoneLabel.Execute(), Is.EqualTo("Brussels"));74 }75 [Test]76 public void Instantiate_ExistingWithParameters_CorrectType()77 {78 var factory = new NativeTransformationFactory(new ServiceLocator(), null);;79 var result = factory.Instantiate("numeric-to-clip(10, 2000)");80 Assert.That(result, Is.AssignableTo<INativeTransformation>());81 Assert.That(result, Is.TypeOf<NumericToClip>());82 Assert.That((result as NumericToClip).Min.Execute(), Is.EqualTo(10));83 Assert.That((result as NumericToClip).Max.Execute(), Is.EqualTo(2000));84 }85 [Test]86 public void Instantiate_ExistingWithParametersAndWhitespaces_CorrectType()87 {...
TimeZoneTransformations.cs
Source: TimeZoneTransformations.cs
...5using System.Text;6using System.Threading.Tasks;7namespace NBi.Core.Transformation.Transformer.Native8{9 class UtcToLocal : AbstractDateTimeTransformation10 {11 public IScalarResolver<string> TimeZoneLabel { get; }12 public UtcToLocal(IScalarResolver<string> timeZoneLabel)13 {14 TimeZoneLabel = timeZoneLabel;15 }16 protected override object EvaluateDateTime(DateTime value) =>17 TimeZoneInfo.ConvertTimeFromUtc(value, InstantiateTimeZoneInfo(TimeZoneLabel.Execute()));18 protected TimeZoneInfo InstantiateTimeZoneInfo(string label)19 {20 var zones = TimeZoneInfo.GetSystemTimeZones();21 var zone = zones.SingleOrDefault(z => z.Id == label)22 ?? zones.SingleOrDefault(z => Tokenize(z.DisplayName).Contains(label.Replace(" ", "")));23 return zone ?? throw new ArgumentOutOfRangeException($"TimeZone '{label}' is not existing on this computer.");24 }25 private string[] Tokenize(string label) =>26 label.Replace("(", ",")27 .Replace(")", ",")28 .Replace(":", ",")29 .Replace(" ", "")30 .Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);31 }32 class LocalToUtc : UtcToLocal33 {34 public LocalToUtc(IScalarResolver<string> timeZoneLabel)35 : base(timeZoneLabel)36 { }37 protected override object EvaluateDateTime(DateTime value) =>38 TimeZoneInfo.ConvertTimeToUtc(value, InstantiateTimeZoneInfo(TimeZoneLabel.Execute()));39 }40}...
Check out the latest blogs from LambdaTest on this topic:
If you pay close attention, you’ll notice that toggle switches are all around us because lots of things have two simple states: either ON or OFF (in binary 1 or 0).
Agile has unquestionable benefits. The mainstream method has assisted numerous businesses in increasing organizational flexibility as a result, developing better, more intuitive software. Distributed development is also an important strategy for software companies. It gives access to global talent, the use of offshore outsourcing to reduce operating costs, and round-the-clock development.
Recently, I was going through some of the design patterns in Java by reading the book Head First Design Patterns by Eric Freeman, Elisabeth Robson, Bert Bates, and Kathy Sierra.
The QA testing profession requires both educational and long-term or experience-based learning. One can learn the basics from certification courses and exams, boot camp courses, and college-level courses where available. However, developing instinctive and practical skills works best when built with work experience.
JavaScript is one of the most widely used programming languages. This popularity invites a lot of JavaScript development and testing frameworks to ease the process of working with it. As a result, numerous JavaScript testing frameworks can be used to perform unit testing.
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!!