public void Save_WhenNoValueIsSet_SavesEmptyStringInTheCache()
        {
            // Act
            _viewModel.Save();

            // Assert
            _keyDataStore.Received()
            .SetValue(_key, Arg.Is <string>(value => string.IsNullOrEmpty(value)));
        }
        public void Save_Always_SavesTheValueInTheCache()
        {
            // Arrange
            var viewModel = new StringCachedPropertyDecorator(_keyDataStore, _key);

            viewModel.Value = "Game of Thrones";

            // Act
            viewModel.Save();

            // Assert
            _keyDataStore.Received()
            .SetValue(_key, "Game of Thrones");
        }