void test_create(enkf_config_node_type * config_node ) { obs_vector_type * obs_vector = obs_vector_alloc( SUMMARY_OBS , "OBS" , config_node , 100 ); test_assert_true( obs_vector_is_instance( obs_vector )); { const int_vector_type * step_list = obs_vector_get_step_list( obs_vector ); { summary_obs_type * obs_node = summary_obs_alloc( "FOPT" , "FOPT" , 10 , 1 , NULL , 0); obs_vector_install_node( obs_vector , 10 , obs_node ); test_assert_int_equal( 1 , int_vector_size( step_list )); test_assert_int_equal( 10 , int_vector_iget( step_list , 0)); } { summary_obs_type * obs_node = summary_obs_alloc( "FOPT" , "FOPT" , 10 , 1 , NULL , 0); obs_vector_install_node( obs_vector , 10 , obs_node ); test_assert_int_equal( 1 , int_vector_size( step_list )); test_assert_int_equal( 10 , int_vector_iget( step_list , 0)); } { summary_obs_type * obs_node = summary_obs_alloc( "FOPT" , "FOPT" , 10 , 1 , NULL , 0); obs_vector_install_node( obs_vector , 5 , obs_node ); test_assert_int_equal( 2 , int_vector_size( step_list )); test_assert_int_equal( 5 , int_vector_iget( step_list , 0)); test_assert_int_equal( 10 , int_vector_iget( step_list , 1)); } { summary_obs_type * obs_node = summary_obs_alloc( "FOPT" , "FOPT" , 10 , 1 , NULL , 0); obs_vector_install_node( obs_vector , 15 , obs_node ); test_assert_int_equal( 3 , int_vector_size( step_list )); test_assert_int_equal( 5 , int_vector_iget( step_list , 0)); test_assert_int_equal( 10 , int_vector_iget( step_list , 1)); test_assert_int_equal( 15 , int_vector_iget( step_list , 2)); } } obs_vector_free( obs_vector ); }
static void obs_vector_add_summary_obs( obs_vector_type * obs_vector , int obs_index , const char * summary_key , const char * obs_key , double value , double std , const char * auto_corrf_name , double auto_corrf_param) { summary_obs_type * summary_obs = summary_obs_alloc( summary_key , obs_key , value , std , auto_corrf_name , auto_corrf_param); obs_vector_install_node( obs_vector , obs_index , summary_obs ); }