From 2bfabe27cd88e5db355a965d73240caf6398fe35 Mon Sep 17 00:00:00 2001 From: "Keim, Rob (Agoda)" Date: Mon, 12 Jun 2017 05:14:54 +0700 Subject: [PATCH] Add version of canonical data to generated test file --- exercises/acronym/AcronymTest.cs | 10 +++------- exercises/atbash-cipher/AtbashCipherTest.cs | 2 ++ exercises/beer-song/BeerSongTest.cs | 16 +++++++++------- exercises/food-chain/FoodChainTest.cs | 2 ++ exercises/hello-world/HelloWorldTest.cs | 8 +++++--- exercises/isogram/IsogramTest.cs | 8 ++++++++ exercises/leap/LeapTest.cs | 2 ++ exercises/luhn/LuhnTest.cs | 2 ++ exercises/nth-prime/NthPrimeTest.cs | 2 ++ exercises/perfect-numbers/PerfectNumbersTest.cs | 2 ++ exercises/pig-latin/PigLatinTest.cs | 2 ++ exercises/raindrops/RaindropsTest.cs | 2 ++ exercises/roman-numerals/RomanNumeralsTest.cs | 2 ++ .../rotational-cipher/RotationalCipherTest.cs | 2 ++ exercises/wordy/WordyTest.cs | 2 ++ generators/Classes/TestClass.cs | 1 + generators/Classes/TestClassRenderer.cs | 5 ++++- generators/Exercises/Exercise.cs | 3 ++- 18 files changed, 54 insertions(+), 19 deletions(-) diff --git a/exercises/acronym/AcronymTest.cs b/exercises/acronym/AcronymTest.cs index c4a526ae9e..8276ba2349 100644 --- a/exercises/acronym/AcronymTest.cs +++ b/exercises/acronym/AcronymTest.cs @@ -1,3 +1,5 @@ +// This file was auto-generated based on version 1.1.0 of the canonical data. + using Xunit; public class AcronymTest @@ -14,12 +16,6 @@ public void Lowercase_words() Assert.Equal("ROR", Acronym.Abbreviate("Ruby on Rails")); } - [Fact(Skip = "Remove to run test")] - public void PascalCase() - { - Assert.Equal("HTML", Acronym.Abbreviate("HyperText Markup Language")); - } - [Fact(Skip = "Remove to run test")] public void Punctuation() { @@ -43,4 +39,4 @@ public void Hyphenated() { Assert.Equal("CMOS", Acronym.Abbreviate("Complementary metal-oxide semiconductor")); } -} +} \ No newline at end of file diff --git a/exercises/atbash-cipher/AtbashCipherTest.cs b/exercises/atbash-cipher/AtbashCipherTest.cs index f3aeacf1f3..336d497047 100644 --- a/exercises/atbash-cipher/AtbashCipherTest.cs +++ b/exercises/atbash-cipher/AtbashCipherTest.cs @@ -1,3 +1,5 @@ +// This file was auto-generated based on version 1.0.0 of the canonical data. + using Xunit; public class AtbashCipherTest diff --git a/exercises/beer-song/BeerSongTest.cs b/exercises/beer-song/BeerSongTest.cs index aa0e30e669..bc1dcf5f22 100755 --- a/exercises/beer-song/BeerSongTest.cs +++ b/exercises/beer-song/BeerSongTest.cs @@ -1,3 +1,5 @@ +// This file was auto-generated based on version 1.0.0 of the canonical data. + using Xunit; public class BeerSongTest @@ -12,7 +14,7 @@ public void First_generic_verse() Assert.Equal(expected, BeerSong.Verse(99)); } - [Fact] + [Fact(Skip = "Remove to run test")] public void Last_generic_verse() { var expected = @@ -22,7 +24,7 @@ public void Last_generic_verse() Assert.Equal(expected, BeerSong.Verse(3)); } - [Fact] + [Fact(Skip = "Remove to run test")] public void Verse_2() { var expected = @@ -32,7 +34,7 @@ public void Verse_2() Assert.Equal(expected, BeerSong.Verse(2)); } - [Fact] + [Fact(Skip = "Remove to run test")] public void Verse_1() { var expected = @@ -42,7 +44,7 @@ public void Verse_1() Assert.Equal(expected, BeerSong.Verse(1)); } - [Fact] + [Fact(Skip = "Remove to run test")] public void Verse_0() { var expected = @@ -52,7 +54,7 @@ public void Verse_0() Assert.Equal(expected, BeerSong.Verse(0)); } - [Fact] + [Fact(Skip = "Remove to run test")] public void First_two_verses() { var expected = @@ -65,7 +67,7 @@ public void First_two_verses() Assert.Equal(expected, BeerSong.Verses(99, 98)); } - [Fact] + [Fact(Skip = "Remove to run test")] public void Last_three_verses() { var expected = @@ -81,7 +83,7 @@ public void Last_three_verses() Assert.Equal(expected, BeerSong.Verses(2, 0)); } - [Fact] + [Fact(Skip = "Remove to run test")] public void All_verses() { var expected = diff --git a/exercises/food-chain/FoodChainTest.cs b/exercises/food-chain/FoodChainTest.cs index 56541512fe..91ae55af8c 100644 --- a/exercises/food-chain/FoodChainTest.cs +++ b/exercises/food-chain/FoodChainTest.cs @@ -1,3 +1,5 @@ +// This file was auto-generated based on version 1.0.0 of the canonical data. + using Xunit; public class FoodChainTest diff --git a/exercises/hello-world/HelloWorldTest.cs b/exercises/hello-world/HelloWorldTest.cs index 8cd72f1d0e..2389b057d4 100644 --- a/exercises/hello-world/HelloWorldTest.cs +++ b/exercises/hello-world/HelloWorldTest.cs @@ -1,10 +1,12 @@ -using Xunit; +// This file was auto-generated based on version 1.0.0 of the canonical data. + +using Xunit; public class HelloWorldTest { [Fact] - public void Say_hi() + public void Say_hi_() { Assert.Equal("Hello, World!", HelloWorld.Hello()); } -} +} \ No newline at end of file diff --git a/exercises/isogram/IsogramTest.cs b/exercises/isogram/IsogramTest.cs index c140c598ca..cbb5143d51 100644 --- a/exercises/isogram/IsogramTest.cs +++ b/exercises/isogram/IsogramTest.cs @@ -1,3 +1,5 @@ +// This file was auto-generated based on version 1.1.0 of the canonical data. + using Xunit; public class IsogramTest @@ -49,4 +51,10 @@ public void Made_up_name_that_is_an_isogram() { Assert.True(Isogram.IsIsogram("Emily Jung Schwartzkopf")); } + + [Fact(Skip = "Remove to run test")] + public void Duplicated_character_in_the_middle() + { + Assert.False(Isogram.IsIsogram("accentor")); + } } \ No newline at end of file diff --git a/exercises/leap/LeapTest.cs b/exercises/leap/LeapTest.cs index 08cc344bf6..e4676a3ad8 100644 --- a/exercises/leap/LeapTest.cs +++ b/exercises/leap/LeapTest.cs @@ -1,3 +1,5 @@ +// This file was auto-generated based on version 1.0.0 of the canonical data. + using Xunit; public class LeapTest diff --git a/exercises/luhn/LuhnTest.cs b/exercises/luhn/LuhnTest.cs index e3aa4ceed8..6f48d6f9bc 100644 --- a/exercises/luhn/LuhnTest.cs +++ b/exercises/luhn/LuhnTest.cs @@ -1,3 +1,5 @@ +// This file was auto-generated based on version 1.0.0 of the canonical data. + using Xunit; public class LuhnTest diff --git a/exercises/nth-prime/NthPrimeTest.cs b/exercises/nth-prime/NthPrimeTest.cs index 9910b427ff..0ed1699694 100644 --- a/exercises/nth-prime/NthPrimeTest.cs +++ b/exercises/nth-prime/NthPrimeTest.cs @@ -1,3 +1,5 @@ +// This file was auto-generated based on version 1.0.0 of the canonical data. + using Xunit; using System; diff --git a/exercises/perfect-numbers/PerfectNumbersTest.cs b/exercises/perfect-numbers/PerfectNumbersTest.cs index 60ff732ffe..01b2a9e6df 100644 --- a/exercises/perfect-numbers/PerfectNumbersTest.cs +++ b/exercises/perfect-numbers/PerfectNumbersTest.cs @@ -1,3 +1,5 @@ +// This file was auto-generated based on version 1.0.1 of the canonical data. + using Xunit; using System; diff --git a/exercises/pig-latin/PigLatinTest.cs b/exercises/pig-latin/PigLatinTest.cs index 2d146f4360..76d7c349a2 100644 --- a/exercises/pig-latin/PigLatinTest.cs +++ b/exercises/pig-latin/PigLatinTest.cs @@ -1,3 +1,5 @@ +// This file was auto-generated based on version 1.0.0 of the canonical data. + using Xunit; public class PigLatinTest diff --git a/exercises/raindrops/RaindropsTest.cs b/exercises/raindrops/RaindropsTest.cs index 04b6612bda..67237785c3 100644 --- a/exercises/raindrops/RaindropsTest.cs +++ b/exercises/raindrops/RaindropsTest.cs @@ -1,3 +1,5 @@ +// This file was auto-generated based on version 1.0.0 of the canonical data. + using Xunit; public class RaindropsTest diff --git a/exercises/roman-numerals/RomanNumeralsTest.cs b/exercises/roman-numerals/RomanNumeralsTest.cs index b4fdf11641..2f0476d3ed 100644 --- a/exercises/roman-numerals/RomanNumeralsTest.cs +++ b/exercises/roman-numerals/RomanNumeralsTest.cs @@ -1,3 +1,5 @@ +// This file was auto-generated based on version 1.0.0 of the canonical data. + using Xunit; public class RomanNumeralsTest diff --git a/exercises/rotational-cipher/RotationalCipherTest.cs b/exercises/rotational-cipher/RotationalCipherTest.cs index 7e09290655..2fc55e6e47 100644 --- a/exercises/rotational-cipher/RotationalCipherTest.cs +++ b/exercises/rotational-cipher/RotationalCipherTest.cs @@ -1,3 +1,5 @@ +// This file was auto-generated based on version 1.0.0 of the canonical data. + using Xunit; public class RotationalCipherTest diff --git a/exercises/wordy/WordyTest.cs b/exercises/wordy/WordyTest.cs index 6754d1484b..2b76cab6cf 100644 --- a/exercises/wordy/WordyTest.cs +++ b/exercises/wordy/WordyTest.cs @@ -1,3 +1,5 @@ +// This file was auto-generated based on version 1.0.0 of the canonical data. + using Xunit; using System; diff --git a/generators/Classes/TestClass.cs b/generators/Classes/TestClass.cs index 281d4eb625..4be84ca6ca 100644 --- a/generators/Classes/TestClass.cs +++ b/generators/Classes/TestClass.cs @@ -10,5 +10,6 @@ public class TestClass public string BeforeTestMethods { get; set; } public TestMethod[] TestMethods { get; set; } public string AfterTestMethods { get; set; } + public string CanonicalDataVersion { get; set; } } } \ No newline at end of file diff --git a/generators/Classes/TestClassRenderer.cs b/generators/Classes/TestClassRenderer.cs index 82b2260724..6ab7446e91 100644 --- a/generators/Classes/TestClassRenderer.cs +++ b/generators/Classes/TestClassRenderer.cs @@ -7,7 +7,9 @@ namespace Generators.Classes public static class TestClassRenderer { private const string TestClassTemplate = -@"{UsingNamespaces} +@"// This file was auto-generated based on version {CanonicalDataVersion} of the canonical data. + +{UsingNamespaces} public class {ClassName} { @@ -16,6 +18,7 @@ public class {ClassName} public static string Render(TestClass testClass) => TestClassTemplate + .Replace("{CanonicalDataVersion}", testClass.CanonicalDataVersion) .Replace("{UsingNamespaces}", RenderUsingNamespaces(testClass)) .Replace("{ClassName}", testClass.ClassName) .Replace("{Body}", RenderBody(testClass)); diff --git a/generators/Exercises/Exercise.cs b/generators/Exercises/Exercise.cs index 6f1c38dfd8..00907a2a12 100644 --- a/generators/Exercises/Exercise.cs +++ b/generators/Exercises/Exercise.cs @@ -27,7 +27,8 @@ public TestClass CreateTestClass(CanonicalData canonicalData) var testClass = new TestClass { ClassName = Name.Transform(To.TestClassName), - TestMethods = CreateTestMethods(canonicalData).ToArray() + TestMethods = CreateTestMethods(canonicalData).ToArray(), + CanonicalDataVersion = canonicalData.Version }; AddTestMethodUsingNamespaces(testClass);