blob: db5218cc39a20725924da105a92a26764c4d83b1 [file] [log] [blame]
#!/usr/bin/env python3.8
# Copyright 2022 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import argparse
import filecmp
import json
import sys
from pathlib import Path
def main():
params = argparse.ArgumentParser(
description=
"Verify file against golden with different goldens for eng and non-eng build types"
)
params.add_argument("--eng-golden", type=Path, required=True)
params.add_argument("--non-eng-golden", type=Path, required=True)
params.add_argument("--product-config", type=Path, required=True)
params.add_argument("--input", type=Path, required=True)
params.add_argument("--output", type=Path, required=True)
args = params.parse_args()
with open(args.product_config, 'r') as product_config:
product_config_json = json.load(product_config)
build_type = product_config_json['platform']['build_type']
if build_type == 'eng':
golden = args.eng_golden
else:
golden = args.non_eng_golden
if not filecmp.cmp(golden, args.input, shallow=False):
raise Exception(
'Golden and input files differ:\ngolden={}\ninput={}'.format(
golden, args.input))
args.output.touch()
if __name__ == "__main__":
sys.exit(main())