summaryrefslogtreecommitdiffstats
path: root/test/src/example.cpp
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2023-08-15 09:30:21 +0200
committerGitHub <noreply@github.com>2023-08-15 09:30:21 +0200
commitdf5500565a2fd18e7a505ac09c1230dc7b3b6b9d (patch)
treec1cb57942ab46c3f7ce6d6a7e1263136fae5ab35 /test/src/example.cpp
parent5eebc6b20c023f9c48bd0b9c5d06b7db4c550f7c (diff)
parentd5fab0b9f813396500acbf46d6b7fdf2c5bc5b73 (diff)
downloadredot-cpp-df5500565a2fd18e7a505ac09c1230dc7b3b6b9d.tar.gz
Merge pull request #1209 from dsnopek/missing-tests
Add automated tests to verify some previous fixes
Diffstat (limited to 'test/src/example.cpp')
-rw-r--r--test/src/example.cpp43
1 files changed, 43 insertions, 0 deletions
diff --git a/test/src/example.cpp b/test/src/example.cpp
index af3837a..8a761a4 100644
--- a/test/src/example.cpp
+++ b/test/src/example.cpp
@@ -142,6 +142,17 @@ void Example::_bind_methods() {
ClassDB::bind_method(D_METHOD("test_string_resize"), &Example::test_string_resize);
ClassDB::bind_method(D_METHOD("test_vector_ops"), &Example::test_vector_ops);
+ ClassDB::bind_method(D_METHOD("test_object_cast_to_node", "object"), &Example::test_object_cast_to_node);
+ ClassDB::bind_method(D_METHOD("test_object_cast_to_control", "object"), &Example::test_object_cast_to_control);
+ ClassDB::bind_method(D_METHOD("test_object_cast_to_example", "object"), &Example::test_object_cast_to_example);
+
+ ClassDB::bind_method(D_METHOD("test_variant_vector2i_conversion", "variant"), &Example::test_variant_vector2i_conversion);
+ ClassDB::bind_method(D_METHOD("test_variant_int_conversion", "variant"), &Example::test_variant_int_conversion);
+ ClassDB::bind_method(D_METHOD("test_variant_float_conversion", "variant"), &Example::test_variant_float_conversion);
+
+ ClassDB::bind_method(D_METHOD("test_add_child", "node"), &Example::test_add_child);
+ ClassDB::bind_method(D_METHOD("test_set_tileset", "tilemap", "tileset"), &Example::test_set_tileset);
+
ClassDB::bind_method(D_METHOD("test_bitfield", "flags"), &Example::test_bitfield);
ClassDB::bind_method(D_METHOD("test_rpc", "value"), &Example::test_rpc);
@@ -359,6 +370,38 @@ Example *Example::test_node_argument(Example *p_node) const {
return p_node;
}
+bool Example::test_object_cast_to_node(Object *p_object) const {
+ return Object::cast_to<Node>(p_object) != nullptr;
+}
+
+bool Example::test_object_cast_to_control(Object *p_object) const {
+ return Object::cast_to<Control>(p_object) != nullptr;
+}
+
+bool Example::test_object_cast_to_example(Object *p_object) const {
+ return Object::cast_to<Example>(p_object) != nullptr;
+}
+
+Vector2i Example::test_variant_vector2i_conversion(const Variant &p_variant) const {
+ return p_variant;
+}
+
+int Example::test_variant_int_conversion(const Variant &p_variant) const {
+ return p_variant;
+}
+
+float Example::test_variant_float_conversion(const Variant &p_variant) const {
+ return p_variant;
+}
+
+void Example::test_add_child(Node *p_node) {
+ add_child(p_node);
+}
+
+void Example::test_set_tileset(TileMap *p_tilemap, const Ref<TileSet> &p_tileset) const {
+ p_tilemap->set_tileset(p_tileset);
+}
+
BitField<Example::Flags> Example::test_bitfield(BitField<Flags> flags) {
return flags;
}