2024-09-08 19:00:03 +02:00
|
|
|
#!/usr/bin/env python3
|
2024-08-21 11:30:59 +02:00
|
|
|
# DESCRIPTION: Verilator: Verilog Test driver/expect definition
|
|
|
|
|
#
|
2026-01-27 02:24:34 +01:00
|
|
|
# This program is free software; you can redistribute it and/or modify it
|
|
|
|
|
# under the terms of either the GNU Lesser General Public License Version 3
|
|
|
|
|
# or the Perl Artistic License Version 2.0.
|
|
|
|
|
# SPDX-FileCopyrightText: 2024 Wilson Snyder
|
2024-08-21 11:30:59 +02:00
|
|
|
# SPDX-License-Identifier: LGPL-3.0-only OR Artistic-2.0
|
|
|
|
|
|
2026-03-12 00:58:07 +01:00
|
|
|
import json
|
2024-09-08 19:00:03 +02:00
|
|
|
import vltest_bootstrap
|
2024-08-21 11:30:59 +02:00
|
|
|
|
2024-09-08 19:00:03 +02:00
|
|
|
test.scenarios('vlt')
|
|
|
|
|
test.top_filename = "t/t_dump.v"
|
2024-08-21 11:30:59 +02:00
|
|
|
|
2026-03-12 00:58:07 +01:00
|
|
|
out_filename = test.obj_dir + "/V" + test.name + "_002_cellsort.tree.json"
|
|
|
|
|
|
2024-09-08 19:00:03 +02:00
|
|
|
test.lint(v_flags=["--dump-tree-json --no-json-edit-nums"])
|
2024-08-21 11:30:59 +02:00
|
|
|
|
2026-03-12 00:58:07 +01:00
|
|
|
# not files_identical as output is too sensitive to internal changes
|
|
|
|
|
test.file_grep(out_filename, r'"type":"MODULE"')
|
|
|
|
|
|
|
|
|
|
# check JSON is parsable
|
|
|
|
|
with open(out_filename, 'r', encoding="utf8") as fh:
|
|
|
|
|
json.load(fh)
|
2024-08-21 11:30:59 +02:00
|
|
|
|
2024-09-08 19:00:03 +02:00
|
|
|
test.passes()
|