Skip to content

Instantly share code, notes, and snippets.

Created October 30, 2014 16:20
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save anonymous/8204f29244f7e7be0e0e to your computer and use it in GitHub Desktop.
Save anonymous/8204f29244f7e7be0e0e to your computer and use it in GitHub Desktop.
[b]Compilation:[/b]
FPC lpr:
[code]
program LinuxSynTestFPCLinuxi386;
//{$IFDEF FPC}
//{$MODE Delphi} // Already defined in Synopse.inc line 175, mORMot commit 228976b436782ae914dc098ab6cec5588aef0cec
//{$ENDIF}
{$I Synopse.inc} // define HASINLINE USETYPEINFO CPU32 CPU64 OWNNORMTOUPPER
{$APPTYPE CONSOLE}
uses
{$ifdef Linux}
cthreads,
// widestring manager for Linux !!
// could also be put in another unit ... but doc states: as early as possible
cwstring,
{$endif}
mORMotSelfTests;
begin
SQLite3ConsoleTests;
end.
[/code]
OS: CentOS 5.11 x86
CodeTyphon: 5.0 x86
mORMot: 228976b436782ae914dc098ab6cec5588aef0cec
modification to mORMot: "synopseCommit.inc" to "SynopseCommit.inc"
[b]Test on the build machine:[/b]
Test output: [color=#FF0000]1 errors ![/color]
[code]
[xli@localhost LinuxSynTestFPCLinuxi386]$ ./LinuxSynTestFPCLinuxi386
Synopse mORMot Framework Automated tests
------------------------------------------
1. Synopse libraries
1.1. Low level common:
- System copy record: 20 assertions passed 119.88s
- TRawUTF8List: 70,005 assertions passed 52731.37s
- TDynArray: 1,027,706 assertions passed 500727.84s
- TDynArrayHashed: 1,200,629 assertions passed 265994.47s
- TObjectListHashed: 999,776 assertions passed 976600.24s
- TObjectDynArrayWrapper: 167,501 assertions passed 63915.91s
- Fast string compare: 7 assertions passed 55.76s
- IdemPropName: 30 assertions passed 82.42s
- Url encoding: 132 assertions passed 2215.60s
- GUID: 9,005 assertions passed 13567.27s
- IsMatch: 599 assertions passed 275.30s
- Soundex: 35 assertions passed 67.30s
- Numerical conversions: 1,115,462 assertions passed 791471.02s
- crc32c: 20,020 assertions passed 147004.27s
pas 41138.94s 152 B/s fast 18080.05s 346 B/s
- Curr 64: 20,053 assertions passed 6022.64s
- CamelCase: 11 assertions passed 68.99s
- Bits: 4,774 assertions passed 139.60s
- Ini files: 7,004 assertions passed 99943.59s
- UTF8: 82,106 assertions passed 2011035.77s
- Iso 8601 date and time: 36,015 assertions passed 11898.39s
- Url decoding: 1,100 assertions passed 478.58s
- Mime types: 23 assertions passed 191.90s
- TSynTable: 457 assertions passed 1475.76s
- TSynCache: 404 assertions passed 192.28s
- TSynFilter: 804 assertions passed 13113.16s
- TSynValidate: 677 assertions passed 959.17s
- TSynLogFile: 36 assertions passed 1478.29s
Total failed: 0 / 4,764,391 - Low level common PASSED 4963714.20s
1.2. Low level types:
- Url encoding: 200 assertions passed 1953.91s
- Encode decode JSON: 250,616 assertions passed 296902.03s
- Variants: 5 assertions passed 58.09s
Total failed: 0 / 250,821 - Low level types PASSED 299176.80s
1.3. Cryptographic routines:
- Adler32: 1 assertion passed 83.38s
- MD5: 1 assertion passed 152.51s
- SHA1: 5 assertions passed 94.61s
- SHA256: 5 assertions passed 86.24s
- AES256: 12,177 assertions passed 1694684.28s
- RC4: 1 assertion passed 79.91s
- Base64: 11,994 assertions passed 534492.38s
- CompressShaAes: 1,683 assertions passed 8638.37s
Total failed: 0 / 25,867 - Cryptographic routines PASSED 2238819.16s
1.4. Compression:
- In memory compression: 12 assertions passed 1271720.40s
- GZIP format: 19 assertions passed 2319418.54s
- SynLZO: 3,006 assertions passed 265691.31s
- SynLZ: 21,010 assertions passed 1517139.83s
Total failed: 0 / 24,047 - Compression PASSED 5374272.24s
2. mORMot
2.1. File based:
- Database direct access: 10,138 assertions passed 371651.01s
- Virtual table direct access: 12 assertions passed 870.05s
- TSQLTableJSON: 106,068 assertions passed 189213.47s
- TSQLRestClientDB: 310,072 assertions passed 1869794.03s
Total failed: 0 / 426,290 - File based PASSED 2431856.10s
2.2. File based memory map:
! Exception EAccessViolation raised with messsage:
! Access violation
Synopse framework used: 1.18.433
SQlite3 engine used: 3.8.7
Generated with: Free Pascal 2.7.1 compiler
Tests performed at 10/29/2014 04:49:13 PM
Total assertions failed for all test suits: 0 / 5,491,416
! Some tests FAILED: please correct the code.
Done - Press ENTER to Exit
[/code]
[b]Test on a similar environment (Redhat Enterprise Linux 5.5, x86_64):[/b]
Test output: [color=#FF0000]2 errors ![/color]
[code]
Synopse mORMot Framework Automated tests
------------------------------------------
1. Synopse libraries
1.1. Low level common:
- System copy record: 20 assertions passed 20.00s
- TRawUTF8List: 70,005 assertions passed 39869.00s
- TDynArray: 1,027,706 assertions passed 280943.00s
- TDynArrayHashed: 1,200,629 assertions passed 123358.00s
- TObjectListHashed: 999,746 assertions passed 359072.00s
- TObjectDynArrayWrapper: 167,501 assertions passed 34513.00s
- Fast string compare: 7 assertions passed 7.00s
- IdemPropName: 30 assertions passed 11.00s
- Url encoding: 132 assertions passed 1301.00s
- GUID: 9,005 assertions passed 6086.00s
- IsMatch: 599 assertions passed 165.00s
- Soundex: 35 assertions passed 10.00s
- Numerical conversions: 1,113,690 assertions passed 431471.00s
- crc32c: 20,020 assertions passed 79054.00s
pas 22984.00s 272 B/s fast 10404.00s 601 B/s
- Curr 64: 20,053 assertions passed 3187.00s
- CamelCase: 11 assertions passed 7.00s
- Bits: 4,774 assertions passed 84.00s
- Ini files: 7,004 assertions passed 69322.00s
- UTF8: 82,106 assertions passed 1083725.00s
- Iso 8601 date and time: 36,015 assertions passed 4961.00s
- Url decoding: 1,100 assertions passed 260.00s
- Mime types: 23 assertions passed 25.00s
! - TSynTable: 1 / 50 FAILED 2918.00s
- TSynCache: 404 assertions passed 112.00s
- TSynFilter: 804 assertions passed 2988.00s
- TSynValidate: 677 assertions passed 1109.00s
- TSynLogFile: 36 assertions passed 1419.00s
Total failed: 1 / 4,762,182 - Low level common FAILED 2526159.00s
1.2. Low level types:
- Url encoding: 200 assertions passed 1521.00s
- Encode decode JSON: 250,616 assertions passed 167348.00s
- Variants: 5 assertions passed 9.00s
Total failed: 0 / 250,821 - Low level types PASSED 168909.00s
1.3. Cryptographic routines:
- Adler32: 1 assertion passed 41.00s
- MD5: 1 assertion passed 24.00s
- SHA1: 5 assertions passed 28.00s
- SHA256: 5 assertions passed 48.00s
- AES256: 12,177 assertions passed 971956.00s
- RC4: 1 assertion passed 15.00s
- Base64: 11,994 assertions passed 279630.00s
- CompressShaAes: 1,683 assertions passed 4454.00s
Total failed: 0 / 25,867 - Cryptographic routines PASSED 1256308.00s
1.4. Compression:
- In memory compression: 12 assertions passed 684980.00s
- GZIP format: 19 assertions passed 1241166.00s
- SynLZO: 3,006 assertions passed 135743.00s
- SynLZ: 21,010 assertions passed 718603.00s
Total failed: 0 / 24,047 - Compression PASSED 2780521.00s
2. mORMot
2.1. File based:
- Database direct access: 10,138 assertions passed 434300.00s
- Virtual table direct access: 12 assertions passed 1999.00s
- TSQLTableJSON: 106,068 assertions passed 134448.00s
- TSQLRestClientDB: 310,072 assertions passed 1019676.00s
Total failed: 0 / 426,290 - File based PASSED 1590468.00s
2.2. File based memory map:
! Exception EAccessViolation raised with messsage:
! Access violation
Synopse framework used: 1.18.433
SQlite3 engine used: 3.8.7
Generated with: Free Pascal 2.7.1 compiler
Tests performed at 10/29/2014 05:55:48 PM
Total assertions failed for all test suits: 1 / 5,489,207
! Some tests FAILED: please correct the code.
Done - Press ENTER to Exit
[/code]
There is a log file logging the first error:
[code]
Host=linux User=user CPU=1*0-15-1027 OS=2.3=5.1.2600 Wow64=0 Freq=1234
TSQLLog 1.18.433 2014-10-29T17:55:42
20141029 17554228 warn Test failed Out of memory
20141029 17554228 fail TTestLowLevelCommon(555562F0) Low level common: TSynTable "Out of memory"
[/code]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment