Example #1
0
        static void Main(string[] args)
        {
            var dataProcessor = new InputDataProcessor();
            var loaderOptions = new CrawlerOptions();

            ShowMenu(dataProcessor, loaderOptions);
            StartCrawler(loaderOptions, dataProcessor);
        }
        public WebPageTab(WebDriver webDriver, string testName, string pageInput)
        {
            _driver      = webDriver.Driver;
            _driverWait  = webDriver.DriverWait;
            _testContext = webDriver.TestContext;

            _inputDataProcessor = new InputDataProcessor(testName, pageInput + TabInputSuffix);
        }
Example #3
0
        private static void StartCrawler(CrawlerOptions crawlerOptions, InputDataProcessor dataProcessor)
        {
            var documentProcessor = new DocumentProcessor(crawlerOptions.SavingDirectory);

            using (var siteLoader = new Crawler(crawlerOptions, dataProcessor, documentProcessor))
            {
                try
                {
                    siteLoader.LoadSite(crawlerOptions.Depth).Wait();
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.Message);
                }
            }

            Console.WriteLine("Finished!");
            Console.ReadKey();
        }
Example #4
0
        public WebPage(WebDriver webDriver, string testName, WebPageInputProcessing inputProcessing = WebPageInputProcessing.Immediate)
        {
            _driver      = webDriver.Driver;
            _driverWait  = webDriver.DriverWait;
            _testContext = webDriver.TestContext;
            _testName    = testName;

            ValidateInitialState();

            _inputDataProcessor = new InputDataProcessor(testName, PageInput);

            if (inputProcessing == WebPageInputProcessing.Immediate)
            {
                // Navigate to test page
                ProcessNavigateData();

                // Process input data for page
                ProcessInputData();
            }
        }
Example #5
0
        private void Start()
        {
            //Level Generator
            HexagonGridGenerator = new HexagonGridGenerator(LevelData, ref blocks, ref gridBounds);
            randomGenerator      = new RandomGenerator(RandomAlgorithmType.JustRandom, LevelData.LevelBlocktypes);
            randomGenerator.GenerateRandom(blocks);

            //Making camera center based on grid position
            mainCamera.transform.position = gridBounds.center + gridCameraOffset;

            ///Input Systems
            colliderGenerator    = new ColliderGenerator(gridBounds);
            inputReader          = new InputReader(mainCamera);
            inputDataProcessor   = new InputDataProcessor(ref blocks);
            emptyRefillgenerator = new EmptyRefillGenerator(ref blocks, randomGenerator, LevelData.movementSpeed);

            //Update Loop UnityContext
            GameObject @object = new GameObject("UnityContext");

            context = @object.AddComponent <UnityContext>();
            context.AddListener(inputReader.UpdateLoop);
            context.AddListener(emptyRefillgenerator.UpdateLoop);
        }
Example #6
0
        private static void ShowMenu(InputDataProcessor dataProcessor, CrawlerOptions crawlerOptions)
        {
            while (true)
            {
                Console.Write("Start url: ");
                var url = Console.ReadLine();

                if (dataProcessor.TrySetResourceUrl(url, crawlerOptions) == false)
                {
                    ShowErrorMessage("URL is not correct. Please, try again.");
                    continue;
                }

                Console.Write("Directory name: ");
                var directory = Console.ReadLine();

                try
                {
                    dataProcessor.CreateSiteDirectory(directory, crawlerOptions);
                }
                catch (Exception e)
                {
                    ShowErrorMessage(e.Message);
                    continue;
                }

                Console.Write("Link depth (0-5): ");
                var depthString = Console.ReadLine();

                if (dataProcessor.ProcessDepth(depthString, crawlerOptions) == false)
                {
                    ShowErrorMessage("Depth must be a number between 0 and 5. Please, try again.");
                    continue;
                }

                Console.Write("Types of files to download (e.g. jpg, pdf): ");
                var fileTypes = Console.ReadLine();

                if (dataProcessor.ProcessFileTypes(fileTypes, crawlerOptions) == false)
                {
                    ShowErrorMessage("File types are not correct. Please, try again.");
                    continue;
                }

                Console.WriteLine("Domain restriction type: ");
                Console.WriteLine("--- a) No restrictions");
                Console.WriteLine("--- b) Current domain");
                Console.WriteLine("--- c) Not above current url");
                var restrictionTypeKey = Console.ReadKey();

                switch (restrictionTypeKey.KeyChar)
                {
                case 'a':
                    crawlerOptions.Restrictions = DomainRestriction.None;
                    break;

                case 'b':
                    crawlerOptions.Restrictions = DomainRestriction.CurrentDomain;
                    break;

                case 'c':
                    crawlerOptions.Restrictions = DomainRestriction.NotAboveCurrentUrl;
                    break;

                default:
                    ShowErrorMessage("Key is not correct! Please, try again.");
                    continue;
                }

                Console.WriteLine();
                Console.WriteLine("Trace on/off (y/n): ");
                var traceOnOffKey = Console.ReadKey();

                switch (traceOnOffKey.KeyChar)
                {
                case 'y':
                    crawlerOptions.TraceEnabled = true;
                    break;

                case 'n':
                    crawlerOptions.TraceEnabled = false;
                    break;

                default:
                    ShowErrorMessage("Key is not correct! Please, try again.");
                    continue;
                }

                Console.WriteLine();
                Console.WriteLine("Loading started...");
                Console.WriteLine();

                break;
            }
        }