Пример #1
0
        public void Value_ShouldBe_Default_WhenMode_IsDefault()
        {
            // Arrange
            var defaultValue = new DefaultConfig().Value();

            _default.Value().Returns(defaultValue);
            var config = new CustomConfig(ConfigMode.Default, _default, _storage);
            // Act
            var result = config.Value();

            // Assert
            result.Should().Be(defaultValue);
        }
Пример #2
0
        public Config Value()
        {
            if (_mode == ConfigMode.Default)
            {
                return(_default.Value());
            }

            var value = _storage.Value();

            if (value != null)
            {
                return(value);
            }

            value = _default.Value();
            if (_mode == ConfigMode.CustomOrSavedDefault)
            {
                _storage.Save(value);
            }

            return(value);
        }