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);
            }
        }
示例#2
0
        /// <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);
 }
示例#9
0
        /// <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;
        }