public void CheckForLostTablesTest() { var cn = 0; var tableCount = -1; var columnCount = -1; var prevList = new List <MTable>(); var rs = true; while (cn++ < 20) { var dbMeta = DbMsSqlMetadata.Load(ConnStr, 0); if (tableCount == -1) { tableCount = dbMeta.TableList.Count; continue; } Assert.AreEqual(dbMeta.TableList.Any(), true); if (prevList.Count != 0) { rs = rs || CheckAndPrintDiff(dbMeta, dbMeta.TableList, prevList); } //Assert.AreEqual(dbMeta.TableList.Count, tableCount, "Is not equals tables count");// HOW ???? prevList = dbMeta.TableList; } Assert.AreEqual(rs, true, "In some iteration has have lost table"); }
public static DbMsSqlMetadata LoadWithJsonConfig() { // in some cases, you want to store the connection string in one place // for example, for T4 scripts and for test // in this example I use json file stored in a root path of solution // find roor path var rootPath = GetSolutionPath("MsSqlMetadataLoader"); var configFile = $"{rootPath}\\GenerationConfig.json"; // load joson var jsonString = File.ReadAllText(configFile); // deserialize to config class var testConfig = JsonSerializer.Deserialize <GenerationConfig>(jsonString); // convert time out from sec to min var timeOutMin = testConfig.ReloadMetadataTimeoutSec / 60.0; // load metadata from db var meta = DbMsSqlMetadata.Load(testConfig.ConnectionString, timeOutMin); return(meta); }
public static DbMsSqlMetadata Load() { // easy way - to set a connection string in code // connection string specific for current project var connStr = @"Server=localhost\EX2017;Database=VTSDB3;Trusted_Connection=True;"; // load metadata from db var meta = DbMsSqlMetadata.Load(connStr); // set extended data meta.TableList.ForEach(t => { //TableAddAttributes - custom class t.Tag = new TableAddAttributes(); t.GetTag <TableAddAttributes>().AddAttrList.Add("[PropGridAttr]"); t.ColumnList.ForEach(c => { c.Tag = new ColumnAddAttributes(); c.GetTag <ColumnAddAttributes>().AddAttrList.Add("[ColGridAttr]"); }); }); return(meta); }
public void LoadMetadataTest() { var dbMeta = DbMsSqlMetadata.Load(ConnStr, 0.1); Assert.AreEqual(dbMeta.TableList.Any(), true); }