public void WhenKeyEmpty_ThenDefaultsAreProvided()
        {
            var baseKey    = hkcu.CreateSubKey(TestKeyPath);
            var repository = new ToolWindowStateRepository(baseKey);

            var settings = repository.GetSetting(
                "Sample1",
                DockState.Unknown);

            Assert.AreEqual(DockState.Unknown, settings.DockState.EnumValue);
            Assert.AreEqual(DockState.Unknown, settings.DockState.DefaultValue);
        }
        public void WhenSettingsSaved_ThenSettingsCanBeRead()
        {
            var baseKey    = hkcu.CreateSubKey(TestKeyPath);
            var repository = new ToolWindowStateRepository(baseKey);

            var settings = repository.GetSetting(
                "Sample1",
                DockState.Unknown);

            settings.DockState.EnumValue = DockState.Float;
            repository.SetSetting(settings);

            settings = repository.GetSetting(
                "Sample1",
                DockState.Unknown);

            Assert.AreEqual(DockState.Float, settings.DockState.EnumValue);
        }