|  | # Copyright 2020-2022 F4PGA Authors | 
|  | # | 
|  | # Licensed under the Apache License, Version 2.0 (the "License"); | 
|  | # you may not use this file except in compliance with the License. | 
|  | # You may obtain a copy of the License at | 
|  | # | 
|  | #     http://www.apache.org/licenses/LICENSE-2.0 | 
|  | # | 
|  | # Unless required by applicable law or agreed to in writing, software | 
|  | # distributed under the License is distributed on an "AS IS" BASIS, | 
|  | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | 
|  | # See the License for the specific language governing permissions and | 
|  | # limitations under the License. | 
|  | # | 
|  | # SPDX-License-Identifier: Apache-2.0 | 
|  |  | 
|  | # abc9 - test that abc9.D is correctly set after importing a clock. | 
|  | # counter, counter2, pll - test buffer and clock divider propagation | 
|  | # set_false_path - test the set_false_path command | 
|  | # set_max_delay - test the set_max_delay command | 
|  | # set_clock_groups - test the set_clock_groups command | 
|  | # restore_from_json - test clock propagation when design restored from json instead verilog | 
|  | # period_check - test if the clock propagation fails if a clock wire is missing the PERIOD attribute | 
|  | # waveform_check - test if the WAVEFORM attribute value is correct on wire | 
|  | # period_format_check - test if PERIOD attribute value is correct on wire | 
|  |  | 
|  | TESTS = abc9 \ | 
|  | counter \ | 
|  | counter2 \ | 
|  | pll \ | 
|  | pll_div \ | 
|  | pll_fbout_phase \ | 
|  | pll_approx_equal \ | 
|  | pll_dangling_wires \ | 
|  | pll_propagated \ | 
|  | set_false_path \ | 
|  | set_max_delay \ | 
|  | set_clock_groups \ | 
|  | restore_from_json \ | 
|  | period_check \ | 
|  | waveform_check \ | 
|  | period_format_check \ | 
|  | get_clocks \ | 
|  | create_clock_add | 
|  |  | 
|  | UNIT_TESTS = escaping | 
|  |  | 
|  | include $(shell pwd)/../../Makefile_test.common | 
|  |  | 
|  | abc9_verify = true | 
|  | counter_verify = $(call diff_test,counter,sdc) && $(call diff_test,counter,txt) | 
|  | counter2_verify = $(call diff_test,counter2,sdc) && $(call diff_test,counter2,txt) | 
|  | pll_verify = $(call diff_test,pll,sdc) | 
|  | pll_div_verify = $(call diff_test,pll_div,sdc) | 
|  | pll_fbout_phase_verify = $(call diff_test,pll_fbout_phase,sdc) | 
|  | pll_approx_equal_verify = $(call diff_test,pll_approx_equal,sdc) | 
|  | pll_dangling_wires_verify = $(call diff_test,pll_dangling_wires,sdc) | 
|  | pll_propagated_verify = $(call diff_test,pll_propagated,sdc) | 
|  | set_false_path_verify = $(call diff_test,set_false_path,sdc) | 
|  | set_max_delay_verify = $(call diff_test,set_max_delay,sdc) | 
|  | set_clock_groups_verify = $(call diff_test,set_clock_groups,sdc) | 
|  | restore_from_json_verify = diff restore_from_json/restore_from_json_1.sdc restore_from_json/restore_from_json_2.sdc | 
|  | period_check_verify = true | 
|  | period_check_negative = 1 | 
|  | waveform_check_verify = true | 
|  | waveform_check_negative = 1 | 
|  | period_format_check_verify = true | 
|  | period_format_check_negative = 1 | 
|  | get_clocks_verify = $(call diff_test,get_clocks,txt) | 
|  | create_clock_add_verify = $(call diff_test,create_clock_add,sdc) && $(call diff_test,create_clock_add,txt) |