2
0

dbtestframework.pas 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. program dbtestframework;
  2. {$IFDEF FPC}
  3. {$mode objfpc}{$H+}
  4. {$ENDIF}
  5. {$APPTYPE CONSOLE}
  6. uses
  7. SysUtils,
  8. fpcunit, testreport, testregistry,
  9. DigestTestReport,
  10. toolsunit,
  11. // List of supported database connectors
  12. sqldbtoolsunit,
  13. dbftoolsunit,
  14. bufdatasettoolsunit,
  15. memdstoolsunit,
  16. SdfDSToolsUnit,
  17. // Units wich contain the tests
  18. tcsdfdata,
  19. TestBasics,
  20. TestDBBasics,
  21. TestFieldTypes,
  22. TestDatasources,
  23. TestBufDatasetStreams,
  24. TestSQLDB,
  25. TestSpecificTBufDataset,
  26. TestSpecificTDBF,
  27. TestSpecificTMemDataset,
  28. TestDBExport,
  29. tccsvdataset,
  30. testsqlscript,
  31. consoletestrunner;
  32. Procedure LegacyOutput;
  33. var
  34. FXMLResultsWriter: TXMLResultsWriter;
  35. FDigestResultsWriter: TDigestResultsWriter;
  36. testResult: TTestResult;
  37. begin
  38. testResult := TTestResult.Create;
  39. FXMLResultsWriter := TXMLResultsWriter.Create;
  40. FDigestResultsWriter := TDigestResultsWriter.Create(nil);
  41. try
  42. testResult.AddListener(FXMLResultsWriter);
  43. testResult.AddListener(FDigestResultsWriter);
  44. FDigestResultsWriter.Comment:=dbtype;
  45. FDigestResultsWriter.Category:='DB';
  46. FDigestResultsWriter.RelSrcDir:='fcl-db';
  47. FXMLResultsWriter.WriteHeader;
  48. // FdiDBResultsWriter.OpenConnection(dbconnectorname+';'+dbconnectorparams);
  49. GetTestRegistry.Run(testResult);
  50. FXMLResultsWriter.WriteResult(testResult);
  51. finally
  52. testResult.Free;
  53. FXMLResultsWriter.Free;
  54. FDigestResultsWriter.Free;
  55. end;
  56. end;
  57. Var
  58. Application : TTestRunner;
  59. begin
  60. InitialiseDBConnector;
  61. Try
  62. Application:=TTestRunner.Create(nil);
  63. With Application do
  64. try
  65. if HasOption('g','legacy') then
  66. LegacyOutput
  67. else
  68. begin
  69. DefaultFormat:=fplain;
  70. DefaultRunAllTests:=True;
  71. Initialize;
  72. Run;
  73. end;
  74. finally
  75. Free;
  76. end;
  77. Finally
  78. FreeDBConnector;
  79. end;
  80. end.