예제 #1
0
    def testAnomaly(self):
        parser = linux_release_parser.LinuxReleaseParser()

        result = list(parser.ParseFiles(None, [], []))

        self.assertLen(result, 1)
        self.assertIsInstance(result[0], rdf_anomaly.Anomaly)
예제 #2
0
    def testAnomaly(self):
        parser = linux_release_parser.LinuxReleaseParser()

        stats = []
        files = []
        result = list(parser.ParseMultiple(stats, files, None))

        self.assertEqual(len(result), 1)
        self.assertIsInstance(result[0], rdf_anomaly.Anomaly)
예제 #3
0
  def testEndToEndUbuntu(self):
    parser = linux_release_parser.LinuxReleaseParser()

    testdata = [
        ("/etc/lsb-release", os.path.join(self.parser_test_dir, "lsb-release")),
    ]
    pathspecs, files = self._CreateTestData(testdata)

    result = list(parser.ParseFiles(None, pathspecs, files)).pop()

    self.assertIsInstance(result, rdf_protodict.Dict)
    self.assertEqual("Ubuntu", result["os_release"])
    self.assertEqual(14, result["os_major_version"])
    self.assertEqual(4, result["os_minor_version"])
예제 #4
0
 def testEndToEndGoogleCOS(self):
     parser = linux_release_parser.LinuxReleaseParser()
     test_data = [
         ("/etc/os-release",
          os.path.join(self.parser_test_dir, "google-cos-os-release")),
     ]
     pathspecs, file_objects = self._CreateTestData(test_data)
     actual_result = list(parser.ParseFiles(None, pathspecs, file_objects))
     expected_result = [
         rdf_protodict.Dict({
             "os_release": "Container-Optimized OS",
             "os_major_version": 69,
             "os_minor_version": 0,
         })
     ]
     self.assertCountEqual(actual_result, expected_result)
예제 #5
0
 def testEndToEndAmazon(self):
     parser = linux_release_parser.LinuxReleaseParser()
     test_data = [
         ("/etc/system-release",
          os.path.join(self.parser_test_dir, "amazon-system-release")),
     ]
     pathspecs, file_objects = self._CreateTestData(test_data)
     actual_result = list(parser.ParseFiles(None, pathspecs, file_objects))
     expected_result = [
         rdf_protodict.Dict({
             "os_release": "AmazonLinuxAMI",
             "os_major_version": 2018,
             "os_minor_version": 3,
         })
     ]
     self.assertCountEqual(actual_result, expected_result)
예제 #6
0
    def testEndToEndOracleLinux(self):
        parser = linux_release_parser.LinuxReleaseParser()

        testdata = [
            ("/etc/lsb-release",
             os.path.join(self.parser_test_dir, "lsb-release-notubuntu")),
            ("/etc/oracle-release",
             os.path.join(self.parser_test_dir, "oracle-release")),
        ]
        stats, files = self._CreateTestData(testdata)

        result = list(parser.ParseMultiple(stats, files, None)).pop()

        self.assertIsInstance(result, rdf_protodict.Dict)
        self.assertEqual("OracleLinux", result["os_release"])
        self.assertEqual(6, result["os_major_version"])
        self.assertEqual(5, result["os_minor_version"])
예제 #7
0
 def testEndToEndCoreOS(self):
     parser = linux_release_parser.LinuxReleaseParser()
     test_data = [
         ("/etc/os-release",
          os.path.join(self.parser_test_dir, "coreos-os-release")),
     ]
     stat_entries, file_objects = self._CreateTestData(test_data)
     actual_result = list(
         parser.ParseMultiple(stat_entries, file_objects, None))
     expected_result = [
         rdf_protodict.Dict({
             "os_release": "Container Linux by CoreOS",
             "os_major_version": 2023,
             "os_minor_version": 4,
         })
     ]
     self.assertCountEqual(actual_result, expected_result)