dotnet-object-storage/PoweredSoft.ObjectStorage.MongoDB.Tests/CrudTests.cs
David Lebee b789b367c2 initial
2019-02-12 17:39:16 -05:00

38 lines
1.1 KiB
C#

using System;
using System.Linq;
using System.Threading.Tasks;
using PoweredSoft.ObjectStorage.MongoDB.Tests.Mock;
using PoweredSoft.ObjectStorage.MongoDB.Tests.Mock.Dal;
using Xunit;
namespace PoweredSoft.ObjectStorage.MongoDB.Tests
{
public class CrudTests
{
[Fact]
public async Task CreateUpdateThenDelete()
{
var osc = MongoDatabaseFactory.GetObjectStorageClient();
var collection = osc.GetCollection<Contact>();
var contact = await collection.AddAsync(new Contact
{
FirstName = "Chuck",
LastName = "Not Norris"
});
Assert.NotNull(contact);
contact.LastName = "Norris";
var updatedContact = await collection.UpdateAsync(contact);
Assert.Equal("Norris", updatedContact.LastName);
// delete the test.
await collection.DeleteAsync(updatedContact);
// check that it was deleted.
var shouldBeNull = collection.AsQueryable().FirstOrDefault(t => t.Id == updatedContact.Id);
Assert.Null(shouldBeNull);
}
}
}