public async Task GetSettingValue_TestKeyString_ReturnsKeyValue()
        {
            // Arrange
            var options = DatabaseUtilities.GetTestDbConextOptions <CompanyNameProjectNameContext>();

            var testSetting = new Setting()
            {
                Key         = "TestKey",
                Value       = "TestValue",
                Type        = typeof(string).ToString(),
                DisplayName = "Test Key",
                Description = "For Testing GetSettingValue"
            };

            using (var context = new CompanyNameProjectNameContext(options))
            {
                context.Database.OpenConnection();
                context.Database.EnsureCreated();

                var settingsRepository = new SettingsRepository(context, MapperUtilities.GetTestMapper());
                await settingsRepository.CreateAsync(testSetting);
            }

            using (var context = new CompanyNameProjectNameContext(options))
            {
                var settingsRepository = new SettingsRepository(context, MapperUtilities.GetTestMapper());

                // Act
                var value = await settingsRepository.GetSettingValue("TestKey", string.Empty);

                // Assert
                Assert.AreEqual(value, testSetting.Value);
            }
        }
Esempio n. 2
0
        public async Task CreateAsync_AddsSettingAndSavesChanges()
        {
            var setting = new SettingEntity
            {
                Type  = SettingType.CaloriesPerDay,
                Value = "10"
            };
            string userId = Guid.NewGuid().ToString();

            _userHelperMock.SetupGet(p => p.UserId).Returns(userId);

            await _settingsRepository.CreateAsync(setting);

            Assert.AreEqual(userId, setting.UserId);
            _settingsMock.Verify(p => p.Add(setting), Times.Once);
            _dbContextMock.Verify(p => p.SaveChangesAsync(default), Times.Once);