public async Task DeleteStatistic_ValidInput_CharacterNoLongerHasValue() { // Arrange var context = new RpgContext(new GeneralOptions { UseInMemoryDatabase = true, DatabaseName = "DeleteStatistic_ValidInput_CharacterNoLongerHasValue" }); var provider = new EfStatisticProvider(context); var charProvider = new EfCharacterProvider(context); var strength = await provider.CreateAttributeAsync("strength"); await charProvider.CreateCharacterAsync(1, "bob"); var bob = await charProvider.GetActiveCharacterAsync(1); bob.SetStatistic(strength, new StatisticValue(5)); // Act bool valueDidExist = bob.GetStatistic(strength) is StatisticValue; await provider.DeleteStatisticAsync(strength); bob = await charProvider.GetActiveCharacterAsync(1); bool valueNoLongerExists = bob.GetStatistic(strength) is null; // Assert Assert.True(valueDidExist && valueNoLongerExists); }
public async Task EntityFramework_CharacterStatistics_EntityMatchesInput() { var context = new RpgContext(new GeneralOptions { UseInMemoryDatabase = true, DatabaseName = "CharacterStatistics_EntityMatchesInput" }); var provider = new EfCharacterProvider(context); var statProvider = new EfStatisticProvider(context); ulong userIdentifier = 305847674974896128; string name = "Melon Head"; int id = 1; var strength = await statProvider.CreateAttributeAsync("Strength"); var value = new StatisticValue(5); await provider.CreateCharacterAsync(id, userIdentifier, true, name); var result = await provider.GetActiveCharacterAsync(userIdentifier); result.SetStatistic(strength, value); await provider.UpdateCharacterAsync(result); result = await provider.GetActiveCharacterAsync(userIdentifier); Assert.True(result.Statistics.Count > 0); }
public async Task CreateStatistic_ValidInput_EntityMatchesInput() { var context = new RpgContext(new GeneralOptions { UseInMemoryDatabase = true, DatabaseName = "CreateStatistic_EntityMatchesInput" }); var provider = new EfStatisticProvider(context); await provider.CreateAttributeAsync("Strength"); var result = await provider.GetStatisticAsync("Strength"); Assert.Equal("Strength", result.Name); }
public async Task GetAllStatistics_ValidInput_EntityMatchesInput() { var context = new RpgContext(new GeneralOptions { UseInMemoryDatabase = true, DatabaseName = "GetAllStatistics_EntityMatchesInput" }); var statProvider = new EfStatisticProvider(context); await statProvider.CreateAttributeAsync("Strength"); await statProvider.CreateSkillAsync("Powerlifting", "Strength"); var result = await statProvider.GetAllStatisticsAsync(); Assert.Equal(2, result.Count()); }
public async Task UpdateStatistic_ValidInput_EntityMatchesInput() { var context = new RpgContext(new GeneralOptions { UseInMemoryDatabase = true, DatabaseName = "UpdateStatistic_EntityMatchesInput" }); var provider = new EfStatisticProvider(context); await provider.CreateAttributeAsync("Strength"); var result = await provider.GetStatisticAsync("Strength"); result.Name = "STR"; result.Aliases = "STR" + "/"; await provider.UpdateStatisticAsync(result); Assert.NotNull(await provider.GetStatisticAsync("STR")); }