static void GenerateFromList() { var sample = new ClassWithProps() { EnumProperty = EnumValues.Value2, IntProperty = 4 }; var sample2 = new ClassWithProps() { EnumProperty = EnumValues.Value2, IntProperty = 4 }; var list = new List <ClassWithProps>() { sample, sample2 }; var nameSpace = "SampleNameSpace"; var className = "TestClass"; var compileUnit = new CDSeedGenerator(nameSpace, className); compileUnit.AddSeedData(list); string fileName = GetPathForClass(className); using (var sw = new StreamWriter(fileName)) { compileUnit.WriteToStream(sw); } }
public void CDSeedGenerator_AddSeedData_CreatesListVariable() { var expectedContents = "= new System.Collections.Generic.List<CodeDomDynamicGeneratorTests.TestClass>()"; var cdCompile = new CDSeedGenerator(nameSpace, className); cdCompile.AddSeedData(testData); var actual = WriteCompileUnitContents(cdCompile); Assert.Contains(expectedContents, actual); }
public void CDSeedGenerator_AddSeedData_ImportsNamespaceOfSeedType() { var expectedContents = $"using {testData[1].GetType().Namespace};"; var cdCompile = new CDSeedGenerator(nameSpace, className); cdCompile.AddSeedData(testData); var actual = WriteCompileUnitContents(cdCompile); Assert.Contains(expectedContents, actual); }
public void CDSeedGenerator_AddSeedData_CreatesMethod() { var expectedContents = "public static System.Collections.Generic.IEnumerable<CodeDomDynamicGeneratorTests.TestClass> GenerateSeedData()"; var cdCompile = new CDSeedGenerator(nameSpace, className); cdCompile.AddSeedData(testData); var actual = WriteCompileUnitContents(cdCompile); Assert.Contains(expectedContents, actual); }
public void CDSeedGenerator_AddSeedData_ContainsReturn() { var expectedContents = $"return seedData"; var cdCompile = new CDSeedGenerator(nameSpace, className); cdCompile.AddSeedData(testData); var actual = WriteCompileUnitContents(cdCompile); Assert.Contains(expectedContents, actual); }
public void CDSeedGenerator_AddSeedData_AddInputItemsToList() { var expectedOccureneces = testData.Count; var cdCompile = new CDSeedGenerator(nameSpace, className); cdCompile.AddSeedData(testData); var output = WriteCompileUnitContents(cdCompile); // Using split as a quick way to test the count is correct var addOccurences = output.Split(".Add(").Count() - 1; Assert.Equal(expectedOccureneces, addOccurences); }