public void FindActivePresetFilesIncludesUnknownCategories() { using var dirOpts = new TestFolder(_gof.FullName); dirOpts.WriteText(@"Bindings\StartPreset.start", "Custom\nCustom2\nKeyboard\nCustom\nCustom2"); var gof = new GameOptionsFolder(dirOpts.Name); Assert.True(gof.IsValid); var files = BindingPreset.FindActivePresetFiles(_gif, gof); Assert.Equal(_bindingCategories + 1, files.Count); var expected = new Dictionary <BindingCategory, string> { [BindingCategory.GeneralControls] = dirOpts.Resolve(@"Bindings\Custom.3.0.binds"), [BindingCategory.ShipControls] = dirOpts.Resolve(@"Bindings\Custom2.3.0.binds"), [BindingCategory.SrvControls] = Path.Combine(_gif.FullName, @"ControlSchemes\Keyboard.binds"), [BindingCategory.OnFootControls] = dirOpts.Resolve(@"Bindings\Custom.3.0.binds"), [(BindingCategory)4] = dirOpts.Resolve(@"Bindings\Custom2.3.0.binds"), }; foreach (var category in expected.Keys) { Assert.Equal(expected[category], files[category]); } }
public void FindActivePresetFilesReturnsNullWhenNeither1Or4PresetFilesAreDefined() { using var dirOpts = new TestFolder(_gof.FullName); dirOpts.WriteText(@"Bindings\StartPreset.start", "Custom\nCustom2"); var gof = new GameOptionsFolder(dirOpts.Name); Assert.True(gof.IsValid); var files = BindingPreset.FindActivePresetFiles(_gif, gof); Assert.Null(files); }
public void FindActivePresetFilesReturnsNullWhenAPresetFileIsMissing() { using var dirOpts = new TestFolder(_gof.FullName); dirOpts.WriteText(@"Bindings\StartPreset.start", "Custom\nCustom2\nMISSING_PRESET\nKeyboard"); var gof = new GameOptionsFolder(dirOpts.Name); Assert.True(gof.IsValid); var files = BindingPreset.FindActivePresetFiles(_gif, gof); Assert.Null(files); }
public void SupportsSingleLineStartPresets() { using var dirOpts = new TestFolder(_gof.FullName); dirOpts.WriteText(@"Bindings\StartPreset.start", "Custom"); var gof = new GameOptionsFolder(dirOpts.Name); Assert.True(gof.IsValid); var files = BindingPreset.FindActivePresetFiles(_gif, gof); Assert.Equal(_bindingCategories, files.Count); var expectedFile = dirOpts.Resolve(@"Bindings\Custom.3.0.binds"); Assert.All(files.Values, x => Assert.Equal(expectedFile, x)); }