def test_upgradeScriptData1_1_0(self): testDir = "TestFiles/Blackbox_test/upgradeScriptData1.1.0/" outDir = testDir + "TestOutput/" rmtree(outDir) os.makedirs(outDir) copy_tree(testDir+"TestInput", outDir) with open(outDir + "/mazikenout.txt", "w") as of: subprocess.run(["mazikeen", "--upgradeScriptFile"], stdout=of, stderr=of, cwd = outDir) self.assertTrue(diff(testDir + "TestOutput/mazikenout.txt", testDir + "TestExpected/mazikenout.txt", ignore = ["process time: .*"])) self.assertTrue(diff(testDir + "TestOutput/script.yaml", testDir + "TestExpected/script.yaml"))
def test_basicFileOnly(self): capturedOutput = io.StringIO() sys.stdout = capturedOutput self.assertTrue( diff("TestFiles/diff_Test/test_basicFileOny/valid1.txt", "TestFiles/diff_Test/test_basicFileOny/valid1.txt")) self.assertFalse( diff("TestFiles/diff_Test/test_basicFileOny/invalid1.txt", "TestFiles/diff_Test/test_basicFileOny/invalid2.txt")) sys.stdout = sys.__stdout__ str = capturedOutput.getvalue() self.assertEqual( f"Error: diff failed: \'{pathlib.Path('TestFiles/diff_Test/test_basicFileOny/invalid1.txt')}\' != \'{pathlib.Path('TestFiles/diff_Test/test_basicFileOny/invalid2.txt')}\'\n", capturedOutput.getvalue())
def test_cmdArg_ScriptName(self): testDir = "TestFiles/Blackbox_test/cmdArg_ScriptName/" outDir = testDir + "TestOutput" rmtree(outDir) os.makedirs(outDir) with open(outDir + "/mazikenout.txt", "w") as of: subprocess.run(["mazikeen", "--scriptName", "dummyScriptName.yaml"], stdout=of, stderr=of, cwd = testDir) self.assertTrue(diff(testDir + "TestOutput/mazikenout.txt", testDir + "TestExpected/mazikenout.txt", ignore = ["process time: .*"]))
def test_blockinBlock(self): testDir = "TestFiles/Blackbox_test/blockinBlock/" outDir = testDir + "TestOutput" rmtree(outDir) os.makedirs(outDir) with open(outDir + "/mazikenout.txt", "w") as of: subprocess.run(["mazikeen"], stdout=of, stderr=of, cwd = testDir) self.assertTrue(diff(testDir + "TestOutput/mazikenout.txt", testDir + "TestExpected/mazikenout.txt", ignore = ["process time: .*"]))
def test_testsuitsNtestcases_simple(self): testDir = "TestFiles/Blackbox_test/testsuitsNtestcases/" outDir = testDir + "TestOutput/simple/" rmtree(outDir) os.makedirs(outDir) with open(outDir + "/mazikenout.txt", "w") as of: subprocess.run(["mazikeen"], stdout=of, stderr=of, cwd = testDir) self.assertTrue(diff(testDir + "TestOutput/simple/mazikenout.txt", testDir + "TestExpected/simple/mazikenout.txt", ignore = ["process time: .*"]))
def test_shellLinux(self): if (platform.system() == "Linux"): testDir = "TestFiles/Blackbox_test/shellLinux/" outDir = testDir + "TestOutput" rmtree(outDir) os.makedirs(outDir) with open(outDir + "/mazikenout.txt", "w") as of: subprocess.run(["mazikeen"], stdout=of, stderr=of, cwd = testDir) self.assertTrue(diff(testDir + "TestOutput/mazikenout.txt", testDir + "TestExpected/mazikenout.txt", ignore = ["process time: .*"]))
def test_IgnoreOrphans(self): capturedOutput = io.StringIO() sys.stdout = capturedOutput self.assertTrue( diff("TestFiles/diff_Test/test_LeftNRightOrphans/cmp1", "TestFiles/diff_Test/test_LeftNRightOrphans/cmp2", diffStrategy=diffStrategy.IgnoreOrphans)) sys.stdout = sys.__stdout__ self.assertEqual("", capturedOutput.getvalue())
def test_IgnoreRightOrphans(self): capturedOutput = io.StringIO() sys.stdout = capturedOutput self.assertFalse( diff("TestFiles/diff_Test/test_RightOrphans/cmp1", "TestFiles/diff_Test/test_RightOrphans/cmp2")) self.assertTrue( diff("TestFiles/diff_Test/test_RightOrphans/cmp1", "TestFiles/diff_Test/test_RightOrphans/cmp2", diffStrategy=diffStrategy.IgnoreRightOrphans)) sys.stdout = sys.__stdout__ expectedPath0 = pathlib.Path( r"TestFiles/diff_Test/test_RightOrphans/cmp2/f1/file3.txt") expectedPath1 = pathlib.Path( r"TestFiles/diff_Test/test_RightOrphans/cmp1/f1") self.assertEqual( f"Error: diff failed: '{expectedPath0}' not in '{expectedPath1}'\n", capturedOutput.getvalue())
def run(self, workingDir="", variables={}, printer=Printer()): printer.verbose("Diff:", self.paths) _leftpath = replaceVariables(self.paths[0], variables, printer) _rightpath = replaceVariables(self.paths[1], variables, printer) _ignore = [] for ignoreLine in self.ignore: _ignoreline = replaceVariables(ignoreLine, variables, printer) _ignore.append(_ignoreline) workingDirPath = pathlib.Path(workingDir) return diff(workingDirPath.joinpath(_leftpath), workingDirPath.joinpath(_rightpath), self.binarycompare, self.strategy, _ignore, printer)
def test_InvalidPath(self): capturedOutput = io.StringIO() sys.stdout = capturedOutput self.assertFalse(diff("invalidPath1", "invalidPath2")) sys.stdout = sys.__stdout__ expectedPath0 = pathlib.Path( r"TestFiles/diff_Test/test_fileAsDirectory/cmp1/f2/file3.txt") expectedPath1 = pathlib.Path( r"TestFiles/diff_Test/test_fileAsDirectory/cmp2/f2/file3.txt") self.assertEqual(f"Error: diff failed: 'invalidPath1' doesn't exist\n", capturedOutput.getvalue())
def test_LinuxNWindowsEOLBinary(self): capturedOutput = io.StringIO() sys.stdout = capturedOutput self.assertFalse( diff("TestFiles/diff_Test/test_LinuxNWindowsEOL/cmp1", "TestFiles/diff_Test/test_LinuxNWindowsEOL/cmp2", binaryCompare=True)) sys.stdout = sys.__stdout__ expectedPath0 = pathlib.Path( r"TestFiles/diff_Test/test_LinuxNWindowsEOL/cmp1/file1.txt") expectedPath1 = pathlib.Path( r"TestFiles/diff_Test/test_LinuxNWindowsEOL/cmp2/file1.txt") self.assertEqual( f"Error: diff failed: '{expectedPath0}' != '{expectedPath1}'\n", capturedOutput.getvalue())
def test_testsuitsNtestcases_waitNfail_parallel(self): testDir = "TestFiles/Blackbox_test/testsuitsNtestcases_waitNfail/" outDir = testDir + "TestOutput/parallel/" rmtree(outDir) os.makedirs(outDir) with open(outDir + "/mazikenout.txt", "w") as of: subprocess.run(["mazikeen", "-r", "TestOutput/parallel/report.xml", "-j", "2"], stdout=of, stderr=of, cwd = testDir) with open(outDir + "/report.xml", "r") as ifile: with open(outDir + "/report_diff.xml", "w") as ofile: for line in ifile: line = re.sub(r"time=\".+?\"", "time=\"\"", line) line = re.sub(r"\\", "/", line) ofile.write(line) self.assertEqual(main.diff_files(outDir + "/report_diff.xml", outDir + "/report_diff.xml"), []) self.assertTrue(diff(testDir + "TestOutput/parallel/mazikenout.txt", testDir + "TestExpected/parallel/mazikenout.txt", ignore = ["process time: .*"]))
def test_fileAsDirectory(self): capturedOutput = io.StringIO() sys.stdout = capturedOutput expectedPath0 = pathlib.Path( r"TestFiles/diff_Test/test_fileAsDirectory/cmp1/f2/file3.txt") expectedPath1 = pathlib.Path( r"TestFiles/diff_Test/test_fileAsDirectory/cmp2/f2/file3.txt") if not os.path.exists(expectedPath0): os.makedirs(expectedPath0) self.assertFalse( diff("TestFiles/diff_Test/test_fileAsDirectory/cmp1", "TestFiles/diff_Test/test_fileAsDirectory/cmp2")) sys.stdout = sys.__stdout__ self.assertEqual( f"Error: diff failed: '{expectedPath0}' != '{expectedPath1}'\n", capturedOutput.getvalue())
def test_LinuxNWindowsEOL(self): self.assertTrue( diff("TestFiles/diff_Test/test_LinuxNWindowsEOL/cmp1", "TestFiles/diff_Test/test_LinuxNWindowsEOL/cmp2"))
def test_nonDefaultEncoding(self): self.assertTrue( diff("TestFiles/diff_Test/test_nonDefaultEncoding/cmp1.txt", "TestFiles/diff_Test/test_nonDefaultEncoding/cmp2.txt"))
def test_Ignore(self): self.assertTrue( diff("TestFiles/diff_Test/test_Ignore/cmp1", "TestFiles/diff_Test/test_Ignore/cmp2", ignore=['m', 'time=.*?\.', 'date and time', '1..31.21']))
def test_basic(self): self.assertTrue( diff("TestFiles/diff_Test/test_basic/cmp1", "TestFiles/diff_Test/test_basic/cmp2"))