示例#1
0
    def runTest(self, _print):
        retval, out = ksvalidator.main([self._ks_path])
        self.assertEqual(len(out), 0)  # no output should be present
        self.assertEqual(retval, 0)

        # included snippet has errors
        retval, out = ksvalidator.main(["-i", self._ks_path])
        self.assertEqual(_print.call_count, 1)
        self.assertNotEqual(retval, 0)
示例#2
0
    def runTest(self):
        expected_pos_args = {"ksfile"}
        expected_opt_args = {("-h", "--help"),
                             ("-e", "--firsterror"),
                             ("-i", "--followincludes"),
                             ("-l", "--listversions"),
                             ("-v", "--version")}
        retval, messages = ksvalidator.main(["--help"])
        pos_args = set()
        opt_args = set()
        pos = False
        opt = False
        for line in messages:
            if line == "positional arguments:":
                pos = True
                continue
            if line == "optional arguments:":
                pos = False
                opt = True
                continue

            if pos:
                pos_arg = re.search("[a-zA-Z]+", line)
                if pos_arg:
                    pos_args.add(pos_arg.group(0))
            if opt:
                opt_arg = tuple(re.findall("--?[a-zA-Z]+", line))
                if opt_arg:
                    opt_args.add(opt_arg)

        self.assertEqual(expected_pos_args, pos_args)
        self.assertEqual(expected_opt_args, opt_args)
        self.assertEqual(retval, 0)
示例#3
0
 def runTest(self):
     retval, out = ksvalidator.main([self._ks_path])
     read_error_seen = False
     for line in out:
         if re.search("Error reading %s.*" % self._ks_path, line):
             read_error_seen = True
     self.assertTrue(read_error_seen)
     self.assertNotEqual(retval, 0)
示例#4
0
 def runTest(self, _print):
     # kickstart file contains 3 erroneous lines, but ksvalidator is run
     # with "-e" option
     retval, out = ksvalidator.main([self._ks_path, "-e"])
     # print is not called b/c when errorsAreFatal
     # we raise an exception straight away
     self.assertEqual(_print.call_count, 0)
     # there is one error message only, coming from
     # ksvalidator itself
     self.assertTrue("Unknown command: firstb00t" in " ".join(out))
     self.assertNotEqual(retval, 0)
示例#5
0
 def runTest(self, _print):
     retval, _out = ksvalidator.main([self._ks_path])
     # kickstart file contains 3 erroneous lines - 3 error messages should be present
     self.assertEqual(_print.call_count, 3)
     self.assertNotEqual(retval, 0)
示例#6
0
 def runTest(self, _mock):
     _mock.side_effect = DeprecationWarning('Raised by test')
     retval, out = ksvalidator.main([self._ks_path, "-v", "F10"])
     self.assertNotEqual(retval, 0)
     self.assertTrue("File uses a deprecated option or command" in " ".join(out))
示例#7
0
 def runTest(self):
     retval, out = ksvalidator.main([self._ks_path, "-v", "F10"])
     self.assertNotEqual(retval, 0)
     self.assertTrue("General error in input file:  No closing quotation" in " ".join(out))
示例#8
0
 def runTest(self):
     retval, messages = ksvalidator.main([])
     self.assertNotEqual(retval, 0)
     self.assertTrue("usage:" in " ".join(messages))
示例#9
0
 def runTest(self):
     retval, out = ksvalidator.main([self._ks_path, "-v", "F10"])
     self.assertNotEqual(retval, 0)
     self.assertTrue("General kickstart error" in " ".join(out))
示例#10
0
 def runTest(self):
     retval, out = ksvalidator.main(["-l"])
     self.assertEqual(self.versions_list, out)
     self.assertEqual(retval, 0)
示例#11
0
 def runTest(self):
     # run ksvalidator with nonexistent KS version (FC42)
     retval, out = ksvalidator.main([self._ks_path, "-v", "FC42"])
     self.assertNotEqual(retval, 0)
     self.assertTrue("The version FC42 is not supported by pykickstart" in " ".join(out))
示例#12
0
 def runTest(self):
     retval, out = ksvalidator.main(["/foo/bar/baz/ks.cfg"])
     self.assertNotEqual(retval, 0)
     self.assertTrue("No such file or directory" in " ".join(out))
示例#13
0
 def runTest(self, load_mock):
     load_mock.return_value = self._ks_path
     retval, out = ksvalidator.main(
         ["http://example.com/some.kickstart/is/online"])
     print(locals())
     self.assertEqual(retval, 0)
示例#14
0
 def runTest(self):
     retval, out = ksvalidator.main(["/foo/bar/baz/ks.cfg"])
     self.assertNotEqual(retval, 0)
     self.assertTrue("No files match the patterns" in " ".join(out))