Ejemplo n.º 1
0
void test_fortio() {
    test_work_area_type * work_area = test_work_area_alloc("fortio");

    ERT::FortIO fortio("new_file" , std::fstream::out );
    {
        std::vector<int> data;
        for (size_t i=0; i < 1000; i++)
            data.push_back(i);

        fortio_fwrite_record( fortio.getPointer() , reinterpret_cast<char *>(data.data()) , 1000 * 4 );
    }
    fortio.close();

    fortio = ERT::FortIO("new_file" , std::fstream::in );
    {
        std::vector<int> data;
        for (size_t i=0; i < 1000; i++)
            data.push_back(99);

        test_assert_true( fortio_fread_buffer( fortio.getPointer() , reinterpret_cast<char *>(data.data()) , 1000 * 4 ) );
        for (size_t i =0; i < 1000; i++)
            test_assert_size_t_equal(data[i], i);

    }
    fortio.close();
    test_work_area_free( work_area );

    test_assert_throw( ERT::FortIO fortio("file/does/not/exists" , std::fstream::in) , std::invalid_argument );
}
Ejemplo n.º 2
0
void test_kw_vector_assign() {
    std::vector< int > vec = { 1, 2, 3, 4, 5 };
    ERT::EclKW< int > kw( "XYZ", vec );

    test_assert_size_t_equal( kw.size(), vec.size() );

    for( size_t i = 0; i < kw.size(); ++i ) {
        test_assert_int_equal( kw.at( i ), vec[ i ] );
        test_assert_int_equal( kw[ i ] , vec[ i ] );
    }

    for( size_t i = 0; i < kw.size(); ++i ) {
        kw[i] *= 2;
        test_assert_int_equal( kw[ i ] , 2*vec[ i ] );
    }
}
Ejemplo n.º 3
0
void test_kw_vector_string() {
    std::vector< const char* > vec = {
        "short",
        "sweet",
        "padded  ",
        "verylongkeyword"
    };

    ERT::EclKW< const char* > kw( "XYZ", vec );

    test_assert_size_t_equal( kw.size(), vec.size() );

    test_assert_string_equal( kw.at( 0 ), "short   " );
    test_assert_string_equal( kw.at( 1 ), "sweet   " );
    test_assert_string_equal( kw.at( 2 ), vec.at( 2 ) );
    test_assert_string_equal( kw.at( 3 ), "verylong" );
    test_assert_string_not_equal( kw.at( 2 ), "verylongkeyword" );
}