public TestVerdict ConvertFile(
            [Core.TestParameter("Target test suite", "Enter the full path of test suite to convert.")]
            string targetTestSuite
            )
        {
            try
            {
                Setup();
                TestAssert.IsFalse(string.IsNullOrEmpty(targetTestSuite), "The target test suite cannot be a null or empty string value.");
                TestAssert.IsTrue(File.Exists(targetTestSuite), $"The target test suite path \"{targetTestSuite}\" is not a valid.");

                var testSuite = TestSuite.ReadFromOldFileFormat(targetTestSuite);
                TestSuite.Write(testSuite, true);

                //var testSuite = TestProperties.CurrentTestSuite;
                //TestSuite.SaveToFile2(testSuite);

                //TestSuite.ReadFromFile2(@"C:\DevProjects\Quintity\Quintity.TestFramework\Quintity.TestFramework - Trunk\Quintity.TestFramework.Scratch\TestOutput\TestSuiteIO.ste");

                TestVerdict = TestVerdict.Pass;
                TestMessage = "This is the initial test message.";
            }
            catch (Exception e)
            {
                TestMessage += e.ToString();
                TestVerdict  = TestVerdict.Error;
            }
            finally
            {
                Teardown();
            }

            return(TestVerdict);
        }
        private void onTestExecutionBegin(TestExecutor testExecutor, TestExecutionBeginArgs args)
        {
            TestAssert.IsFalse(string.IsNullOrEmpty(args.TestScriptObject.UserID), "");

            // Reset run time totals
            _totalRunTestCases = _totalRunTestSteps = _totalRunTestChecks = 0;

            // Create TestRail client.
            _testRailClient = new TestRailClient(_testRailUrl, _testRailUser, _testRailPassword);

            // Get applicable project
            _testRailProject = getTestRailProject(_testRailProjectName);

            // Project milestone
            var milestones = _testRailClient.GetMilestones(_testRailProject.ID);
            var milestone  = milestones.Find(x => x.Name.Contains(_testRailProjectName) &&
                                             x.Name.Contains(_productVersion));

            // Create test run
            _testRailRun = addTestRailRun(_testRailProject, milestone, (TestSuite)args.TestScriptObject);
        }