public async Task Reminders_AzureTable_InsertNewRowAndReadBack() { log.Info(TestContext.TestName); string deploymentId = NewDeploymentId(); IReminderTable table = new AzureBasedReminderTable(); var config = new GlobalConfiguration() { ServiceId = ServiceId, DeploymentId = deploymentId, DataConnectionString = StorageTestConstants.DataConnectionString }; await table.Init(config, log); ReminderEntry[] rows = (await GetAllRows(table)).ToArray(); Assert.AreEqual(0, rows.Count(), "The reminder table (sid={0}, did={1}) was not empty.", ServiceId, deploymentId); ReminderEntry expected = NewReminderEntry(); await table.UpsertRow(expected); rows = (await GetAllRows(table)).ToArray(); Assert.AreEqual(1, rows.Count(), "The reminder table (sid={0}, did={1}) did not contain the correct number of rows (1).", ServiceId, deploymentId); ReminderEntry actual = rows[0]; Assert.AreEqual(expected.GrainRef, actual.GrainRef, "The newly inserted reminder table (sid={0}, did={1}) row did not contain the expected grain reference.", ServiceId, deploymentId); Assert.AreEqual(expected.ReminderName, actual.ReminderName, "The newly inserted reminder table (sid={0}, did={1}) row did not have the expected reminder name.", ServiceId, deploymentId); Assert.AreEqual(expected.Period, actual.Period, "The newly inserted reminder table (sid={0}, did={1}) row did not have the expected period.", ServiceId, deploymentId); // the following assertion fails but i don't know why yet-- the timestamps appear identical in the error message. it's not really a priority to hunt down the reason, however, because i have high confidence it is working well enough for the moment. /*Assert.AreEqual(expected.StartAt, actual.StartAt, "The newly inserted reminder table (sid={0}, did={1}) row did not contain the correct start time.", ServiceId, deploymentId);*/ Assert.IsFalse(string.IsNullOrWhiteSpace(actual.ETag), "The newly inserted reminder table (sid={0}, did={1}) row contains an invalid etag.", ServiceId, deploymentId); }
public async Task Reminders_AzureTable_InsertNewRowAndReadBack() { string clusterId = NewClusterId(); var clusterOptions = Options.Create(new ClusterOptions { ClusterId = clusterId, ServiceId = this.serviceId }); var storageOptions = Options.Create(new AzureTableReminderStorageOptions()); storageOptions.Value.ConfigureTestDefaults(); IReminderTable table = new AzureBasedReminderTable(this.fixture.Services.GetRequiredService <GrainReferenceKeyStringConverter>(), this.loggerFactory, clusterOptions, storageOptions); await table.Init(); ReminderEntry[] rows = (await GetAllRows(table)).ToArray(); Assert.Empty(rows); // "The reminder table (sid={0}, did={1}) was not empty.", ServiceId, clusterId); ReminderEntry expected = NewReminderEntry(); await table.UpsertRow(expected); rows = (await GetAllRows(table)).ToArray(); Assert.Single(rows); // "The reminder table (sid={0}, did={1}) did not contain the correct number of rows (1).", ServiceId, clusterId); ReminderEntry actual = rows[0]; Assert.Equal(expected.GrainRef, actual.GrainRef); // "The newly inserted reminder table (sid={0}, did={1}) row did not contain the expected grain reference.", ServiceId, clusterId); Assert.Equal(expected.ReminderName, actual.ReminderName); // "The newly inserted reminder table (sid={0}, did={1}) row did not have the expected reminder name.", ServiceId, clusterId); Assert.Equal(expected.Period, actual.Period); // "The newly inserted reminder table (sid={0}, did={1}) row did not have the expected period.", ServiceId, clusterId); // the following assertion fails but i don't know why yet-- the timestamps appear identical in the error message. it's not really a priority to hunt down the reason, however, because i have high confidence it is working well enough for the moment. /*Assert.Equal(expected.StartAt, actual.StartAt); // "The newly inserted reminder table (sid={0}, did={1}) row did not contain the correct start time.", ServiceId, clusterId);*/ Assert.False(string.IsNullOrWhiteSpace(actual.ETag), $"The newly inserted reminder table (sid={this.serviceId}, did={clusterId}) row contains an invalid etag."); }
public async Task Reminders_AzureTable_InsertRate() { var siloOptions = Options.Create(new SiloOptions { ClusterId = "TMSLocalTesting", ServiceId = this.ServiceId }); IReminderTable table = new AzureBasedReminderTable(this.fixture.Services.GetRequiredService<IGrainReferenceConverter>(), this.loggerFactory, siloOptions); var config = new GlobalConfiguration() { DataConnectionString = TestDefaultConfiguration.DataConnectionString }; await table.Init(config); await TestTableInsertRate(table, 10); await TestTableInsertRate(table, 500); }
public async Task Reminders_AzureTable_InsertRate() { IReminderTable table = new AzureBasedReminderTable(this.fixture.Services.GetRequiredService <IGrainReferenceConverter>(), this.loggerFactory); var config = new GlobalConfiguration() { ServiceId = ServiceId, DeploymentId = "TMSLocalTesting", DataConnectionString = TestDefaultConfiguration.DataConnectionString }; await table.Init(config); await TestTableInsertRate(table, 10); await TestTableInsertRate(table, 500); }
public async Task Reminders_AzureTable_InsertRate() { IReminderTable table = new AzureBasedReminderTable(); var config = new GlobalConfiguration() { ServiceId = ServiceId, DeploymentId = "TMSLocalTesting", DataConnectionString = TestDefaultConfiguration.DataConnectionString }; await table.Init(config, log); await TestTableInsertRate(table, 10); await TestTableInsertRate(table, 500); }
public async Task Reminders_AzureTable_InsertRate() { var clusterOptions = Options.Create(new ClusterOptions { ClusterId = "TMSLocalTesting", ServiceId = this.serviceId }); var storageOptions = Options.Create(new AzureTableReminderStorageOptions()); storageOptions.Value.ConfigureTestDefaults(); IReminderTable table = new AzureBasedReminderTable(this.fixture.Services.GetRequiredService <GrainReferenceKeyStringConverter>(), this.loggerFactory, clusterOptions, storageOptions); await table.Init(); await TestTableInsertRate(table, 10); await TestTableInsertRate(table, 500); }
public async Task Reminders_AzureTable_InsertRate() { log.Info(TestContext.TestName); IReminderTable table = new AzureBasedReminderTable(); var config = new GlobalConfiguration() { ServiceId = ServiceId, DeploymentId = "TMSLocalTesting", DataConnectionString = StorageTestConstants.DataConnectionString }; await table.Init(config, log); await TestTableInsertRate(table, 10); await TestTableInsertRate(table, 500); }