Skip to content
Snippets Groups Projects

F get value

Merged Alexander Kreft requested to merge f-get-value into dev
1 file
+ 41
3
Compare changes
  • Side-by-side
  • Inline
+ 41
3
@@ -147,9 +147,9 @@ using CaosDB
@@ -147,9 +147,9 @@ using CaosDB
# properties can be accessed as a list
# properties can be accessed as a list
# TODO(henrik, daniel)
# TODO(henrik, daniel)
# @test CaosDB.Entity.get_value(
@test CaosDB.Entity.get_value(
# CaosDB.Entity.get_properties(rec_with_parent_and_props)[1],
CaosDB.Entity.get_properties(rec_with_parent_and_props)[1],
# ) == "2"
) == "2"
type, is_ref, is_list = CaosDB.Entity.get_datatype(
type, is_ref, is_list = CaosDB.Entity.get_datatype(
CaosDB.Entity.get_properties(rec_with_parent_and_props)[2],
CaosDB.Entity.get_properties(rec_with_parent_and_props)[2],
)
)
@@ -180,22 +180,31 @@ using CaosDB
@@ -180,22 +180,31 @@ using CaosDB
)
)
string_prop =
string_prop =
CaosDB.Entity.create_property_entity(name = "StringProp", datatype = "TEXT")
CaosDB.Entity.create_property_entity(name = "StringProp", datatype = "TEXT")
 
ref_prop = CaosDB.Entity.create_property_entity(
 
name = "RefProp",
 
datatype = "MyRefType",
 
is_reference = true,
 
)
CaosDB.Entity.set_value(int_prop, 123)
CaosDB.Entity.set_value(int_prop, 123)
CaosDB.Entity.set_value(double_prop, 10.246)
CaosDB.Entity.set_value(double_prop, 10.246)
CaosDB.Entity.set_value(bool_prop, true)
CaosDB.Entity.set_value(bool_prop, true)
CaosDB.Entity.set_value(string_prop, "Hello World")
CaosDB.Entity.set_value(string_prop, "Hello World")
 
CaosDB.Entity.set_value(ref_prop, "some_id")
@test CaosDB.Entity.get_value(int_prop) == 123
@test CaosDB.Entity.get_value(int_prop) == 123
@test CaosDB.Entity.get_value(double_prop) == 10.246
@test CaosDB.Entity.get_value(double_prop) == 10.246
@test CaosDB.Entity.get_value(bool_prop) === true
@test CaosDB.Entity.get_value(bool_prop) === true
@test CaosDB.Entity.get_value(string_prop) == "Hello World"
@test CaosDB.Entity.get_value(string_prop) == "Hello World"
 
@test CaosDB.Entity.get_value(ref_prop) == "some_id"
@test isa(CaosDB.Entity.get_value(int_prop), Integer)
@test isa(CaosDB.Entity.get_value(int_prop), Integer)
@test isa(CaosDB.Entity.get_value(double_prop), Number)
@test isa(CaosDB.Entity.get_value(double_prop), Number)
@test isa(CaosDB.Entity.get_value(bool_prop), Bool)
@test isa(CaosDB.Entity.get_value(bool_prop), Bool)
@test isa(CaosDB.Entity.get_value(string_prop), String)
@test isa(CaosDB.Entity.get_value(string_prop), String)
 
@test isa(CaosDB.Entity.get_value(ref_prop), String)
@test CaosDB.Entity.get_datatype(int_prop) == ("INTEGER", false, false)
@test CaosDB.Entity.get_datatype(int_prop) == ("INTEGER", false, false)
@test CaosDB.Entity.get_datatype(double_prop) == ("DOUBLE", false, false)
@test CaosDB.Entity.get_datatype(double_prop) == ("DOUBLE", false, false)
@test CaosDB.Entity.get_datatype(bool_prop) == ("BOOLEAN", false, false)
@test CaosDB.Entity.get_datatype(bool_prop) == ("BOOLEAN", false, false)
@test CaosDB.Entity.get_datatype(string_prop) == ("TEXT", false, false)
@test CaosDB.Entity.get_datatype(string_prop) == ("TEXT", false, false)
 
@test CaosDB.Entity.get_datatype(ref_prop) == ("MyRefType", true, false)
""" Test lists """
""" Test lists """
int_list_prop = CaosDB.Entity.create_property_entity(
int_list_prop = CaosDB.Entity.create_property_entity(
@@ -218,22 +227,32 @@ using CaosDB
@@ -218,22 +227,32 @@ using CaosDB
datatype = "TEXT",
datatype = "TEXT",
is_list = true,
is_list = true,
)
)
 
ref_list_prop = CaosDB.Entity.create_property_entity(
 
name = "RefListProp",
 
datatype = "MyRefType",
 
is_list = true,
 
is_reference = true,
 
)
CaosDB.Entity.set_value(int_list_prop, [123, 456])
CaosDB.Entity.set_value(int_list_prop, [123, 456])
CaosDB.Entity.set_value(double_list_prop, [10.246, 3.14])
CaosDB.Entity.set_value(double_list_prop, [10.246, 3.14])
CaosDB.Entity.set_value(bool_list_prop, [true, false])
CaosDB.Entity.set_value(bool_list_prop, [true, false])
CaosDB.Entity.set_value(string_list_prop, ["Hello", "World"])
CaosDB.Entity.set_value(string_list_prop, ["Hello", "World"])
 
