Beispiel #1
0
        public void StartTimerTest_Single_Success()
        {
            //Arrange
            var logger = new TestReportLogger();

            Report.AttachLogger(logger);

            //Act
            SystemLibrary.StartTimer("testTimerStart");

            //Assert
            Report.DetachLogger(logger);
            Assert.AreEqual("Started: 'testTimerStart'", logger.LastLogMessage);
        }
Beispiel #2
0
        public void CompareValuesTest_NullStrings_Success()
        {
            //Arrange
            string value1 = null;
            string value2 = null;
            var    logger = new TestReportLogger();

            Report.AttachLogger(logger);

            //Act
            ValidationLibrary.CompareValues(value1, value2);

            //Assert
            Report.DetachLogger(logger);
            Assert.AreEqual("Objects are equal (actual='(null)', expected='(null)').", logger.LastLogMessage);
        }
Beispiel #3
0
        public void WebLibraryTest_NoLocalPath_Fail()
        {
            //Arrange
            string address  = "https://www.ranorex.com/release-notes.html";
            string fileName = null;
            var    logger   = new TestReportLogger();

            Report.AttachLogger(logger);

            //Act
            WebLibrary.DownloadFile(address, fileName);

            //Assert
            Report.DetachLogger(logger);
            Assert.AreEqual(string.Format("Downloading a file from: {0} failed for the following reason:\r\nValue cannot be null.\r\nParameter name: fileName", address), logger.LastLogMessage);
        }
Beispiel #4
0
        public void StopPopupWatcherTest_StopWithoutStart_ReportsFail()
        {
            //Arrange
            var parentFolder = Substitute.For <RepoGenBaseFolder>("Form1", "/form", null, Duration.Zero, true);
            var repoItemInfo = new RepoItemInfo(parentFolder, "self", RxPath.Parse(string.Empty), Duration.Zero, null, Guid.NewGuid().ToString());
            var logger       = new TestReportLogger();

            Report.AttachLogger(logger);

            //Act
            PopupWatcherLibrary.StopPopupWatcher(repoItemInfo, repoItemInfo);

            //Assert
            Report.DetachLogger(logger);
            Assert.AreEqual("The popup watcher you tried to remove does not exist.", logger.LastLogMessage);
        }
Beispiel #5
0
        public void WebLibraryTest_DownloadExeToSystemDir_Fail()
        {
            //Arrange
            string address  = "https://www.ranorex.com/download/Ranorex-7.2.0.exe";
            string fileName = Path.Combine(Environment.SystemDirectory, "Ranorex-7.2.0.exe");
            var    logger   = new TestReportLogger();

            Report.AttachLogger(logger);

            //Act
            WebLibrary.DownloadFile(address, fileName);

            //Assert
            Report.DetachLogger(logger);
            Assert.AreEqual(string.Format("Downloading a file from: {0} failed for the following reason:\r\nAn exception occurred during a WebClient request.\r\nAccess to the path '{1}' is denied.", address, fileName), logger.LastLogMessage);
        }
Beispiel #6
0
        public void WebLibraryTest_NoUri_Fail()
        {
            //Arrange
            string address  = null;
            string fileName = null;
            var    logger   = new TestReportLogger();

            Report.AttachLogger(logger);

            //Act
            WebLibrary.DownloadFile(address, fileName);

            //Assert
            Report.DetachLogger(logger);
            Assert.AreEqual(string.Format("Downloading a file from: {0} failed for the following reason:\r\nValue cannot be null.\r\nParameter name: address", address), logger.LastLogMessage);
        }
Beispiel #7
0
        public void WebLibraryTest_NoUri_Fail()
        {
            //Arrange
            string address  = null;
            string fileName = null;
            var    logger   = new TestReportLogger();

            Report.AttachLogger(logger);

            //Act
            WebLibrary.DownloadFile(address, fileName);

            //Assert
            Report.DetachLogger(logger);
            StringAssert.StartsWith(string.Format("Downloading a file from: {0} failed for the following reason:", address), logger.LastLogMessage);
        }
