@@ -10,7 +10,6 @@ use godot::builtin::{
10
10
array, varray, Array , Callable , GString , NodePath , StringName , Variant , VariantArray ,
11
11
} ;
12
12
use godot:: classes:: { Node2D , Object , RefCounted } ;
13
- use godot:: init:: GdextBuild ;
14
13
use godot:: meta:: ToGodot ;
15
14
use godot:: obj:: { Gd , NewAlloc , NewGd } ;
16
15
use godot:: register:: { godot_api, GodotClass } ;
@@ -117,7 +116,7 @@ fn callable_static() {
117
116
assert_eq ! ( result, "12345" . to_variant( ) ) ;
118
117
119
118
#[ cfg( since_api = "4.3" ) ]
120
- assert_eq ! ( callable. arg_len ( ) , 0 ) ; // Consistently doesn't work :)
119
+ assert_eq ! ( callable. get_argument_count ( ) , 0 ) ; // Consistently doesn't work :)
121
120
}
122
121
123
122
#[ itest]
@@ -247,37 +246,31 @@ fn callable_unbind() {
247
246
fn callable_arg_len ( ) {
248
247
let obj = CallableTestObj :: new_gd ( ) ;
249
248
250
- assert_eq ! ( obj. callable( "foo" ) . arg_len ( ) , 1 ) ;
251
- assert_eq ! ( obj. callable( "bar" ) . arg_len ( ) , 1 ) ;
252
- assert_eq ! ( obj. callable( "baz" ) . arg_len ( ) , 4 ) ;
253
- assert_eq ! ( obj. callable( "foo" ) . unbind( 10 ) . arg_len ( ) , 11 ) ;
249
+ assert_eq ! ( obj. callable( "foo" ) . get_argument_count ( ) , 1 ) ;
250
+ assert_eq ! ( obj. callable( "bar" ) . get_argument_count ( ) , 1 ) ;
251
+ assert_eq ! ( obj. callable( "baz" ) . get_argument_count ( ) , 4 ) ;
252
+ assert_eq ! ( obj. callable( "foo" ) . unbind( 10 ) . get_argument_count ( ) , 11 ) ;
254
253
assert_eq ! (
255
254
obj. callable( "baz" )
256
255
. bind( & [ 10 . to_variant( ) , "hello" . to_variant( ) ] )
257
- . arg_len ( ) ,
256
+ . get_argument_count ( ) ,
258
257
2
259
258
) ;
260
259
}
261
260
262
261
#[ itest]
263
262
fn callable_bound_args_len ( ) {
263
+ // Note: bug regarding get_bound_arguments_count() returning negative numbers has been fixed in godot-rust also for older versions.
264
+
264
265
let obj = CallableTestObj :: new_gd ( ) ;
266
+ let original = obj. callable ( "foo" ) ;
265
267
266
- assert_eq ! ( obj. callable( "foo" ) . bound_args_len( ) , 0 ) ;
267
- assert_eq ! ( obj. callable( "foo" ) . bindv( & varray![ 10 ] ) . bound_args_len( ) , 1 ) ;
268
- #[ cfg( since_api = "4.3" ) ]
269
- assert_eq ! (
270
- obj. callable( "foo" ) . unbind( 28 ) . bound_args_len( ) ,
271
- if GdextBuild :: since_api( "4.4" ) { 0 } else { -28 }
272
- ) ;
273
- #[ cfg( since_api = "4.3" ) ]
274
- assert_eq ! (
275
- obj. callable( "foo" )
276
- . bindv( & varray![ 10 ] )
277
- . unbind( 5 )
278
- . bound_args_len( ) ,
279
- if GdextBuild :: since_api( "4.4" ) { 1 } else { -4 }
280
- ) ;
268
+ assert_eq ! ( original. get_bound_arguments_count( ) , 0 ) ;
269
+ assert_eq ! ( original. unbind( 28 ) . get_bound_arguments_count( ) , 0 ) ;
270
+
271
+ let with_1_arg = original. bindv ( & varray ! [ 10 ] ) ;
272
+ assert_eq ! ( with_1_arg. get_bound_arguments_count( ) , 1 ) ;
273
+ assert_eq ! ( with_1_arg. unbind( 5 ) . get_bound_arguments_count( ) , 1 ) ;
281
274
}
282
275
283
276
#[ itest]
0 commit comments