CaosDB.Entity.set_value(ref_list_prop, ["some_id", "another_id"])
@test CaosDB.Entity.get_value(int_list_prop) == [123, 456]
@test CaosDB.Entity.get_value(int_list_prop) == [123, 456]
@test CaosDB.Entity.get_value(double_list_prop) == [10.246, 3.14]
@test CaosDB.Entity.get_value(double_list_prop) == [10.246, 3.14]
@test CaosDB.Entity.get_value(bool_list_prop) === [true, false]
@test CaosDB.Entity.get_value(bool_list_prop) === [true, false]
@test CaosDB.Entity.get_value(string_list_prop) == ["Hello", "World"]
@test CaosDB.Entity.get_value(string_list_prop) == ["Hello", "World"]
 
@test CaosDB.Entity.get_value(ref_list_prop) == ["some_id", "another_id"]
@test isa(CaosDB.Entity.get_value(int_list_prop), Vector{Cint})
@test isa(CaosDB.Entity.get_value(int_list_prop), Vector{Cint})
@test isa(CaosDB.Entity.get_value(double_list_prop), Vector{Cdouble})
@test isa(CaosDB.Entity.get_value(double_list_prop), Vector{Cdouble})
@test isa(CaosDB.Entity.get_value(bool_list_prop), Vector{Bool})
@test isa(CaosDB.Entity.get_value(bool_list_prop), Vector{Bool})
@test isa(CaosDB.Entity.get_value(string_list_prop), Vector{String})
@test isa(CaosDB.Entity.get_value(string_list_prop), Vector{String})
 
@test isa(CaosDB.Entity.get_value(ref_list_prop), Vector{String})
@test CaosDB.Entity.get_datatype(int_list_prop) == ("INTEGER", false, true)
@test CaosDB.Entity.get_datatype(int_list_prop) == ("INTEGER", false, true)
@test CaosDB.Entity.get_datatype(double_list_prop) == ("DOUBLE", false, true)
@test CaosDB.Entity.get_datatype(double_list_prop) == ("DOUBLE", false, true)
@test CaosDB.Entity.get_datatype(bool_list_prop) == ("BOOLEAN", false, true)
@test CaosDB.Entity.get_datatype(bool_list_prop) == ("BOOLEAN", false, true)
@test CaosDB.Entity.get_datatype(string_list_prop) == ("TEXT", false, true)
@test CaosDB.Entity.get_datatype(string_list_prop) == ("TEXT", false, true)
 
@test CaosDB.Entity.get_datatype(ref_list_prop) == ("MyRefType", true, true)
end
end
@testset "Property properties" begin
@testset "Property properties" begin
int_prop = CaosDB.Entity.create_property(name = "IntProp", datatype = "INTEGER")
int_prop = CaosDB.Entity.create_property(name = "IntProp", datatype = "INTEGER")
@@ -243,22 +262,31 @@ using CaosDB
@@ -243,22 +262,31 @@ using CaosDB
CaosDB.Entity.create_property(name = "BoolProp", datatype = "BOOLEAN")
CaosDB.Entity.create_property(name = "BoolProp", datatype = "BOOLEAN")
string_prop =
string_prop =
CaosDB.Entity.create_property(name = "StringProp", datatype = "TEXT")
CaosDB.Entity.create_property(name = "StringProp", datatype = "TEXT")
 
ref_prop = CaosDB.Entity.create_property(
 
name = "RefProp",
 
datatype = "MyRefType",
 
is_reference = true,
 
)
CaosDB.Entity.set_value(int_prop, 123)
CaosDB.Entity.set_value(int_prop, 123)
CaosDB.Entity.set_value(double_prop, 10.246)
CaosDB.Entity.set_value(double_prop, 10.246)
CaosDB.Entity.set_value(bool_prop, true)
CaosDB.Entity.set_value(bool_prop, true)
CaosDB.Entity.set_value(string_prop, "Hello World")
CaosDB.Entity.set_value(string_prop, "Hello World")
 
CaosDB.Entity.set_value(ref_prop, "some_id")
@test CaosDB.Entity.get_value(int_prop) == 123
@test CaosDB.Entity.get_value(int_prop) == 123
@test CaosDB.Entity.get_value(double_prop) == 10.246
@test CaosDB.Entity.get_value(double_prop) == 10.246
@test CaosDB.Entity.get_value(bool_prop) === true
@test CaosDB.Entity.get_value(bool_prop) === true
@test CaosDB.Entity.get_value(string_prop) == "Hello World"
@test CaosDB.Entity.get_value(string_prop) == "Hello World"
 
