Sha256: 476d80cf1c318375a025f081d63dcbe3e8c9c38b87633c16e1253bb4498c5b3a
Contents?: true
Size: 1.93 KB
Versions: 28
Compression:
Stored size: 1.93 KB
Contents
using System; using System.Collections.Generic; using Generators.Input; using Generators.Output; using Humanizer; namespace Generators.Exercises { public class Meetup : GeneratorExercise { private const string ParamYear = "year"; private const string ParamMonth = "month"; private const string ParamWeek = "week"; private const string ParamDayOfWeek = "dayofweek"; private const string PropertyDay = "Day"; protected override void UpdateCanonicalData(CanonicalData canonicalData) { foreach (var canonicalDataCase in canonicalData.Cases) { canonicalDataCase.Property = PropertyDay; canonicalDataCase.UseVariableForExpected = true; canonicalDataCase.SetConstructorInputParameters(ParamMonth, ParamYear); canonicalDataCase.SetInputParameters(ParamDayOfWeek, ParamWeek); canonicalDataCase.Input[ParamYear] = canonicalDataCase.Input[ParamYear]; canonicalDataCase.Input[ParamMonth] = canonicalDataCase.Input[ParamMonth]; canonicalDataCase.Input[ParamWeek] = new UnescapedValue($"Schedule.{((string)canonicalDataCase.Input[ParamWeek]).Transform(To.SentenceCase)}"); canonicalDataCase.Input[ParamDayOfWeek] = new UnescapedValue($"DayOfWeek.{((string)canonicalDataCase.Input[ParamDayOfWeek]).Transform(To.SentenceCase)}"); } } protected override String RenderTestMethodBodyAssert(TestMethodBody testMethodBody) { string template = $"Assert.Equal({{{{ ExpectedParameter }}}}, {{{{ TestedValue }}}}.ToString(\"yyyy-MM-dd\"));"; return TemplateRenderer.RenderInline(template, testMethodBody.AssertTemplateParameters); } protected override HashSet<String> AddAdditionalNamespaces() => new HashSet<string> { typeof(DayOfWeek).Namespace }; } }
Version data entries
28 entries across 28 versions & 1 rubygems