ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/public/ibx/trunk/fbintf/testsuite/Test1.pas
(Generate patch)

Comparing ibx/trunk/fbintf/testsuite/Test1.pas (file contents):
Revision 120 by tony, Mon Jan 22 13:58:20 2018 UTC vs.
Revision 308 by tony, Sat Jul 18 10:26:30 2020 UTC

# Line 32 | Line 32 | type
32    TTest1 = class(TTestBase)
33    private
34      procedure DoQuery(Attachment: IAttachment);
35 +    procedure WriteAttachmentInfo(Attachment: IAttachment);
36    public
37      function TestTitle: AnsiString; override;
38      procedure RunTest(CharSet: AnsiString; SQLDialect: integer); override;
# Line 55 | Line 56 | begin
56        while ResultSet.FetchNext do
57        begin
58          for i := 0 to ResultSet.getCount - 1 do
59 <          writeln(OutFile,ResultSet[i].Name,' = ',ResultSet[i].AsString);
59 >          writeln(OutFile,ResultSet[i].Name,' = ',Trim(ResultSet[i].AsString));
60        end;
61      finally
62        ResultSet.Close;
# Line 63 | Line 64 | begin
64      end;
65   end;
66  
67 + procedure TTest1.WriteAttachmentInfo(Attachment: IAttachment);
68 + begin
69 +  writeln(outfile,'DB Connect String = ',Attachment.GetConnectString);
70 +  writeln(outfile,'DB Charset ID = ',Attachment.GetDefaultCharSetID);
71 +  writeln(outfile,'DB SQL Dialect = ',Attachment.GetSQLDialect);
72 +  writeln(outfile,'DB Remote Protocol = ', Attachment.GetRemoteProtocol);
73 +  writeln(outfile,'DB ODS Major Version = ',Attachment.GetODSMajorVersion);
74 +  writeln(outfile,'DB ODS Minor Version = ',Attachment.GetODSMinorVersion);
75 +  writeln(outfile,'User Authentication Method = ',Attachment.GetAuthenticationMethod);
76 +  writeln(outfile,'Firebird Library Path = ',Attachment.getFirebirdAPI.GetFBLibrary.GetLibraryFilePath);
77 +  writeln(outfile,'DB Client Implementation Version = ',Attachment.getFirebirdAPI.GetImplementationVersion);
78 + end;
79 +
80   function TTest1.TestTitle: AnsiString;
81   begin
82    Result := 'Test 1: Create and Drop a Database';
# Line 72 | Line 86 | procedure TTest1.RunTest(CharSet: AnsiSt
86   var DPB: IDPB;
87      Attachment: IAttachment;
88      createSQL: AnsiString;
89 +    libpath: string;
90 +    FBLibrary: IFirebirdLibrary;
91   begin
92    writeln(OutFile,'Creating a Database with empty parameters');
93    Attachment := FirebirdAPI.CreateDatabase('',nil,false);
# Line 82 | Line 98 | begin
98  
99    writeln(OutFile,'Creating a Database using an SQL Statement');
100    createSQL := Format('create database ''%s'' USER ''%s'' PASSWORD ''%s'' DEFAULT CHARACTER SET %s',
101 <                      [Owner.GetNewDatabaseName, Owner.GetUserName, Owner.GetPassword, CharSet]);
101 >                      [ExtractDBName(Owner.GetNewDatabaseName), Owner.GetUserName, Owner.GetPassword, CharSet]);
102    Attachment := FirebirdAPI.CreateDatabase(createSQL,SQLDialect);
103    WriteDBInfo(Attachment.GetDBInformation([isc_info_db_id,isc_info_db_SQL_Dialect]));
104 <  writeln(outfile,'DB Connect String = ',Attachment.GetConnectString);
89 <  writeln(outfile,'DB Charset ID = ',Attachment.GetDefaultCharSetID);
90 <  writeln(outfile,'DB SQL Dialect = ',Attachment.GetSQLDialect);
91 <  writeln(outfile,'DB Remote Protocol = ', Attachment.GetRemoteProtocol);
92 <  writeln(outfile,'DB ODS Major Version = ',Attachment.GetODSMajorVersion);
93 <  writeln(outfile,'DB ODS Minor Version = ',Attachment.GetODSMinorVersion);
104 >  WriteAttachmentInfo(Attachment);
105    PrintDPB(Attachment.getDPB);
106  
107    {$IFDEF HASREQEX}
# Line 114 | Line 125 | begin
125    DPB.Add(isc_dpb_lc_ctype).setAsString(CharSet);
126    DPB.Add(isc_dpb_set_db_SQL_dialect).setAsByte(SQLDialect);
127  
128 <  Attachment := FirebirdAPI.CreateDatabase(Owner.GetNewDatabaseName,DPB);
128 >  Attachment := FirebirdAPI.CreateDatabase(ExtractDBName(Owner.GetNewDatabaseName),DPB);
129  
130 <  writeln(outfile,'DB Connect String = ',Attachment.GetConnectString);
120 <  writeln(outfile,'DB Charset ID = ',Attachment.GetDefaultCharSetID);
121 <  writeln(outfile,'DB SQL Dialect = ',Attachment.GetSQLDialect);
122 <  writeln(outfile,'DB Remote Protocol = ', Attachment.GetRemoteProtocol);
123 <  writeln(outfile,'DB ODS Major Version = ',Attachment.GetODSMajorVersion);
124 <  writeln(outfile,'DB ODS Minor Version = ',Attachment.GetODSMinorVersion);
130 >  WriteAttachmentInfo(Attachment);
131  
132    writeln(OutFile,'Dropping Database');
133    if Attachment <> nil then
# Line 131 | Line 137 | begin
137  
138    PrintDPB(DPB);
139    writeln(OutFile,'Creating a Database with a DPD');
140 <  Attachment := FirebirdAPI.CreateDatabase(Owner.GetNewDatabaseName,DPB);
140 >  Attachment := FirebirdAPI.CreateDatabase(ExtractDBName(Owner.GetNewDatabaseName),DPB);
141    if Attachment = nil then
142    begin
143      writeln(OutFile,'Create Database Failed');
144      Exit;
145    end;
146    WriteDBInfo(Attachment.GetDBInformation([isc_info_db_id,isc_info_ods_version,isc_info_ods_minor_version]));
147 <  writeln(outfile,'DB Connect String = ',Attachment.GetConnectString);
142 <  writeln(outfile,'DB Charset ID = ',Attachment.GetDefaultCharSetID);
143 <  writeln(outfile,'DB SQL Dialect = ',Attachment.GetSQLDialect);
144 <  writeln(outfile,'DB Remote Protocol = ', Attachment.GetRemoteProtocol);
145 <  writeln(outfile,'DB ODS Major Version = ',Attachment.GetODSMajorVersion);
146 <  writeln(outfile,'DB ODS Minor Version = ',Attachment.GetODSMinorVersion);
147 >  WriteAttachmentInfo(Attachment);
148  
149    {Querying Database}
150    DoQuery(Attachment);
151  
152    writeln(OutFile,'Dropping Database');
153    Attachment.DropDatabase;
154 +
155 +  libpath := GetEnvironmentVariable('TESTFIREBIRDLIBRARY');
156 +  if libpath <> '' then
157 +  begin
158 +    FBLibrary := LoadFBLibrary(libpath);
159 +
160 +    writeln(OutFile,'Creating a Database with a DPD using Firebird Library in ',libpath);
161 +    Attachment := FBLibrary.GetFirebirdAPI.CreateDatabase(ExtractDBName(Owner.GetNewDatabaseName),DPB);
162 +    if Attachment = nil then
163 +    begin
164 +      writeln(OutFile,'Create Database Failed');
165 +      Exit;
166 +    end;
167 +    WriteDBInfo(Attachment.GetDBInformation([isc_info_db_id,isc_info_ods_version,isc_info_ods_minor_version]));
168 +    WriteAttachmentInfo(Attachment);
169 +
170 +    {Querying Database}
171 +    DoQuery(Attachment);
172 +
173 +    writeln(OutFile,'Dropping Database');
174 +    Attachment.DropDatabase;
175 +  end;
176   end;
177  
178  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines