public async Task Test_Sqlite_Sqlite_DataRetention() { var localDbFile = $"{Path.GetTempPath()}Test_Sqlite_Sqlite_DataRetention_local.sqlite"; var remoteDbFile = $"{Path.GetTempPath()}Test_Sqlite_Sqlite_DataRetention_remote.sqlite"; if (File.Exists(localDbFile)) { File.Delete(localDbFile); } if (File.Exists(remoteDbFile)) { File.Delete(remoteDbFile); } using (var localDb = new SqliteBlogDbContext($"Data Source={localDbFile}")) using (var remoteDb = new SqliteBlogDbContext($"Data Source={remoteDbFile}")) { await localDb.Database.EnsureDeletedAsync(); await remoteDb.Database.EnsureDeletedAsync(); await localDb.Database.MigrateAsync(); await remoteDb.Database.MigrateAsync(); var remoteConfigurationBuilder = new SqliteSyncConfigurationBuilder(remoteDb.ConnectionString) .Table("Users") .Table("Posts") .Table("Comments"); var remoteSyncProvider = new SqliteSyncProvider(remoteConfigurationBuilder.Build(), ProviderMode.Remote, logger: new ConsoleLogger("REM")); var localConfigurationBuilder = new SqliteSyncConfigurationBuilder(localDb.ConnectionString) .Table <User>("Users") .Table <Post>("Posts") .Table <Comment>("Comments"); var localSyncProvider = new SqliteSyncProvider(localConfigurationBuilder.Build(), ProviderMode.Local, logger: new ConsoleLogger("LOC")); await TestSyncAgentWithDataRetention(localDb, localSyncProvider, remoteDb, remoteSyncProvider); } }
public async Task Test1_Sqlite_Sqlite() { var localDbFile = $"{Path.GetTempPath()}Test1_Sqlite_Sqlite_local.sqlite"; var remoteDbFile = $"{Path.GetTempPath()}Test1_Sqlite_Sqlite_remote.sqlite"; if (File.Exists(localDbFile)) { File.Delete(localDbFile); } if (File.Exists(remoteDbFile)) { File.Delete(remoteDbFile); } using (var localDb = new SqliteBlogDbContext($"Data Source={localDbFile}")) using (var remoteDb = new SqliteBlogDbContext($"Data Source={remoteDbFile}")) { await localDb.Database.EnsureDeletedAsync(); await remoteDb.Database.EnsureDeletedAsync(); await localDb.Database.MigrateAsync(); await remoteDb.Database.MigrateAsync(); var remoteConfigurationBuilder = new SqliteSyncConfigurationBuilder(remoteDb.ConnectionString) .Table <User>("Users") .Table <Post>("Posts") .Table <Comment>("Comments"); var remoteSyncProvider = new SqliteSyncProvider(remoteConfigurationBuilder.Configuration); var localConfigurationBuilder = new SqliteSyncConfigurationBuilder(localDb.ConnectionString) .Table <User>("Users") .Table <Post>("Posts") .Table <Comment>("Comments"); var localSyncProvider = new SqliteSyncProvider(localConfigurationBuilder.Configuration); await Test1(localDb, localSyncProvider, remoteDb, remoteSyncProvider); } }
public async Task Test1_SqlServer_Sqlite() { var remoteDbFile = $"{Path.GetTempPath()}Test1_SqlServer_Sqlite_remote.sqlite"; if (File.Exists(remoteDbFile)) { File.Delete(remoteDbFile); } using var localDb = new SqlServerBlogDbContext(ConnectionString + ";Initial Catalog=Test1_Local"); using var remoteDb = new SqliteBlogDbContext($"Data Source={remoteDbFile}"); await localDb.Database.EnsureDeletedAsync(); await remoteDb.Database.EnsureDeletedAsync(); await localDb.Database.MigrateAsync(); await remoteDb.Database.MigrateAsync(); var remoteConfigurationBuilder = new SqliteSyncConfigurationBuilder(remoteDb.ConnectionString) .Table <User>("Users") .Table <Post>("Posts") .Table <Comment>("Comments"); var remoteSyncProvider = new SqliteSyncProvider(remoteConfigurationBuilder.Build(), logger: new ConsoleLogger("REM")); await remoteSyncProvider.ApplyProvisionAsync(); var localConfigurationBuilder = new SqlSyncConfigurationBuilder(localDb.ConnectionString) .Table("Users") .Table("Posts") .Table("Comments"); var localSyncProvider = new SqlSyncProvider(localConfigurationBuilder.Build(), logger: new ConsoleLogger("LOC")); await localSyncProvider.ApplyProvisionAsync(); await Test1(localDb, localSyncProvider, remoteDb, remoteSyncProvider); }