Beispiel #8
0
        public void StartPopupWatcherTest_Single_Success()
        {
            //Arrange
            var parentFolder = Substitute.For <RepoGenBaseFolder>("Form1", "/form", null, Duration.Zero, true);
            var repoItemInfo = new RepoItemInfo(parentFolder, "self", RxPath.Parse(string.Empty), Duration.Zero, null);
            var logger       = new TestReportLogger();

            Report.AttachLogger(logger);

            //Act
            var watcher = PopupWatcherLibrary.StartPopupWatcher(repoItemInfo, repoItemInfo);

            //Assert
            Report.DetachLogger(logger);
            Assert.IsNotNull(watcher);
            Assert.AreEqual("Popup watcher started.", logger.LastLogMessage);
        }
        public void WaitForFile_WaitForExistingFile_ReportFileFound()
        {
            //Arrange
            var logger = new TestReportLogger();

            Report.AttachLogger(logger);
            var pattern = "TextFile*";

            //Act
            FileLibrary.WaitForFile(testFilesDirPath, pattern, 500, 100);

            //Assert
            Report.DetachLogger(logger);
            Assert.AreEqual(
                string.Format("File with pattern '{0}' was found in directory '{1}'.", pattern, testFilesDirPath),
                logger.LastLogMessage);
        }
