public async Task ConstructorSqlToTable() { var c = new ConfigValues() { StorageAccountConnection = "UseDevelopmentStorage=true;", SqlConnection = "Server=localhost;Database=King.BTrak.Data;Trusted_Connection=True;", SqlTableName = "TableData", StorageTableName = "sqlserverdata", Direction = Direction.SqlToTable, }; var id = Guid.NewGuid(); var data = Guid.NewGuid(); var statement = string.Format("INSERT INTO [dbo].[TestSqlToTable] ([Id], [Data]) VALUES ('{0}', '{1}');", id, data); var executor = new Executor(new SqlConnection(c.SqlConnection)); await executor.NonQuery(statement); var s = new Synchronizer(c); await s.Run(); await executor.NonQuery("TRUNCATE TABLE [dbo].[TestSqlToTable]"); var table = new TableStorage(c.StorageTableName, c.StorageAccountConnection); var e = await table.QueryByPartitionAndRow("[dbo].[TestSqlToTable]", id.ToString()); Assert.IsNotNull(e); Assert.AreEqual(data, e["Data"]); }
public async Task ConstructorTableToSql() { var c = new ConfigValues() { StorageAccountConnection = "UseDevelopmentStorage=true;", SqlConnection = "Server=localhost;Database=King.BTrak.Data;Trusted_Connection=True;", SqlTableName = "TableData", StorageTableName = "sqlserverdata", Direction = Direction.TableToSql, }; var tableName = "testsynctabletosql"; var table = new TableStorage(tableName, c.StorageAccountConnection); await table.CreateIfNotExists(); var entity = new TableEntity { PartitionKey = Guid.NewGuid().ToString(), RowKey = Guid.NewGuid().ToString(), }; await table.InsertOrReplace(entity); var s = new Synchronizer(c); await s.Run(); await table.Delete(); var statement = string.Format("SELECT 1 AS [Exists] FROM [dbo].[TableData] WHERE TableName='{0}' AND PartitionKey = '{1}' AND RowKey = '{2}';", tableName, entity.PartitionKey, entity.RowKey); var executor = new Executor(new SqlConnection(c.SqlConnection)); var ds = await executor.Query(statement); var r = ds.Model<DataRow>(); Assert.IsNotNull(r); Assert.IsTrue(r.Exists); }
public void SyncDirection() { var expected = Direction.SqlToTable; var c = new ConfigValues { Direction = expected, }; Assert.AreEqual(expected, c.Direction); }
public void SqlTableName() { var expected = Guid.NewGuid().ToString(); var c = new ConfigValues { SqlTableName = expected, }; Assert.AreEqual(expected, c.SqlTableName); }
public void StorageAccountConnection() { var expected = Guid.NewGuid().ToString(); var c = new ConfigValues { StorageAccountConnection = expected, }; Assert.AreEqual(expected, c.StorageAccountConnection); }
public void IsISynchronizer() { var c = new ConfigValues() { StorageAccountConnection = "UseDevelopmentStorage=true;", SqlConnection = "Server=server;Database=database;Trusted_Connection=True;", SqlTableName = "tabletable", StorageTableName = "tabletable", Direction = Direction.SqlToTable, }; Assert.IsNotNull(new Synchronizer(c) as ISynchronizer); }
public void ConstructorSqlToTable() { var c = new ConfigValues() { StorageAccountConnection = "UseDevelopmentStorage=true;", SqlConnection = "Server=server;Database=database;Trusted_Connection=True;", SqlTableName = "tabletable", StorageTableName = "tabletable", Direction = Direction.SqlToTable, }; new Synchronizer(c); }