def test_parse_from_json_with_null(self): boot_json = {"board": "null"} errors = {} doc = bimport._parse_boot_from_json(boot_json, self.db, errors) self.assertIsNone(doc) self.assertListEqual([400], errors.keys())
def test_parse_from_json_no_valid_boot_time(self): boot_json = { "board": "board", "job": "job", "kernel": "kernel", "defconfig": "defconfig", "lab_name": "lab_name", "git_branch": "branch", "dtb": "dtb", "boot_time": "foo", "build_environment": "build_environment" } errors = {} doc = bimport._parse_boot_from_json(boot_json, self.db, errors) self.assertIsNotNone(doc) self.assertEqual(doc.board, "board") self.assertEqual(doc.job, "job") self.assertEqual(doc.kernel, "kernel") self.assertEqual(doc.defconfig, "defconfig") self.assertEqual(doc.git_branch, "branch") self.assertEqual(doc.dtb, "dtb") self.assertEqual(doc.time, datetime.datetime(1970, 1, 1, 0, 0)) self.assertListEqual([400], errors.keys())
def test_parse_from_json_no_valid_boot_time(self): boot_json = { "board": "board", "job": "job", "kernel": "kernel", "defconfig": "defconfig", "lab_name": "lab_name", "git_branch": "branch", "dtb": "dtb", "boot_time": "foo", "build_environment": "build_environment" } errors = {} doc = bimport._parse_boot_from_json(boot_json, self.db, errors) self.assertIsNotNone(doc) self.assertEqual(doc.board, "board") self.assertEqual(doc.job, "job") self.assertEqual(doc.kernel, "kernel") self.assertEqual(doc.defconfig, "defconfig") self.assertEqual(doc.git_branch, "branch") self.assertEqual(doc.dtb, "dtb") self.assertEqual(doc.time, datetime.datetime(1970, 1, 1, 0, 0)) self.assertListEqual([400], errors.keys())
def test_parse_from_json_wrong_json(self, mock_null): boot_json = { "foo": "bar" } errors = {} doc = bimport._parse_boot_from_json(boot_json, self.db, errors) self.assertIsNone(doc) self.assertListEqual([400], errors.keys())
def test_parse_from_json_default_arch(self): errors = {} self.boot_report.pop("arch") doc = bimport._parse_boot_from_json(self.boot_report, self.db, errors) self.assertIsInstance(doc, mboot.BootDocument) self.assertEqual(doc.arch, "arm")
def test_parse_from_json_with_null(self): boot_json = { "board": "null" } errors = {} doc = bimport._parse_boot_from_json(boot_json, self.db, errors) self.assertIsNone(doc) self.assertListEqual([400], errors.keys())
def test_parse_from_json_with_mach_alias(self): boot_json = { "job": "job", "kernel": "kernel", "defconfig": "defconfig", "board": "board", "dtb": "dtb", "lab_name": "lab_name", "git_branch": "branch", "mach": "mach", "mach_alias": "mach-alias" } doc = bimport._parse_boot_from_json(boot_json, self.db, {}) self.assertEqual(doc.mach, "mach-alias")
def test_parse_from_json_simple(self): errors = {} doc = bimport._parse_boot_from_json(self.boot_report, self.db, errors) self.assertIsInstance(doc, mboot.BootDocument) self.assertEqual(doc.load_addr, "0x80200000") self.assertEqual(doc.endian, "little") self.assertEqual(doc.version, "1.1") self.assertEqual(doc.mach, "soc") self.assertEqual(doc.uimage, "uimage") self.assertEqual(doc.bootloader, "bootloader") self.assertEqual(doc.bootloader_version, "1.2.3") self.assertEqual(doc.chainloader, "chainloader") self.assertEqual(doc.filesystem, "nfs") self.assertEqual(doc.boot_job_id, "1234") self.assertIsInstance(doc.metadata, types.DictionaryType)
def test_parse_from_json_simple(self): errors = {} doc = bimport._parse_boot_from_json(self.boot_report, self.db, errors) self.assertIsInstance(doc, mboot.BootDocument) self.assertEqual(doc.load_addr, "0x80200000") self.assertEqual(doc.endian, "little") self.assertEqual(doc.version, "1.1") self.assertEqual(doc.mach, "soc") self.assertEqual(doc.uimage, "uimage") self.assertEqual(doc.bootloader, "bootloader") self.assertEqual(doc.bootloader_version, "1.2.3") self.assertEqual(doc.chainloader, "chainloader") self.assertEqual(doc.filesystem, "nfs") self.assertEqual(doc.boot_job_id, "1234") self.assertIsInstance(doc.metadata, types.DictionaryType)
def test_parse_from_json_with_mach_alias(self): boot_json = { "job": "job", "kernel": "kernel", "defconfig": "defconfig", "board": "board", "dtb": "dtb", "lab_name": "lab_name", "git_branch": "branch", "mach": "mach", "mach_alias": "mach-alias", "build_environment": "build_environment" } doc = bimport._parse_boot_from_json(boot_json, self.db, {}) self.assertEqual(doc.mach, "mach-alias")
def test_parse_from_json_valid(self): boot_json = { "job": "job", "kernel": "kernel", "defconfig": "defconfig", "board": "board", "dtb": "dtb", "lab_name": "lab_name", "git_branch": "branch", "boot_time": 0, } errors = {} doc = bimport._parse_boot_from_json(boot_json, self.db, errors) self.assertEqual(doc.board, "board") self.assertEqual(doc.job, "job") self.assertEqual(doc.kernel, "kernel") self.assertEqual(doc.defconfig, "defconfig") self.assertEqual(doc.dtb, "dtb") self.assertDictEqual({}, errors)
def test_parse_from_json_wrong_boot_time_negative(self): boot_json = { "job": "job", "kernel": "kernel", "defconfig": "defconfig", "board": "board", "dtb": "dtb", "lab_name": "lab_name", "git_branch": "branch", "boot_time": -1500.0 } errors = {} doc = bimport._parse_boot_from_json(boot_json, self.db, errors) self.assertEqual(doc.board, "board") self.assertEqual(doc.job, "job") self.assertEqual(doc.kernel, "kernel") self.assertEqual(doc.defconfig, "defconfig") self.assertEqual(doc.dtb, "dtb") self.assertEqual(doc.time, datetime.datetime(1970, 1, 1, 0, 0)) self.assertListEqual([400], errors.keys())
def test_parse_from_json_valid(self): boot_json = { "job": "job", "kernel": "kernel", "defconfig": "defconfig", "board": "board", "dtb": "dtb", "lab_name": "lab_name", "git_branch": "branch", "boot_time": 0, "build_environment": "build_environment" } errors = {} doc = bimport._parse_boot_from_json(boot_json, self.db, errors) self.assertEqual(doc.board, "board") self.assertEqual(doc.job, "job") self.assertEqual(doc.kernel, "kernel") self.assertEqual(doc.defconfig, "defconfig") self.assertEqual(doc.dtb, "dtb") self.assertDictEqual({}, errors)
def test_parse_from_json_wrong_boot_time_too_big_negative(self): boot_json = { "job": "job", "kernel": "kernel", "defconfig": "defconfig", "board": "board", "dtb": "dtb", "lab_name": "lab_name", "git_branch": "branch", "boot_time": -sys.maxint - 1, "build_environment": "build_environment" } errors = {} doc = bimport._parse_boot_from_json(boot_json, self.db, errors) self.assertEqual(doc.board, "board") self.assertEqual(doc.job, "job") self.assertEqual(doc.kernel, "kernel") self.assertEqual(doc.defconfig, "defconfig") self.assertEqual(doc.dtb, "dtb") self.assertEqual(doc.time, datetime.datetime(1970, 1, 1, 0, 0)) self.assertListEqual([400], errors.keys())
def test_parse_from_json_no_json(self): errors = {} doc = bimport._parse_boot_from_json(None, self.db, errors) self.assertIsNone(doc) self.assertDictEqual({}, errors)
def test_parse_from_json_no_json(self): errors = {} doc = bimport._parse_boot_from_json(None, self.db, errors) self.assertIsNone(doc) self.assertDictEqual({}, errors)
def test_parse_from_json_wrong_json(self, mock_null): boot_json = {"foo": "bar"} errors = {} doc = bimport._parse_boot_from_json(boot_json, self.db, errors) self.assertIsNone(doc) self.assertListEqual([400], errors.keys())