public async Task <IWebDriver> CreateDriver(CaseUpdater updater, Configuration configuration, AppSetting setting, Main form) { configuration = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); IEnumerable <int> pidsBefore = await Task.Run(() => Process.GetProcessesByName("chrome").Select(p => p.Id)); IWebDriver driver = await GetNew(configuration); driver.Url = "https://u4.my.salesforce.com/"; await Task.Run(() => driver.Manage().Window.Maximize()); await Task.Run(() => driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(10)); await Task.Run(() => driver.FindElement(By.Id("username")).SendKeys(setting.GetUserName())); await Task.Run(() => driver.FindElement(By.Id("password")).SendKeys(setting.GetPassword() + OpenQA.Selenium.Keys.Enter)); IEnumerable <int> pidsAfter = Process.GetProcessesByName("chrome").Select(p => p.Id); IEnumerable <int> driverPids = pidsAfter.Except(pidsBefore); List <int> driverslist = driverPids.ToList(); _driverProcessIDs.AddRange(driverslist); form.salesforceLabel.Invoke(new Action(() => form.salesforceLabel.Visible = true)); return(driver); }
public Main(AppSetting setting, MouseClicker mover, CaseUpdater updater, DriverCreator creator, AutoDispatcher autoDispatcher, Context context) { _setting = setting; _mover = mover; _updater = updater; _config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); _creator = creator; _autoDispatcher = autoDispatcher; _context = context; _main = this; InitializeComponent(); }
static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); AppSetting setting = new AppSetting(); MouseClicker mover = new MouseClicker(); CaseUpdater updater = new CaseUpdater(); DriverCreator creator = new DriverCreator(); Context context = new Context(); AutoDispatcher dispatcher = new AutoDispatcher(context); Application.Run(new Main(setting, mover, updater, creator, dispatcher, context)); }