Beispiel #10
0
        public void StopTimerTest_Single_Success()
        {
            //Arrange
            var logger = new TestReportLogger();

            Report.AttachLogger(logger);
            SystemLibrary.StartTimer("testTimerStartAndStop");

            //Act
            Thread.Sleep(1);
            var time = SystemLibrary.StopTimer("testTimerStartAndStop");

            //Assert
            Assert.IsTrue(time.TotalMilliseconds > 0);
            Report.DetachLogger(logger);
            StringAssert.Contains("Stopped: 'testTimerStartAndStop' (duration: ", logger.LastLogMessage);
        }
        public void DeleteFiles_DeleteNonexistentFiles_ReportFilesNotFound()
        {
            //Arrange
            var logger = new TestReportLogger();

            Report.AttachLogger(logger);
            var pattern = "SomeFile.txt";

            //Act
            FileLibrary.DeleteFiles(testFilesDirPath, pattern);

            //Assert
            Report.DetachLogger(logger);
            Assert.AreEqual(
                string.Format("No files have been found in '{0}' with the pattern '{1}'.", testFilesDirPath, pattern),
                logger.LastLogMessage);
        }
        public void ValidateFilesTextEqual_CompareNonexistentFile_ReportFileNotExist()
        {
            //Arrange
            var logger = new TestReportLogger();

            Report.AttachLogger(logger);
            var filePath1 = Path.Combine(testFilesDirPath, "TextFile11.txt");
            var filePath2 = Path.Combine(testFilesDirPath, "TextFile2.txt");

            //Act
            FileLibrary.ValidateFilesTextEqual(filePath1, filePath2);

            //Assert
            Report.DetachLogger(logger);
            Assert.AreEqual(
                string.Format("The file '{0}' does not exist.", filePath1),
                logger.LastLogMessage);
        }
        public void ValidateFileContainsText_SearchText_ReportTextFound()
        {
            //Arrange
            var logger = new TestReportLogger();

            Report.AttachLogger(logger);
            var filePath        = Path.Combine(testFilesDirPath, "TextFileForSearch.txt");
            var textToSearchFor = "Maecenas tristique consequat est, et condimentum";

            //Act
            FileLibrary.ValidateFileContainsText(filePath, textToSearchFor);

            //Assert
            Report.DetachLogger(logger);
            Assert.AreEqual(
                string.Format("Text '{0}' was found on line 7: 'Maecenas tristique consequat est, et condimentum lacus bibendum non. Nam semper malesuada risus ut interdum.'.", textToSearchFor),
                logger.LastLogMessage);
        }
        public void ValidateFileContainsText_SearchTextInNonexistentFile_ReportFileNotExist()
        {
            //Arrange
            var logger = new TestReportLogger();

            Report.AttachLogger(logger);
            var filePath        = Path.Combine(testFilesDirPath, "TextFileForSearch1.txt");
            var textToSearchFor = "Maecenas tristique consequat est, et condimentum";

            //Act
            FileLibrary.ValidateFileContainsText(filePath, textToSearchFor);

            //Assert
            Report.DetachLogger(logger);
            Assert.AreEqual(
                string.Format("The file '{0}' does not exist.", filePath),
                logger.LastLogMessage);
        }
        public void ValidateFilesTextEqual_CompareFilesWithDifferentEOLOnlyNormalizeEOL_ReportFilesEqual()
        {
            //Arrange
            var logger = new TestReportLogger();

            Report.AttachLogger(logger);
            var filePath1 = Path.Combine(testFilesDirPath, "TextFileUnixEOL.txt");
            var filePath2 = Path.Combine(testFilesDirPath, "TextFileWinEOL.txt");

            //Act
            FileLibrary.ValidateFilesTextEqual(filePath1, filePath2, true);

            //Assert
            Report.DetachLogger(logger);
            Assert.AreEqual(
                string.Format("Files '{0}' and '{1}' are equal.", filePath1, filePath2),
                logger.LastLogMessage);
        }
        public void ValidateFilesTextEqual_CompareDifferentFiles_ReportFilesNotEqual()
        {
            //Arrange
            var logger = new TestReportLogger();

            Report.AttachLogger(logger);
            var filePath1 = Path.Combine(testFilesDirPath, "TextFile1.txt");
            var filePath2 = Path.Combine(testFilesDirPath, "TextFile2.txt");

            //Act
            FileLibrary.ValidateFilesTextEqual(filePath1, filePath2);

            //Assert
            Report.DetachLogger(logger);
            Assert.AreEqual(
                string.Format("Files '{0}' and '{1}' are not equal.", filePath1, filePath2),
                logger.LastLogMessage);
        }
        public void ValidateFilesBinaryEqual_CompareEqualFiles_ReportFilesAreEqual()
        {
            //Arrange
            var logger = new TestReportLogger();

            Report.AttachLogger(logger);
            var filePath1 = Path.Combine(testFilesDirPath, "BinaryFile1kB1.file");
            var filePath2 = Path.Combine(testFilesDirPath, "BinaryFile1kB1.file");

            //Act
            FileLibrary.ValidateFilesBinaryEqual(filePath1, filePath2);

            //Assert
            Report.DetachLogger(logger);
            Assert.AreEqual(
                string.Format("Files '{0}' and '{1}' are equal.", filePath1, filePath2),
                logger.LastLogMessage);
        }
        public void ValidateFilesBinaryEqual_CompareFilesWithDifferentSize_ReportFilesNotEqual()
        {
            //Arrange
            var logger = new TestReportLogger();

            Report.AttachLogger(logger);
            var filePath1 = Path.Combine(testFilesDirPath, "BinaryFile1kB1.file");
            var filePath2 = Path.Combine(testFilesDirPath, "BinaryFile2kB.file");

            //Act
            FileLibrary.ValidateFilesBinaryEqual(filePath1, filePath2);

            //Assert
            Report.DetachLogger(logger);
            Assert.AreEqual(
                string.Format("Files '{0}' and '{1}' are not equal because they differ in size.", filePath1, filePath2),
                logger.LastLogMessage);
        }
        public void ValidateFileContainsText_SearchText_ReportTextNotFound()
        {
            //Arrange
            var logger = new TestReportLogger();

            Report.AttachLogger(logger);
            var filePath        = Path.Combine(testFilesDirPath, "TextFileForSearch.txt");
            var textToSearchFor = "Maecenas123 tristique consequat est, et condimentum";

            //Act
            FileLibrary.ValidateFileContainsText(filePath, textToSearchFor);

            //Assert
            Report.DetachLogger(logger);
            Assert.AreEqual(
                string.Format("Text '{0}' was not found in file '{1}'.", textToSearchFor, filePath),
                logger.LastLogMessage);
        }
        public void StopAllPopupWatcherTest_StopWithoutStart_Success()
        {
            //Arrange
            var parentFolder  = Substitute.For <RepoGenBaseFolder>("Form1", "/form", null, Duration.Zero, true);
            var repoItemInfo1 = new RepoItemInfo(parentFolder, "self", RxPath.Parse(string.Empty), Duration.Zero, null, Guid.NewGuid().ToString());
            var repoItemInfo2 = new RepoItemInfo(parentFolder, "self", RxPath.Parse(string.Empty), Duration.Zero, null, Guid.NewGuid().ToString());
            var logger        = new TestReportLogger();

            Report.AttachLogger(logger);
            PopupWatcherLibrary.StartPopupWatcher(repoItemInfo1, repoItemInfo1);
            PopupWatcherLibrary.StartPopupWatcher(repoItemInfo2, repoItemInfo2);

            //Act
            PopupWatcherLibrary.StopAllPopupWatchers();

            //Assert
            Report.DetachLogger(logger);
            Assert.AreEqual("Popup watcher stopped.", logger.LastLogMessage);
        }
