|
@@ -229,6 +229,7 @@ Type
|
|
Procedure TestSimpleDeleterFunction;
|
|
Procedure TestSimpleDeleterFunction;
|
|
Procedure TestAttrFunctionFunction;
|
|
Procedure TestAttrFunctionFunction;
|
|
Procedure TestOptionalDefaultArgFunction;
|
|
Procedure TestOptionalDefaultArgFunction;
|
|
|
|
+ Procedure TestFunction_ClampArg;
|
|
end;
|
|
end;
|
|
|
|
|
|
{ TTestDictionaryParser }
|
|
{ TTestDictionaryParser }
|
|
@@ -459,7 +460,6 @@ end;
|
|
procedure TTestOperationInterfaceParser.TestSimpleGetterFunction;
|
|
procedure TTestOperationInterfaceParser.TestSimpleGetterFunction;
|
|
begin
|
|
begin
|
|
AssertEquals('Options',[foGetter],ParseFunction('getter short A()','A','short',[]).Options);
|
|
AssertEquals('Options',[foGetter],ParseFunction('getter short A()','A','short',[]).Options);
|
|
-
|
|
|
|
end;
|
|
end;
|
|
|
|
|
|
procedure TTestOperationInterfaceParser.TestSimpleSetterFunction;
|
|
procedure TTestOperationInterfaceParser.TestSimpleSetterFunction;
|
|
@@ -487,6 +487,16 @@ begin
|
|
ParseFunction('void A(optional short me = 0,optional short you = 0)','A','void',['short','me','short','you'])
|
|
ParseFunction('void A(optional short me = 0,optional short you = 0)','A','void',['short','me','short','you'])
|
|
end;
|
|
end;
|
|
|
|
|
|
|
|
+procedure TTestOperationInterfaceParser.TestFunction_ClampArg;
|
|
|
|
+var
|
|
|
|
+ F: TIDLFunctionDefinition;
|
|
|
|
+ Arg: TIDLDefinition;
|
|
|
|
+begin
|
|
|
|
+ F:=ParseFunction('void A(optional [Clamp] long long start)','A','void',['long long','start']);
|
|
|
|
+ Arg:=F.Arguments[0];
|
|
|
|
+ AssertEquals('optional arg is Clamp',true,Arg.HasSimpleAttribute('Clamp'));
|
|
|
|
+end;
|
|
|
|
+
|
|
{ TTestSerializerInterfaceParser }
|
|
{ TTestSerializerInterfaceParser }
|
|
|
|
|
|
function TTestSerializerInterfaceParser.ParseSerializer(ADef: UTF8String; Attrs: array of UTF8String): TIDLSerializerDefinition;
|
|
function TTestSerializerInterfaceParser.ParseSerializer(ADef: UTF8String; Attrs: array of UTF8String): TIDLSerializerDefinition;
|
|
@@ -800,7 +810,7 @@ end;
|
|
|
|
|
|
procedure TTestFunctionCallbackParser.ParseOneOptionalArgumentWithAttrsReturnVoid;
|
|
procedure TTestFunctionCallbackParser.ParseOneOptionalArgumentWithAttrsReturnVoid;
|
|
begin
|
|
begin
|
|
- ParseCallback('A','void',['[Me] optional unsigned long long','A']);
|
|
|
|
|
|
+ ParseCallback('A','void',['optional [Me] unsigned long long','A']);
|
|
AssertTrue('is optional',Func.Argument[0].IsOptional);
|
|
AssertTrue('is optional',Func.Argument[0].IsOptional);
|
|
AssertEquals('Type name','unsigned long long',Func.Argument[0].ArgumentType.TypeName);
|
|
AssertEquals('Type name','unsigned long long',Func.Argument[0].ArgumentType.TypeName);
|
|
AssertTrue('Have attribute',Func.Arguments[0].HasSimpleAttribute('Me'));
|
|
AssertTrue('Have attribute',Func.Arguments[0].HasSimpleAttribute('Me'));
|
|
@@ -820,7 +830,7 @@ end;
|
|
|
|
|
|
procedure TTestFunctionCallbackParser.ParseThreeArgumentsAttrsReturnVoid;
|
|
procedure TTestFunctionCallbackParser.ParseThreeArgumentsAttrsReturnVoid;
|
|
begin
|
|
begin
|
|
- ParseCallback('A','void',['[Me] short','B','[Me] short','C','[Me] optional unsigned long long','D']);
|
|
|
|
|
|
+ ParseCallback('A','void',['[Me] short','B','[Me] short','C','optional [Me] unsigned long long','D']);
|
|
AssertTrue('Have attribute',Func.Arguments[0].HasSimpleAttribute('Me'));
|
|
AssertTrue('Have attribute',Func.Arguments[0].HasSimpleAttribute('Me'));
|
|
AssertTrue('Have attribute',Func.Arguments[1].HasSimpleAttribute('Me'));
|
|
AssertTrue('Have attribute',Func.Arguments[1].HasSimpleAttribute('Me'));
|
|
AssertTrue('Have attribute',Func.Arguments[2].HasSimpleAttribute('Me'));
|
|
AssertTrue('Have attribute',Func.Arguments[2].HasSimpleAttribute('Me'));
|