From c39da29db7abb1c9346fa3f0dc81f625ad6b34a1 Mon Sep 17 00:00:00 2001 From: Chen Weihang Date: Fri, 27 Nov 2020 10:46:55 +0800 Subject: [PATCH] Add symlink force for unittest test_static_save_load (#29137) * add symlink force for unittest * open unittest --- .../paddle/fluid/tests/unittests/CMakeLists.txt | 3 +-- .../tests/unittests/test_static_save_load.py | 16 +++++++++++++--- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/python/paddle/fluid/tests/unittests/CMakeLists.txt b/python/paddle/fluid/tests/unittests/CMakeLists.txt index c03a7738a6..2bb3b45bc4 100644 --- a/python/paddle/fluid/tests/unittests/CMakeLists.txt +++ b/python/paddle/fluid/tests/unittests/CMakeLists.txt @@ -348,7 +348,6 @@ list(REMOVE_ITEM TEST_OPS test_imperative_static_runner_while) # disable this unittest temporarily list(REMOVE_ITEM TEST_OPS test_imperative_data_loader_exception) list(REMOVE_ITEM TEST_OPS test_sampling_id_op) -list(REMOVE_ITEM TEST_OPS test_static_save_load) if (APPLE OR WIN32) list(REMOVE_ITEM TEST_OPS test_dataset) @@ -669,7 +668,7 @@ set_tests_properties(test_nearest_interp_v2_op PROPERTIES TIMEOUT 120) set_tests_properties(test_trilinear_interp_op PROPERTIES TIMEOUT 120) set_tests_properties(test_bicubic_interp_v2_op PROPERTIES TIMEOUT 120) set_tests_properties(test_gather_op PROPERTIES TIMEOUT 120) -#set_tests_properties(test_static_save_load PROPERTIES TIMEOUT 120) +set_tests_properties(test_static_save_load PROPERTIES TIMEOUT 120) set_tests_properties(test_imperative_selected_rows_to_lod_tensor PROPERTIES TIMEOUT 120) set_tests_properties(test_index_select_op PROPERTIES TIMEOUT 120) set_tests_properties(test_parallel_ssa_graph_inference_feed_partial_data PROPERTIES TIMEOUT 120) diff --git a/python/paddle/fluid/tests/unittests/test_static_save_load.py b/python/paddle/fluid/tests/unittests/test_static_save_load.py index baab747c57..d7618add29 100644 --- a/python/paddle/fluid/tests/unittests/test_static_save_load.py +++ b/python/paddle/fluid/tests/unittests/test_static_save_load.py @@ -28,6 +28,7 @@ import numpy as np import six import pickle import os +import errno class SimpleLSTMRNN(fluid.Layer): @@ -1159,11 +1160,20 @@ class TestProgramStateOldSave(unittest.TestCase): self.check_in_static(main_program, base_map) # case 2: load with no need file + def symlink_force(target, link_name): + try: + os.symlink(target, link_name) + except OSError as e: + if e.errno == errno.EEXIST: + os.remove(link_name) + os.symlink(target, link_name) + else: + raise e + orig_filepath = './test_program_1/fc_0.w_0' symlink_filepath = './test_program_1/link_fc_0.w_0' - if os.path.exists(symlink_filepath): - os.remove(symlink_filepath) - os.symlink(orig_filepath, symlink_filepath) + # create a needless link file for coverage + symlink_force(orig_filepath, symlink_filepath) program_state = fluid.load_program_state("test_program_1") fluid.set_program_state(main_program, program_state) self.check_in_static(main_program, base_map) -- GitLab