def Write(self, log):
        # Only run if the response times is greater than 0
        if len(self.TimerList) > 0:
            # Locks the writer if other tests are using it
            lock(writerLocker)
            try:
                # If filename doesn't exist, we haven't created the file yet
                if self.FileName is None:
                    self.FileName = "PerformanceTimerResults" + "-" + self.TestName + "-" + DateTime.UtcNow.ToString(
                        "O").Replace(':', '-') + ".xml"

                log.LogMessage(
                    MessageType.INFORMATION, "filename: " +
                    LoggingConfig.get_log_directory() + "\\" + self.FileName)

                settings = XmlWriterSettings()
                settings.WriteEndDocumentOnClose = True
                settings.Indent = True

                writer = XmlWriter.Create(
                    string.Format("{0}\\{1}",
                                  LoggingConfig.get_log_directory(),
                                  self.FileName), settings)

                x = XmlSerializer(self.GetType())
                x.Serialize(writer, self)

                writer.Flush()
                writer.Close()
            except Exception as e:
                log.LogMessage(
                    MessageType.ERROR,
                    "Could not save response time file.  Error was: {}", e)
示例#2
0
 def test_SoftAssertIsFalseTest():
     soft_assert = SoftAssert(
         FileLogger(LoggingConfig.get_log_directory(),
                    "UnitTests.SoftAssertUnitTests.SoftAssertIsFalseTest",
                    MessageType.GENERIC.value, True))
     soft_assert.assertFalse(2 == 1, "Test")
     soft_assert.fail_test_if_assert_failed()
示例#3
0
 def test_SoftAssertValidTest():
     soft_assert = SoftAssert(
         FileLogger(LoggingConfig.get_log_directory(),
                    "UnitTests.SoftAssertUnitTests.SoftAssertValidTest"))
     soft_assert.assertEquals("Yes", "Yes", "Utilities Soft Assert",
                              "Message is not equal")
     soft_assert.assertEquals("YesAgain", "YesAgain",
                              "Utilities Soft Assert 2")
     soft_assert.fail_test_if_assert_failed()
示例#4
0
 def test_SoftAssertFailTest(self):
     with self.assertRaises(AttributeError):
         soft_assert = SoftAssert(
             FileLogger(LoggingConfig.get_log_directory(),
                        "UnitTests.SoftAssertUnitTests.SoftAssertFailTest"))
         soft_assert.assertEquals("Yes", "No", "Utilities Soft Assert",
                                  "Message is not equal")
         soft_assert.assertEquals("Yes", "NoAgain",
                                  "Utilities Soft Assert 2")
         soft_assert.fail_test_if_assert_failed()
示例#5
0
 def test_SoftAssertIsTrueTestFailure(self):
     with self.assertRaises(AttributeError):
         soft_assert = SoftAssert(
             FileLogger(LoggingConfig.get_log_directory(),
                        "UnitTests.SoftAssertUnitTests.SoftAssertFailTest",
                        MessageType.GENERIC.name, True))
         soft_assert.assertTrue(1 == 2, "Test")
         soft_assert.assertTrue(1 == 2, "Test1")
         soft_assert.assertTrue(True, "Test2")
         soft_assert.fail_test_if_assert_failed()
示例#6
0
    def test_SoftAssertDidFailCheck(self):
        soft_assert = SoftAssert(
            FileLogger(LoggingConfig.get_log_directory(),
                       "UnitTests.SoftAssertUnitTests.SoftAssertIsTrueTest",
                       MessageType.GENERIC.name, True))
        soft_assert.assertTrue(True, "Test1")
        self.assertFalse(soft_assert.did_soft_asserts_fail())

        soft_assert.assertTrue(1 == 2, "Test2")
        self.assertTrue(soft_assert.did_soft_asserts_fail())
 def test_FileLoggerAppendLogFolder(self):
     append_file_directory_path = LoggingConfig.get_log_directory(
     ) + "/" + "Append File Directory"
     html_logger = HtmlFileLogger(append_file_directory_path, True)
     self.assertEquals(append_file_directory_path,
                       html_logger.get_directory(),
                       "Expected Directory 'Append File Directory'.")
     self.assertEquals("FileLog.html", html_logger.get_file_name(),
                       "Expected correct File Name.")
     self.assertEquals(MessageType.INFORMATION.name,
                       html_logger.get_message_type(),
                       "Expected Information Message Type.")
 def test_FileLoggerLogFolderMessagingLevel(self):
     log_folder_messaging_level_directory_path = LoggingConfig.get_log_directory() + "/" \
                                                 + "Log Folder Messaging Level Directory"
     html_logger = HtmlFileLogger(log_folder_messaging_level_directory_path,
                                  False, MessageType.WARNING)
     self.assertEquals(
         log_folder_messaging_level_directory_path,
         html_logger.get_directory(),
         "Expected Directory 'Log Folder Messaging Level Directory'.")
     self.assertEquals("FileLog.html", html_logger.get_file_name(),
                       "Expected correct File Name.")
     self.assertEquals(MessageType.WARNING.name,
                       html_logger.get_message_type(),
                       "Expected Warning Message Type.")
 def test_FileLoggerLogFolderFileName(self):
     log_folder_file_name_directory = LoggingConfig.get_log_directory(
     ) + "/" + "Log Folder File Name Directory"
     html_logger = HtmlFileLogger(log_folder_file_name_directory,
                                  "LogFolderFileName.html")
     self.assertEquals(
         log_folder_file_name_directory, html_logger.get_directory(),
         "Expected Directory 'Log Folder File Name Directory'.")
     self.assertEquals("LogFolderFileName.html",
                       html_logger.get_file_name(),
                       "Expected correct File Name.")
     self.assertEquals(MessageType.INFORMATION.name,
                       html_logger.get_message_type(),
                       "Expected Information Message Type.")
