public async Task CheckExistsAsyncReturnsFalseWithInvalidData(string reference) { // Arrange // Use existing records from constructor PartitionedTestObject _object = new PartitionedTestObject { Id = reference, Partition = "partition" }; // Act bool objectExists = await _storageProvider.CheckExistsAsync(_object); //Assert Assert.False(objectExists); }
public async Task DeleteAsyncFailsWithInvalidData(string reference) { // Arrange // Use existing records from constructor PartitionedTestObject _object = new PartitionedTestObject { Id = reference, Partition = "partition" }; // Act var deletion = await _storageProvider.DeleteAsync(_object); await Task.Delay(6000); // Assert IQueryable <PartitionedTestObject> query = await _storageProvider.Query(); Assert.False(deletion); Assert.Equal(2, query.Where(e => e.Partition == "partition").Count()); }
public async Task DeleteAsyncSucceedsWithValidData(string reference) { // Arrange // Use existing records from constructor PartitionedTestObject _object = new PartitionedTestObject { Id = reference, Partition = "partition" }; // Act var deletion = await _storageProvider.DeleteAsync(_object); await Task.Delay(6000); // Assert IQueryable <PartitionedTestObject> query = await _storageProvider.Query(); Assert.True(deletion); Assert.Single(query.Where(e => e.Partition == "partition")); }
public async Task UpsertAsyncFailsToUpdateObjectWithExistingKeyAndMissingDoctype(string reference) { // Arrange // Use existing records from constructor ILogger log = new StubLogger(); PartitionedTestObject _object = new PartitionedTestObject() { Id = reference, Partition = "partition", InnerObject = "myNewString" }; // Act var exception = await Record.ExceptionAsync(() => _storageProvider.UpsertAsync(_object)); // Assert Assert.IsType <Exception>(exception); Assert.Equal("There was at least one validation error. Please provide the appropriate information.", exception.Message); IQueryable <PartitionedTestObject> query = await _storageProvider.Query(); Assert.Equal(2, query.Where(doc => doc.Partition == "partition").Count()); }
public async Task UpsertAsyncUpdatesObjectWithExistingKey(string reference) { // Arrange // Use existing records from constructor ILogger log = new StubLogger(); PartitionedTestObject _object = new PartitionedTestObject() { Id = reference, Partition = "partition", InnerObject = "myNewString", Doctype = "show" }; // Act await _storageProvider.UpsertAsync(_object); // Assert IQueryable <PartitionedTestObject> query = (IQueryable <PartitionedTestObject>) await _storageProvider.Query(); Assert.Equal(2, query.Where(e => e.Partition == "partition").Count()); Assert.Single(query.Where(e => e.InnerObject == "myNewString" && e.Partition == "partition")); Assert.Equal(reference, query.Where(e => e.InnerObject == "myNewString" && e.Partition == "partition").Take(1).ToList().First().Id); }
public async Task UpdateAsyncSucceedsWithValidKeyAndData(string reference) { // Arrange // Use existing records from constructor ILogger log = new StubLogger(); PartitionedTestObject _object = new PartitionedTestObject() { Id = reference, Partition = "partition", InnerObject = "myNewString", Doctype = "show" }; // Act var update = await _storageProvider.UpdateAsync(_object); // Assert IQueryable <PartitionedTestObject> query = (IQueryable <PartitionedTestObject>) await _storageProvider.Query(); Assert.True(update); Assert.Equal(2, query.Where(doc => doc.Partition == "partition").Count()); Assert.Equal("myNewString", query.Where(e => e.Id == reference && e.Partition == "partition").Take(1).ToList().First().InnerObject); Assert.Single(query.Where(e => e.InnerObject == "myNewString" && e.Partition == "partition")); }