@@ -9,16 +9,27 @@ target_link_libraries(cost_analysis PRIVATE
99 SeQuant::mbpt nlohmann_json::nlohmann_json CLI11::CLI11 )
1010target_set_warning_flags (cost_analysis )
1111
12- add_test (NAME cost_analysis_ccsd_r2
13- COMMAND ${ CMAKE_COMMAND }
14- -DEXE=$<TARGET_FILE: cost_analysis>
15- -DSRC=${CMAKE_CURRENT_SOURCE_DIR }/examples
16- -DNAME=ccsd_r2 -DDUMP=R2
17- -P ${ CMAKE_CURRENT_SOURCE_DIR } /run_tests.cmake )
12+ foreach (NAME IN ITEMS "ccsd_r2" "df_r1" )
13+ add_test (
14+ NAME "sequant/ cost_analysis/ ${NAME} /generate"
15+ COMMAND cost_analysis --driver " ${ CMAKE_CURRENT_LIST_DIR } /examples/ ${NAME} .json" )
16+ set_tests_properties ( "sequant/cost_analysis/ ${NAME} /generate"
17+ PROPERTIES FIXTURES_SETUP "COST_ANALYSIS_ ${NAME} " )
1818
19- add_test (NAME cost_analysis_df_r1
20- COMMAND ${CMAKE_COMMAND }
21- -DEXE=$<TARGET_FILE:cost_analysis>
22- -DSRC=${CMAKE_CURRENT_SOURCE_DIR}/examples
23- -DNAME=df_r1
24- -P ${CMAKE_CURRENT_SOURCE_DIR } /run_tests.cmake )
19+ # Strip the volatile git-revision line before diffing; -B ignores the extra
20+ # trailing blank line the live report carries but the fixture doesn't.
21+ add_test (
22+ NAME "sequant/cost_analysis/${NAME} /verify"
23+ COMMAND bash -c "diff -B <(sed '/^_SeQuant:/d' '${NAME} .md') <(sed '/^_SeQuant:/d' '${NAME} .md.expected')"
24+ WORKING_DIRECTORY "${CMAKE_CURRENT_LIST_DIR } /examples" )
25+ set_tests_properties ("sequant/cost_analysis/${NAME} /verify"
26+ PROPERTIES FIXTURES_REQUIRED "COST_ANALYSIS_${NAME} " )
27+ endforeach ()
28+
29+ # ccsd_r2 exercises --dump_tree; check the tree file was produced.
30+ add_test (
31+ NAME "sequant/cost_analysis/ccsd_r2/dump_tree"
32+ COMMAND bash -c "test -f R2.tree.txt"
33+ WORKING_DIRECTORY "${CMAKE_CURRENT_LIST_DIR } /examples" )
34+ set_tests_properties ("sequant/cost_analysis/ccsd_r2/dump_tree"
35+ PROPERTIES FIXTURES_REQUIRED "COST_ANALYSIS_ccsd_r2" )
0 commit comments