| # 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) |