예제 #1
0
        public void FormMessageTest()
        {
            FormMessageService formMessageService = new FormMessageService();
            SiteSettings       siteSettingsEmpty  = new SiteSettings()
            {
                SiteUrl         = string.Empty,
                TableClassID    = string.Empty,
                ColumnToCompare = string.Empty,
                CompareValue    = string.Empty,
                NotNullColumn   = string.Empty
            };
            SiteSettings siteSettingsNull = new SiteSettings()
            {
                SiteUrl         = null,
                TableClassID    = null,
                ColumnToCompare = null,
                CompareValue    = null,
                NotNullColumn   = null
            };
            SiteSettings siteSettingsRight = new SiteSettings()
            {
                SiteUrl         = "https://www.eurosport.ru/football/bundesliga/standing.shtml",
                TableClassID    = "standing-table",
                ColumnToCompare = "\u0412",
                CompareValue    = "10",
                NotNullColumn   = "\u0418"
            };

            Assert.NotNull(formMessageService.GetMessage(siteSettingsRight));
            Assert.NotNull(formMessageService.GetMessage(siteSettingsNull));
            Assert.NotNull(formMessageService.GetMessage(siteSettingsEmpty));
        }
예제 #2
0
        private async void StartButton_Click(object sender, RoutedEventArgs e)
        {
            EmailService       emailService       = new EmailService();
            FormMessageService formMessageService = new FormMessageService();

            foreach (var settingsList in _dataSettingsList)
            {
                EmailSettings emailSettings = new EmailSettings()
                {
                    EnableSSL         = settingsList.EnableSSL,
                    Host              = settingsList.Host,
                    Port              = settingsList.Port,
                    UserEmail         = settingsList.UserEmail,
                    UserName          = settingsList.UserEmail,
                    UserPassword      = settingsList.UserPassword,
                    TimeStartSettings = settingsList.TimeStartSettings
                };

                Message message = new Message()
                {
                    MessageBody    = settingsList.MessageBody,
                    MessageSubject = settingsList.MessageSubject,
                    RecieverEmail  = settingsList.RecieverEmail,
                    SenderEmail    = settingsList.SenderEmail,
                    SenderName     = settingsList.SenderName
                };

                SiteSettings siteSettings = new SiteSettings()
                {
                    SiteUrl         = settingsList.SiteUrl,
                    TableClassID    = settingsList.TableClassID,
                    ColumnToCompare = settingsList.ColumnToCompare,
                    CompareValue    = settingsList.CompareValue,
                    NotNullColumn   = settingsList.NotNullColumn
                };

                ShedulerService shedulerService = new ShedulerService(emailService, formMessageService, emailSettings, message, siteSettings);

                await shedulerService.Start();

                _shedulerServices.Add(shedulerService);
            }

            startButton.IsEnabled = false;
            stopButton.IsEnabled  = true;
            Logger.Info($"Scheduled [{_dataSettingsList.Count}] tasks launched");
        }
예제 #3
0
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            stopButton.IsEnabled = false;

            _dataIOService = new DataIOService(PATH);

            try
            {
                _dataSettingsList = _dataIOService.LoadData();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                Close();
            }


            gridEmailSender.ItemsSource    = _dataSettingsList;
            itemEmailSender.DataContext    = _dataSettingsList;
            _dataSettingsList.ListChanged += DataSettingsList_ListChanged;

            FormMessageService formMessageService = new FormMessageService();
        }