public void SaveCurrentStateTest()
        {
            var page1 = new SavedWebpage
            {
                Url        = "www.wp.pl",
                LastUpdate = DateTime.Parse("2001-01-13T23:00:00")
            };

            var page2 = new SavedWebpage
            {
                Url             = "wwww.interia.pl",
                UpdateFrequency = 30
            };

            var state = new AppStateConfiguration();

            state.SavedWebpages = new List <SavedWebpage>
            {
                page1,
                page2
            };

            _appStateManager.SaveCurrentState(state);
            Assert.AreEqual(_appStateManager.GetState().SavedWebpages.Count, 2);
        }
        public IDictionary <string, SideBySideDiffModel> Check(SavedWebpage webpage, Uri url)
        {
            var tempWebpage     = _downloader.Download(url, String.Empty, true);
            var originalWebpage = ConvertToWebpage(webpage);

            var diff = _detector.Detect(originalWebpage, tempWebpage);

            return(diff);
        }
示例#3
0
        public bool AddNewWebpageToReport(SavedWebpage webpage)
        {
            try
            {
                _appStateManager.AddSavedWebpage(webpage);
                _downloader.Download(new Uri(webpage.Url), webpage.Name, false);

                return(true);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                return(false);
            }
        }
        private Webpage ConvertToWebpage(SavedWebpage webpage)
        {
            List <WebpageComponent> webpageComponents = new List <WebpageComponent>();
            var files = _fileStorage.GetStorageFileByKey(webpage.Id);

            foreach (var file in files.FileNames)
            {
                webpageComponents.Add(new WebpageComponent
                {
                    AbsolutePath = file,
                    SourceCode   = _fileStorage.GetFileContent(files.Key, file)
                });
            }

            return(new Webpage
            {
                WebpageName = webpage.Name,
                WebpageUrl = webpage.Url,
                Components = webpageComponents,
            });
        }
示例#5
0
 public void AddSavedWebpage(SavedWebpage webpage)
 {
     State.SavedWebpages.Add(webpage);
     SaveCurrentState();
 }