public void TestCheckBox() { using (var workspace = TestWorkspace.CreateCSharp("")) { var serviceProvider = new MockServiceProvider(workspace.ExportProvider); var optionStore = new OptionStore(workspace.Options, Enumerable.Empty <IOption>()); using (var viewModel = new SpacingViewModel(optionStore, serviceProvider)) { // Use the first item's preview. var checkbox = viewModel.Items.OfType <CheckBoxOptionViewModel>().First(); viewModel.SetOptionAndUpdatePreview(checkbox.IsChecked, checkbox.Option, checkbox.GetPreview()); // Get a checkbox and toggle it var originalPreview = GetText(viewModel); checkbox.IsChecked = !checkbox.IsChecked; var modifiedPreview = GetText(viewModel); Assert.NotEqual(modifiedPreview, originalPreview); // Switch it back checkbox.IsChecked = !checkbox.IsChecked; Assert.Equal(originalPreview, viewModel.TextViewHost.TextView.TextBuffer.CurrentSnapshot.GetText().ToString()); } } }
public async Task TestCheckBox() { using (var workspace = await CSharpWorkspaceFactory.CreateWorkspaceFromFileAsync("")) { var serviceProvider = new MockServiceProvider(workspace.ExportProvider); using (var viewModel = new SpacingViewModel(workspace.Options, serviceProvider)) { // Use the first item's preview. var checkbox = viewModel.Items.OfType <CheckBoxOptionViewModel>().First(); viewModel.SetOptionAndUpdatePreview(checkbox.IsChecked, checkbox.Option, checkbox.GetPreview()); // Get a checkbox and toggle it var originalPreview = GetText(viewModel); checkbox.IsChecked = !checkbox.IsChecked; var modifiedPreview = GetText(viewModel); Assert.NotEqual(modifiedPreview, originalPreview); // Switch it back checkbox.IsChecked = !checkbox.IsChecked; Assert.Equal(originalPreview, viewModel.TextViewHost.TextView.TextBuffer.CurrentSnapshot.GetText().ToString()); } } }