private static void TestTemplateStyles(this ICommandAdapter adapter)
 {
     adapter.Execute(new ActionCommand("Linked styles template"));
     adapter.Execute(new EditorActionNewCommand <DocumentStyleManager>(m => m.DocumentStyleLinkTemplate));
     adapter.Execute(new FillObjectViewCommand <DocumentStyleLinkTemplate>((template => template.Name, "Template")));
     adapter.Execute(new ActionCommand(Actions.SaveAndClose));
     adapter.Execute(new ProcessRecordCommand <DocumentStyleManager, DocumentStyle>(manager => manager.ReplacementStyles,
                                                                                    (style => style.StyleName, "QuoteV2"))
     {
         SuppressExceptions = true
     });
 public static void TestDocumentStyleManager(this ICommandAdapter adapter)
 {
     adapter.Execute(new NavigateCommand("DocumentStyleManager.Document Object".CompoundName()));
     adapter.Execute(new ProcessRecordCommand("DocumentObject", ("Name", "Test document 1")));
     adapter.Execute(new ActionCommand("StyleManager"));
     adapter.Execute(new MoveWindowCommand());
     // await adapter.TestAllStyles();
     adapter.TestDeleteStyles();
     adapter.TestImportStyles();
     // await adapter.TestReplaceStyles();
     adapter.TestTemplateStyles();
     adapter.TestApplyStyles();
 }
        internal void ProcessRecord(string tableName, string[] columnNames, string[] values, string actionName)
        {
            ProcessRecordCommand command = new ProcessRecordCommand();

            command.SetApplicationOptions(testApplication);
            command.ProcessRecord(adapter, tableName, actionName, columnNames, values);
        }
        private static async Task TestJob(this ICommandAdapter adapter, WorkerState workerState, int workersCount)
        {
            adapter.Execute(new ActionCommand("Trigger"));

            adapter.Execute(new ActionCommand(nameof(Job.Workers)));
            await adapter.Execute(() => adapter.Execute(new ActionCommand(Actions.Refresh), new CheckListViewCommand <Job>(job => job.Workers, workersCount)));

            adapter.Execute(new SelectObjectsCommand <Job>(job => job.Workers, nameof(JobWorker.State), new [] { workerState.ToString() }));
            //
            // adapter.Execute(new ActionCommand("Dashboard"));
            // await adapter.Execute(() => {
            //     var webDriver = adapter.Driver();
            //     webDriver.SwitchTo().Window(webDriver.WindowHandles[1]);
            //     webDriver.Url.ShouldContain("/hangfire/jobs/details/");
            //     webDriver.Close();
            //     webDriver.SwitchTo().Window(webDriver.WindowHandles[0]);
            // });
            adapter.Execute(new ProcessRecordCommand <Job, JobWorker>(job => job.Workers, (worker => worker.State, workerState.ToString())));
            adapter.Execute(new ActionCommand(Actions.OK));
        }