Skip to content

Remove testing_unimplemented.cpp in favour of integration.rs #400

Description

@wprzytula

testing_unimplemented.cpp is used ONLY for C++ integration tests (/tests/src/integration).
integration.rs is used to provide stubs for:

  • Rust integration tests,
  • C examples,
  • C++ integration tests, as proved by the code excerpt below.
if(CASS_BUILD_INTEGRATION_TESTS OR CASS_BUILD_EXAMPLES)
  set(CMAKE_Rust_FLAGS "${CMAKE_Rust_FLAGS} --cfg cpp_integration_testing")
endif()

Note that function sets in both files should have empty intersection.

So the current rule of thumb is to put stubs in integration.rs if they're useful to anything other than C++ integration tests, else leave it in testing_unimplemented.cpp.

Originally posted by @wprzytula in #398 (comment)

The idea of @Lorak-mmk is to remove testing_unimplemented.cpp altogether and have everything in testing.rs.
One immediately problem with this is that current implementations of functions in testing_unimplemented.cpp throw C++ exceptions, which Rust implementations in testing.rs obviously couldn't do.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions