void simple_test() { time_map_type * time_map = time_map_alloc( ); test_work_area_type * work_area = test_work_area_alloc("enkf_time_map" , true); const char * mapfile = "map"; test_assert_true( time_map_update( time_map , 0 , 100 ) ); test_assert_true( time_map_update( time_map , 1 , 200 ) ); test_assert_true( time_map_update( time_map , 1 , 200 ) ); test_assert_false( time_map_update( time_map , 1 , 250 ) ); test_assert_true( time_map_equal( time_map , time_map ) ); time_map_fwrite( time_map , mapfile); { time_map_type * time_map2 = time_map_alloc( ); test_assert_false( time_map_equal( time_map , time_map2 ) ); time_map_fread( time_map2 , mapfile ); test_assert_true( time_map_equal( time_map , time_map2 ) ); time_map_free( time_map2 ); } { time_t mtime1 = util_file_mtime( mapfile ); sleep(2); time_map_fwrite( time_map , mapfile); test_assert_time_t_equal( mtime1 , util_file_mtime( mapfile ) ); time_map_update( time_map , 2 , 300 ); time_map_fwrite( time_map , mapfile); test_assert_time_t_not_equal( mtime1 , util_file_mtime( mapfile ) ); } test_work_area_free( work_area ); }
static void enkf_fs_fsync_time_map( enkf_fs_type * fs ) { char * filename = enkf_fs_alloc_case_filename( fs , TIME_MAP_FILE ); time_map_fwrite( fs->time_map , filename ); free( filename ); }