def write_new_expected(metadata_path, expected): # Serialize the data back to a file path = expected_path(metadata_path, expected.test_path) if not expected.is_empty: manifest_str = wptmanifest.serialize(expected.node, skip_empty_data=True) assert manifest_str != "" dir = os.path.split(path)[0] if not os.path.exists(dir): os.makedirs(dir) tmp_path = path + ".tmp" try: with open(tmp_path, "wb") as f: f.write(manifest_str) os.rename(tmp_path, path) except (Exception, KeyboardInterrupt): try: os.unlink(tmp_path) except OSError: pass else: try: os.unlink(path) except OSError: pass
def get_manifest(metadata_root, test_path, url_base, property_order=None, boolean_properties=None): """Get the ExpectedManifest for a particular test path, or None if there is no metadata stored for that test path. :param metadata_root: Absolute path to the root of the metadata directory :param test_path: Path to the test(s) relative to the test root :param url_base: Base url for serving the tests in this manifest :param property_order: List of properties to use in expectation metadata from most to least significant. :param boolean_properties: Set of properties in property_order that should be treated as boolean.""" manifest_path = expected.expected_path(metadata_root, test_path) try: with open(manifest_path) as f: return compile(f, test_path, url_base, property_order=property_order, boolean_properties=boolean_properties) except IOError: return None
def write_new_expected(metadata_path, expected_map): # Serialize the data back to a file for tree in expected_map.itervalues(): if not tree.is_empty: manifest_str = wptmanifest.serialize(tree.node, skip_empty_data=True) assert manifest_str != "" path = expected.expected_path(metadata_path, tree.test_path) dir = os.path.split(path)[0] if not os.path.exists(dir): os.makedirs(dir) with open(path, "wb") as f: f.write(manifest_str)
def write_new_expected(metadata_path, expected_map): # Serialize the data back to a file for tree in expected_map.itervalues(): if not tree.is_empty: manifest_str = wptmanifest.serialize(tree.node, skip_empty_data=True) assert manifest_str != "" path = expected.expected_path(metadata_path, tree.test_path) dir = os.path.split(path)[0] if not os.path.exists(dir): os.makedirs(dir) with open(path, "w") as f: f.write(manifest_str.encode("utf8"))
def get_manifest(metadata_root, test_path): """Get the ExpectedManifest for a particular test path, or None if there is no metadata stored for that test path. :param metadata_root: Absolute path to the root of the metadata directory :param test_path: Path to the test(s) relative to the test root """ manifest_path = expected.expected_path(metadata_root, test_path) try: with open(manifest_path) as f: return compile(f, test_path) except IOError: return None
def get_manifest(metadata_root, test_path, url_base, run_info_properties): """Get the ExpectedManifest for a particular test path, or None if there is no metadata stored for that test path. :param metadata_root: Absolute path to the root of the metadata directory :param test_path: Path to the test(s) relative to the test root :param url_base: Base url for serving the tests in this manifest""" manifest_path = expected.expected_path(metadata_root, test_path) try: with open(manifest_path) as f: rv = compile(f, test_path, url_base, run_info_properties) except IOError: return None return rv
def get_manifest(metadata_root, test_path, run_info): """Get the ExpectedManifest for a particular test path, or None if there is no metadata stored for that test path. :param metadata_root: Absolute path to the root of the metadata directory :param test_path: Path to the test(s) relative to the test root :param run_info: Dictionary of properties of the test run for which the expectation values should be computed. """ manifest_path = expected.expected_path(metadata_root, test_path) try: with open(manifest_path) as f: return static.compile(f, run_info, data_cls_getter=data_cls_getter, test_path=test_path) except IOError: return None