示例#10
0
    def test_SoftAssertVerifyCheckForFailures(self):
        soft_assert = SoftAssert(
            FileLogger(
                LoggingConfig.get_log_directory(),
                "UnitTests.SoftAssertUnitTests.SoftAssertVerifyCheckForFailures"
            ))
        soft_assert.assertEquals("Yes", "Yes", "Utilities Soft Assert",
                                 "Message is not equal")

        soft_assert.fail_test_if_assert_failed()
        self.assertTrue(soft_assert.did_user_check())

        soft_assert.assertEquals("Yes", "Yes", "Utilities Soft Assert",
                                 "Message is not equal")
        self.assertFalse(soft_assert.did_user_check())
    def test_FileLoggerAppendLogFolderMessagingLevel(self):
        append_log_folder_file_name_directory = LoggingConfig.get_log_directory() + "\\" \
                                                + "AppendLogFolderFileNameDirectory "
        html_logger = HtmlFileLogger(append_log_folder_file_name_directory,
                                     True, MessageType.WARNING)
        self.assertEquals(
            append_log_folder_file_name_directory, html_logger.get_directory(),
            "Expected Directory AppendLogFolderFileNameDirectory")
        self.assertEquals("FileLog.html", html_logger.get_file_name(),
                          "Expected correct File Name.")
        self.assertEquals(MessageType.WARNING.name,
                          html_logger.get_message_type(),
                          "Expected Warning Message Type.")

        file_path = html_logger.get_file_path(
        ) + "\\" + html_logger.get_file_name()
        self.assertFalse(path.exists(file_path))
    def test_FileLoggerLogFolderFileNameMessagingLevel(self):
        log_folder_file_name_messaging_level_directory_path = LoggingConfig.get_log_directory() \
                                                              + "/" + "LogFolderFileNameMessagingLevelDirectory"
        html_logger = HtmlFileLogger(
            log_folder_file_name_messaging_level_directory_path,
            "LogFolderFileNameMessagingLevel.html", MessageType.WARNING)
        self.assertEquals(
            log_folder_file_name_messaging_level_directory_path,
            html_logger.get_directory(),
            "Expected Directory 'LogFolderFileNameMessagingLevelDirectory'")
        self.assertEquals("LogFolderFileNameMessagingLevel.html",
                          html_logger.get_file_name(),
                          "Expected correct File Name.")
        self.assertEquals(MessageType.WARNING, html_logger.get_message_type(),
                          "Expected Warning Message Type.")

        file_path = html_logger.get_file_path(
        ) + "\\" + html_logger.get_file_name()
        self.assertTrue(path.exists(file_path))
示例#13
0
    def test_SoftAssertFailsValidTest(self):
        soft_assert = SoftAssert(
            FileLogger(
                LoggingConfig.get_log_directory(),
                "UnitTests.SoftAssertUnitTests.SoftAssertFailsValidTest"))
        soft_assert.fails(
            lambda x: self.MethodThrowsNoneException(), TypeError,
            "Assert Method Throws Explicit Exception",
            "Failed to assert that method threw a NullReferenceException")
        result = 9 / 0
        soft_assert.fails(
            self.fail(
                f"Result should have thrown an error but is {result} instead"),
            # soft_assert.assertFails(lambda x: (result = 9 / 0) self.fail(f"Result should have thrown
            # an error but is {result} instead"),
            ZeroDivisionError,
            "Assert  action throws divide by zero exception",
            "Failed to assert that we couldn't divide by zero")

        soft_assert.fail_test_if_assert_failed()
示例#14
0
 def test_SoftAssertFailsInvalidTest(self):
     with self.assertRaises(AttributeError):
         soft_assert = SoftAssert(
             FileLogger(
                 LoggingConfig.get_log_directory(),
                 "UnitTests.SoftAssertUnitTests.SoftAssertFailsInvalidTest")
         )
         soft_assert.fails(
             lambda x: self.MethodThrowsNoneException(),
             NotImplementedError, "Assert Method Throws Explicit Exception",
             "Failed to assert that method threw a NotImplementedException")
         result = 9 / 0
         soft_assert.fails(
             self.fail(
                 f"Result should have thrown an error but is {result} instead"
             ),
             # soft_assert.assertFails(lambda x: (result = 9 / 0) self.fail(f"Result should have
             # thrown an error but is {result} instead"),
             TypeError,
             "Assert  dividing by zero throws a null reference",
             "Failed to assert that we couldn't divide by zero")
         soft_assert.fail_test_if_assert_failed()
示例#15
0
 def test_SoftAssertVerifyUserCheck(self):
     soft_assert = SoftAssert(
         FileLogger(
             LoggingConfig.get_log_directory(),
             "UnitTests.SoftAssertUnitTests.SoftAssertVerifyUserCheck"))
     self.assertTrue(soft_assert.did_user_check())