Beispiel #21
0
        public void WebLibraryTest_DownloadHtmlToCurrentDirWithFilePath_Success()
        {
            //Arrange
            string address  = "https://www.ranorex.com/release-notes.html";
            string fileName = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.CommonDocuments), "release-notes.html");

            File.Delete(fileName);
            var logger = new TestReportLogger();

            Report.AttachLogger(logger);

            //Act
            WebLibrary.DownloadFile(address, fileName);

            //Assert
            Report.DetachLogger(logger);
            Assert.AreEqual(string.Format("File successfully downloaded to {0}", fileName), logger.LastLogMessage);
            Assert.IsTrue(File.Exists(fileName));
            File.Delete(fileName);
        }
        public void DeleteFiles_DeleteFile_ReportFileDeleted()
        {
            //Arrange
            var logger = new TestReportLogger();

            Report.AttachLogger(logger);
            var fileName = Path.Combine(testFilesDirPath, "SomeFile.txt");

            File.WriteAllText(fileName, "Some text");
            var pattern = "SomeFile.txt";

            //Act
            FileLibrary.DeleteFiles(testFilesDirPath, pattern);

            //Assert
            Report.DetachLogger(logger);
            Assert.AreEqual(
                string.Format("File has been deleted: {0}", fileName),
                logger.LastLogMessage);
            Assert.IsTrue(!File.Exists(fileName));
        }
Beispiel #23
0
        public void StartTimerTest_StartedSameTimerTwice_ThrowsException()
        {
            //Arrange
            var logger = new TestReportLogger();

            Report.AttachLogger(logger);

            //Act
            try
            {
                SystemLibrary.StartTimer("testTimerStartTwice");
                SystemLibrary.StartTimer("testTimerStartTwice");
                //Assert
                Assert.Fail();
            }
            catch (ArgumentException ex)
            {
                Report.DetachLogger(logger);
                Assert.AreEqual("Started: 'testTimerStartTwice'", logger.LastLogMessage);
                Assert.AreEqual("Timer with name 'testTimerStartTwice' already exists", ex.Message);
            }
        }
Beispiel #24
0
        public void StartPopupWatcherTest_Twice_ThrowsException()
        {
            //Arrange
            var parentFolder = Substitute.For <RepoGenBaseFolder>("Form1", "/form", null, Duration.Zero, true);
            var repoItemInfo = new RepoItemInfo(parentFolder, "self", RxPath.Parse(string.Empty), Duration.Zero, null, Guid.NewGuid().ToString());
            var logger       = new TestReportLogger();

            Report.AttachLogger(logger);

            //Act
            try
            {
                PopupWatcherLibrary.StartPopupWatcher(repoItemInfo, repoItemInfo);
                PopupWatcherLibrary.StartPopupWatcher(repoItemInfo, repoItemInfo);
                //Assert
                Assert.Fail();
            }
            catch (ArgumentException ex)
            {
                Report.DetachLogger(logger);
                Assert.AreEqual("Popup watcher with given parameters already exists.", ex.Message);
            }
        }
Beispiel #25
0
        public void CompareValuesTest_NotEqualStrings_ThrowsException()
        {
            //Arrange
            var value1 = "value1";
            var value2 = "value2";
            var logger = new TestReportLogger();

            Report.AttachLogger(logger);

            //Act
            try
            {
                ValidationLibrary.CompareValues(value1, value2);
                //Assert
                Assert.Fail();
            }
            catch (ValidationException ex)
            {
                Report.DetachLogger(logger);
                Assert.AreEqual("Objects are not equal (actual='value1', expected='value2').", logger.LastLogMessage);
                Assert.AreEqual("Objects are not equal (actual='value1', expected='value2').", ex.Message);
            }
        }
Beispiel #26
0
 public void Init()
 {
     logger = new TestReportLogger();
     Report.AttachLogger(logger);
 }