@test CaosDB.Entity.get_value(ref_prop) == "some_id"
@test isa(CaosDB.Entity.get_value(int_prop), Integer)
@test isa(CaosDB.Entity.get_value(int_prop), Integer)
@test isa(CaosDB.Entity.get_value(double_prop), Number)
@test isa(CaosDB.Entity.get_value(double_prop), Number)
@test isa(CaosDB.Entity.get_value(bool_prop), Bool)
@test isa(CaosDB.Entity.get_value(bool_prop), Bool)
@test isa(CaosDB.Entity.get_value(string_prop), String)
@test isa(CaosDB.Entity.get_value(string_prop), String)
 
@test isa(CaosDB.Entity.get_value(ref_prop), String)
@test CaosDB.Entity.get_datatype(int_prop) == ("INTEGER", false, false)
@test CaosDB.Entity.get_datatype(int_prop) == ("INTEGER", false, false)
@test CaosDB.Entity.get_datatype(double_prop) == ("DOUBLE", false, false)
@test CaosDB.Entity.get_datatype(double_prop) == ("DOUBLE", false, false)
@test CaosDB.Entity.get_datatype(bool_prop) == ("BOOLEAN", false, false)
@test CaosDB.Entity.get_datatype(bool_prop) == ("BOOLEAN", false, false)
@test CaosDB.Entity.get_datatype(string_prop) == ("TEXT", false, false)
@test CaosDB.Entity.get_datatype(string_prop) == ("TEXT", false, false)
 
@test CaosDB.Entity.get_datatype(ref_prop) == ("MyRefType", true, false)
""" Test lists """
""" Test lists """
int_list_prop = CaosDB.Entity.create_property(
int_list_prop = CaosDB.Entity.create_property(
@@ -281,22 +309,32 @@ using CaosDB
@@ -281,22 +309,32 @@ using CaosDB
datatype = "TEXT",
datatype = "TEXT",
is_list = true,
is_list = true,
)
)
 
ref_list_prop = CaosDB.Entity.create_property(
 
name = "RefListProp",
 
datatype = "MyRefType",
 
is_list = true,
 
is_reference = true,
 
)
CaosDB.Entity.set_value(int_list_prop, [123, 456])
CaosDB.Entity.set_value(int_list_prop, [123, 456])
CaosDB.Entity.set_value(double_list_prop, [10.246, 3.14])
CaosDB.Entity.set_value(double_list_prop, [10.246, 3.14])
CaosDB.Entity.set_value(bool_list_prop, [true, false])
CaosDB.Entity.set_value(bool_list_prop, [true, false])
CaosDB.Entity.set_value(string_list_prop, ["Hello", "World"])
CaosDB.Entity.set_value(string_list_prop, ["Hello", "World"])
 
CaosDB.Entity.set_value(ref_list_prop, ["some_id", "another_id"])
@test CaosDB.Entity.get_value(int_list_prop) == [123, 456]
@test CaosDB.Entity.get_value(int_list_prop) == [123, 456]
@test CaosDB.Entity.get_value(double_list_prop) == [10.246, 3.14]
@test CaosDB.Entity.get_value(double_list_prop) == [10.246, 3.14]
@test CaosDB.Entity.get_value(bool_list_prop) === [true, false]
@test CaosDB.Entity.get_value(bool_list_prop) === [true, false]
@test CaosDB.Entity.get_value(string_list_prop) == ["Hello", "World"]
@test CaosDB.Entity.get_value(string_list_prop) == ["Hello", "World"]
 
@test CaosDB.Entity.get_value(ref_list_prop) == ["some_id", "another_id"]
@test isa(CaosDB.Entity.get_value(int_list_prop), Vector{Cint})
@test isa(CaosDB.Entity.get_value(int_list_prop), Vector{Cint})
@test isa(CaosDB.Entity.get_value(double_list_prop), Vector{Cdouble})
@test isa(CaosDB.Entity.get_value(double_list_prop), Vector{Cdouble})
@test isa(CaosDB.Entity.get_value(bool_list_prop), Vector{Bool})
@test isa(CaosDB.Entity.get_value(bool_list_prop), Vector{Bool})
@test isa(CaosDB.Entity.get_value(string_list_prop), Vector{String})
@test isa(CaosDB.Entity.get_value(string_list_prop), Vector{String})
 
@test isa(CaosDB.Entity.get_value(ref_list_prop), Vector{String})
@test CaosDB.Entity.get_datatype(int_list_prop) == ("INTEGER", false, true)
@test CaosDB.Entity.get_datatype(int_list_prop) == ("INTEGER", false, true)
@test CaosDB.Entity.get_datatype(double_list_prop) == ("DOUBLE", false, true)
@test CaosDB.Entity.get_datatype(double_list_prop) == ("DOUBLE", false, true)
@test CaosDB.Entity.get_datatype(bool_list_prop) == ("BOOLEAN", false, true)
@test CaosDB.Entity.get_datatype(bool_list_prop) == ("BOOLEAN", false, true)
@test CaosDB.Entity.get_datatype(string_list_prop) == ("TEXT", false, true)
@test CaosDB.Entity.get_datatype(string_list_prop) == ("TEXT", false, true)
 
@test CaosDB.Entity.get_datatype(ref_list_prop) == ("MyRefType", true, true)
end
end
end
end
end
end
Loading