mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-05 04:13:13 +02:00
* Updated json tests to run properly when the default code is non-UTF8.
This commit is contained in:
parent
7e158b6c9b
commit
9653406ac6
@ -1,4 +1,4 @@
|
|||||||
{ %OPT=-S2 }
|
{ %OPT=-S2 -Fcutf8 }
|
||||||
{
|
{
|
||||||
This file is part of the Free Component Library
|
This file is part of the Free Component Library
|
||||||
|
|
||||||
|
@ -50,12 +50,12 @@ type
|
|||||||
procedure CallNoHandlerStream;
|
procedure CallNoHandlerStream;
|
||||||
procedure DoTestFloat(F: TJSONFloat); overload;
|
procedure DoTestFloat(F: TJSONFloat); overload;
|
||||||
procedure DoTestFloat(F: TJSONFloat; S: String); overload;
|
procedure DoTestFloat(F: TJSONFloat; S: String); overload;
|
||||||
procedure DoTestString(S: String; AValue: String='');
|
procedure DoTestString(S: TJSONStringType; AValue: TJSONStringType='');
|
||||||
procedure DoTrailingCommaErrorArray;
|
procedure DoTrailingCommaErrorArray;
|
||||||
procedure DoTrailingCommaErrorObject;
|
procedure DoTrailingCommaErrorObject;
|
||||||
Protected
|
Protected
|
||||||
procedure DoTestError(S: String; Options : TJSONOptions = DefaultOpts); virtual; abstract;
|
procedure DoTestError(S: String; Options : TJSONOptions = DefaultOpts); virtual; abstract;
|
||||||
Procedure TestRead(aJSON : String; AResult : Array of string); virtual; abstract;
|
Procedure TestRead(aJSON : String; AResult : Array of TJSONStringType); virtual; abstract;
|
||||||
published
|
published
|
||||||
procedure TestEmpty;
|
procedure TestEmpty;
|
||||||
procedure TestNull;
|
procedure TestNull;
|
||||||
@ -86,7 +86,7 @@ type
|
|||||||
Procedure Teardown; override;
|
Procedure Teardown; override;
|
||||||
Public
|
Public
|
||||||
procedure DoTestError(S: String; Options : TJSONOptions = DefaultOpts); override;
|
procedure DoTestError(S: String; Options : TJSONOptions = DefaultOpts); override;
|
||||||
Procedure TestRead(aJSON : String; AResult : Array of string); override;
|
Procedure TestRead(aJSON : String; AResult : Array of TJSONStringType); override;
|
||||||
Property Reader : TMyJSONReader Read FReader;
|
Property Reader : TMyJSONReader Read FReader;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -125,7 +125,7 @@ type
|
|||||||
Procedure Teardown; override;
|
Procedure Teardown; override;
|
||||||
Public
|
Public
|
||||||
procedure DoTestError(S: String; Options : TJSONOptions = DefaultOpts); override;
|
procedure DoTestError(S: String; Options : TJSONOptions = DefaultOpts); override;
|
||||||
Procedure TestRead(aJSON : String; AResult : Array of string); override;
|
Procedure TestRead(aJSON : String; AResult : Array of TJSONStringType); override;
|
||||||
Property Reader : TJSONConsumerReader Read FReader;
|
Property Reader : TJSONConsumerReader Read FReader;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -154,7 +154,7 @@ type
|
|||||||
Procedure Teardown; override;
|
Procedure Teardown; override;
|
||||||
Public
|
Public
|
||||||
procedure DoTestError(S: String; Options : TJSONOptions = DefaultOpts); override;
|
procedure DoTestError(S: String; Options : TJSONOptions = DefaultOpts); override;
|
||||||
Procedure TestRead(aJSON : String; AResult : Array of string); override;
|
Procedure TestRead(aJSON : String; AResult : Array of TJSONStringType); override;
|
||||||
Property Reader : TJSONEventReader Read FReader;
|
Property Reader : TJSONEventReader Read FReader;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -241,8 +241,11 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TMyJSONReader.StringValue(const AValue: TJSONStringType);
|
procedure TMyJSONReader.StringValue(const AValue: TJSONStringType);
|
||||||
|
var
|
||||||
|
s: TJSONStringType;
|
||||||
begin
|
begin
|
||||||
List.Add('string:'+AValue)
|
s:='string:'+AValue;
|
||||||
|
List.Add(s);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
destructor TMyJSONReader.Destroy;
|
destructor TMyJSONReader.Destroy;
|
||||||
@ -492,11 +495,11 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TBaseTestReader.DoTestString(S: String; AValue : String = '');
|
procedure TBaseTestReader.DoTestString(S: TJSONStringType; AValue : TJSONStringType = '');
|
||||||
|
|
||||||
begin
|
begin
|
||||||
if AValue='' then
|
if AValue='' then
|
||||||
AValue:=S;
|
AValue:=S;
|
||||||
|
FOptions:=[joUTF8];
|
||||||
TestRead('"'+S+'"',['string:'+AValue]);
|
TestRead('"'+S+'"',['string:'+AValue]);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -522,7 +525,7 @@ begin
|
|||||||
inherited Teardown;
|
inherited Teardown;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestReader.TestRead(aJSON: String; AResult: array of string);
|
procedure TTestReader.TestRead(aJSON: String; AResult: array of TJSONStringType);
|
||||||
|
|
||||||
Var
|
Var
|
||||||
I : Integer;
|
I : Integer;
|
||||||
@ -633,8 +636,11 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TJSONConsumer.StringValue(const AValue: TJSONStringType);
|
procedure TJSONConsumer.StringValue(const AValue: TJSONStringType);
|
||||||
|
var
|
||||||
|
s: TJSONStringType;
|
||||||
begin
|
begin
|
||||||
List.Add('string:'+AValue)
|
s:='string:'+AValue;
|
||||||
|
List.Add(s);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
constructor TJSONConsumer.Create(AList: TStrings);
|
constructor TJSONConsumer.Create(AList: TStrings);
|
||||||
@ -642,7 +648,7 @@ begin
|
|||||||
FList:=AList;
|
FList:=AList;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestJSONConsumerReader.TestRead(aJSON: String; AResult: array of string);
|
procedure TTestJSONConsumerReader.TestRead(aJSON: String; AResult: array of TJSONStringType);
|
||||||
|
|
||||||
Var
|
Var
|
||||||
I : Integer;
|
I : Integer;
|
||||||
@ -731,7 +737,7 @@ begin
|
|||||||
Fail('Parse of JSON string "'+S+'" should fail, but succeeded');
|
Fail('Parse of JSON string "'+S+'" should fail, but succeeded');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestJSONEventReader.TestRead(aJSON: String; AResult: array of string);
|
procedure TTestJSONEventReader.TestRead(aJSON: String; AResult: array of TJSONStringType);
|
||||||
|
|
||||||
Var
|
Var
|
||||||
I : Integer;
|
I : Integer;
|
||||||
@ -817,8 +823,11 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestJSONEventReader.StringValue(Sender: TObject; const AValue: TJSONStringType);
|
procedure TTestJSONEventReader.StringValue(Sender: TObject; const AValue: TJSONStringType);
|
||||||
|
var
|
||||||
|
s: TJSONStringType;
|
||||||
begin
|
begin
|
||||||
FList.Add('string:'+AValue)
|
s:='string:'+AValue;
|
||||||
|
FList.Add(s);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestJSONEventReader.HookupEvents(AReader: TJSONEventReader);
|
procedure TTestJSONEventReader.HookupEvents(AReader: TJSONEventReader);
|
||||||
|
Loading…
Reference in New Issue
Block a user