public void Generate_List_For_CreateColumnFamilyMetdata_UnitTest() { const string parents = "test"; var child=new ColumnFamilyName {Columnfamilyname = "account", Ischecked = true}; var metadata = new ColumnFamilyMetadata { ColumnName = "id", Columnfamilyname = "user", Type = null, Validator = "utf8type" }; child.ChildMetadata.Add(metadata); var exportList = new List<PocoObjectListForExport>(); var parent = new PocoObjectListForExport {NamespaceName = "test", ClassName = "account"}; var firstChild = new PocoListofObjects {Type = "string", ColumnFamilyName = "id"}; parent.PocoListObjects.Add(firstChild); exportList.Add(parent); var expected = exportList; var actual = Reader.GenerateListForColumnFamilyMetdata(parents, child); Assert.IsNotNull(actual); Assert.IsTrue(actual.Count > 0); Assert.AreEqual(expected[0].ClassName, actual[0].ClassName); Assert.AreEqual(expected[0].NamespaceName, actual[0].NamespaceName); Assert.IsTrue(actual[0].PocoListObjects.Count > 0); for (var i = 0; i < actual[0].PocoListObjects.Count; i++) { Assert.AreEqual(expected[0].PocoListObjects[i].Type, actual[0].PocoListObjects[i].Type); Assert.AreEqual(expected[0].PocoListObjects[i].ColumnFamilyName, actual[0].PocoListObjects[i].ColumnFamilyName); } }
/// <summary> /// Convert Fetched Data to List format. /// </summary> /// <param name="nmspcenameName"></param> /// <param name="columnFamilyName"></param> /// <param name="keyDataType"></param> /// <param name="columnsAndDataType"></param> /// <param name="isCqlScript"></param> /// <returns>Returns List</returns> public static PocoObjectListForExport ConvertGeneratedMetaDataToListFormat(string nmspcenameName,string columnFamilyName,string keyDataType, Dictionary<string,string> columnsAndDataType, bool isCqlScript) { _initializeMappings = new Mapper(); _initializeMappings.InitializeDataTypeMappings(); var pocoChildList = new List<PocoListofObjects>(); var exportPocoItem = new PocoObjectListForExport { ClassName = columnFamilyName, NamespaceName = String.IsNullOrEmpty(nmspcenameName) ? KeyspaceName : nmspcenameName }; foreach (var columnName in columnsAndDataType.Keys) { var pocoChildItem = new PocoListofObjects { ColumnFamilyName = columnName, Type = isCqlScript ? _initializeMappings.DataTypes[String.Concat(columnsAndDataType[columnName], "type")] : _initializeMappings.DataTypes[columnsAndDataType[columnName]] }; pocoChildList.Add(pocoChildItem); } exportPocoItem.PocoListObjects = pocoChildList; return exportPocoItem; }
public void Convert_Fetched_Data_To_Export_Format_In_PocoToDB() { const string keyspaceName = "test"; const string columnFamilyName = "account"; var pocoChildList = new List<PocoListofObjects>(); var pocoChildItem = new PocoListofObjects {Type = "string"}; pocoChildItem.Type = "name"; pocoChildList.Add(pocoChildItem); var exportPocoItem=new PocoObjectListForExport { NamespaceName = "test", ClassName = "account", PocoListObjects = pocoChildList }; var expected = exportPocoItem; var actual = LangParser.ConvertFetchedDataToExportFormatInPocoToDb(keyspaceName, columnFamilyName, pocoChildList); Assert.AreEqual(expected.NamespaceName, actual.NamespaceName); Assert.AreEqual(expected.ClassName, actual.ClassName); Assert.IsNotNull(actual); Assert.IsTrue(actual.PocoListObjects.Count > 0); for (var i = 0; i < actual.PocoListObjects.Count; i++) { Assert.AreEqual(expected.PocoListObjects[i].Type, actual.PocoListObjects[i].Type); Assert.AreEqual(expected.PocoListObjects[i].ColumnFamilyName, actual.PocoListObjects[i].ColumnFamilyName); } }
public void Read_Per_Script_From_ExportList_UnitTest() { ScriptReader.ReinitializeExportList(); var parent = new PocoObjectListForExport {NamespaceName = "test", ClassName = "account"}; var child = new PocoListofObjects {Type = "string", ColumnFamilyName = "UserName"}; parent.PocoListObjects.Add(child); const string expected = "create table test.account\r\n(\r\nUserName string,\r\nPRIMARY KEY(UserName) \n)\r\n"; var actual = Reader.ReadPerScriptFromExportList(parent); Assert.AreEqual(expected, actual); }
public void GenerateSummary_If_List_Provided() { const string expected = "Total Number of keyspaces : 1\r\n\r\nKeyspace Name : test\r\nColumnFamily Count : 1\r\nColumnFamily Name : CreateTestClass\r\n\r\n"; var exportList = new List<PocoObjectListForExport>(); var exportItem = new PocoObjectListForExport {NamespaceName = "test", ClassName = "CreateTestClass"}; var pocoObjItem = new PocoListofObjects {Type = "varchar", ColumnFamilyName = "idname"}; exportItem.PocoListObjects.Add(pocoObjItem); exportList.Add(exportItem); ScriptReader.ReinitializeExportList(); var actual = ListSummary.GenerateSummary(exportList); Assert.AreEqual(expected,actual); }
public void ConvertListToVbScriptUnitTestForSingleFile() { var exportPocoList = new List<PocoObjectListForExport>(); var exportItem = new PocoObjectListForExport(); const string namespaceName = "test"; exportItem.NamespaceName = namespaceName; exportItem.ClassName = "CreateTestClass"; var pocoObjItem = new PocoListofObjects {Type = "varchar", ColumnFamilyName = "idname"}; exportItem.PocoListObjects.Add(pocoObjItem); exportPocoList.Add(exportItem); const string expected = "Imports System\r\nNamespace test\r\n\r\n\r\nPublic Class CreateTestClass\r\n\r\nPublic Property varchar As idname\r\n\r\nEnd Class\r\n\r\n\r\nEnd Namespace\r\n"; var actual = _vbWriter.Writer(exportPocoList, null, namespaceName); Assert.AreEqual(expected, actual); }
public void ConvertListToCSharpScriptUnitTestForSingleFileOption() { var exportPocoList = new List<PocoObjectListForExport>() ; var exportItem=new PocoObjectListForExport(); const string namespaceName = "test"; exportItem.NamespaceName = namespaceName; exportItem.ClassName = "CreateTestClass"; var pocoObjItem = new PocoListofObjects {Type = "varchar", ColumnFamilyName = "idname"}; exportItem.PocoListObjects.Add(pocoObjItem); exportPocoList.Add(exportItem); const string expected = "using System\r\nnamespace test\r\n{\r\npublic class CreateTestClass\r\n{\r\npublic varchar idname { get; set; } \n}\r\n\r\n\r\n}\r\n"; var actual = _csharpLang.Writer(exportPocoList, null, namespaceName); Assert.AreEqual(expected,actual); }
public void CreateDbScriptFromList() { var pocoChildList = new List<PocoListofObjects>(); var pocoChildItem = new PocoListofObjects {Type = "string"}; pocoChildItem.Type = "name"; pocoChildList.Add(pocoChildItem); var exportList = new List<PocoObjectListForExport>(); var exportPocoItem = new PocoObjectListForExport { NamespaceName = "test", ClassName = "account", PocoListObjects = pocoChildList }; exportList.Add(exportPocoItem); const string expected = "create table test.account\r\n(\r\n name,\r\nPRIMARY KEY() \n)\r\n\r\n"; var actual = LangParser.CreateCqlScriptFromList(exportList); Assert.AreEqual(expected, actual); }
/// <summary> /// This function converts Metadata to List. /// </summary> /// <param name="columnsAndDataType"></param> /// <returns>Returns Metadata List</returns> public static List<PocoListofObjects> PocoObjectListMetadata(Dictionary<string,string> columnsAndDataType) { if (columnsAndDataType == null) throw new ArgumentNullException("columnsAndDataType"); _initializeMappings = new Mapper(); _initializeMappings.InitializeDataTypeMappings(); var pocoChildList = new List<PocoListofObjects>(); foreach (var columnData in columnsAndDataType) { var pocoChildItem = new PocoListofObjects {ColumnFamilyName = columnData.Key}; //string type = initializeMappings.DataTypes.Where(kvp => kvp.Value.ToLower() == columnData.Value.ToLower()).Select(kvp => kvp.Key).FirstOrDefault(); var type = _initializeMappings.DataTypes.Where(kvp => String.Equals(kvp.Value, columnData.Value, StringComparison.CurrentCultureIgnoreCase)) .Select(kvp => kvp.Key).FirstOrDefault(); if (type != null) pocoChildItem.Type = type.Remove(type.IndexOf("type", StringComparison.Ordinal)); pocoChildList.Add(pocoChildItem); } return pocoChildList; }