diff --git a/src/CaosDB.jl b/src/CaosDB.jl index 6122a0baf4541346ebc67436956ad0594dc92bab..3f0811a73c4b31458e3b6d63318433ed4a806f58 100644 --- a/src/CaosDB.jl +++ b/src/CaosDB.jl @@ -29,7 +29,7 @@ export evaluate_return_code, CaosDBException, ClientException, GenericCaosDBException, CaosDBMessage # Exports from module Utility -export get_env_fallback +export get_ccaosdb_version, get_env_fallback # Export from module Connection export connect, connect_manually diff --git a/src/Utility.jl b/src/Utility.jl index 4f74dcdf06487fc7e5c4d1639294442fe1c02b1e..d9364e5bca0501001bd801d4d7b8ca2231e69416 100644 --- a/src/Utility.jl +++ b/src/Utility.jl @@ -22,7 +22,7 @@ # module Utility -export get_env_fallback +export get_ccaosdb_version, get_env_fallback using ..CaosDB @@ -47,4 +47,22 @@ function get_env_fallback(var::AbstractString, default::AbstractString = "") end +""" + function get_ccaosdb_version() + +Return the version of the CaosDB C interface that is used by +CaosDB.jl. +""" +function get_ccaosdb_version() + + major = + ccall((:caosdb_constants_LIBCAOSDB_VERSION_MAJOR, CaosDB.library_name), Cint, ()) + minor = + ccall((:caosdb_constants_LIBCAOSDB_VERSION_MINOR, CaosDB.library_name), Cint, ()) + patch = + ccall((:caosdb_constants_LIBCAOSDB_VERSION_PATCH, CaosDB.library_name), Cint, ()) + + return VersionNumber("$major.$minor.$patch") +end + end # Utility diff --git a/test/runtests.jl b/test/runtests.jl index 89ec36322d36f019c4fd6fd04485e2411ac0c168..5bccba5cd56c22b324c59536ecb21f7b5b1b2ee2 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -25,21 +25,7 @@ using CaosDB @testset "CaosDBUnitTests" begin @testset "TestCaosdbCppLibVersion" begin - @test ccall( - (:caosdb_constants_LIBCAOSDB_VERSION_MAJOR, CaosDB.library_name), - Cint, - () - ) == 0 - @test ccall( - (:caosdb_constants_LIBCAOSDB_VERSION_MINOR, CaosDB.library_name), - Cint, - () - ) == 0 - @test ccall( - (:caosdb_constants_LIBCAOSDB_VERSION_PATCH, CaosDB.library_name), - Cint, - () - ) == 16 + @test CaosDB.Utility.get_ccaosdb_version() >= v"0.0.16" end @testset "TestUtility" begin