You are not logged in.
Pages: 1
@ab,
2 changes in SynZipFiles.pas:
169: property SizeIn: QWord{cardinal} read FStrm.total_in;
170: property SizeOut: QWord{cardinal} read FStrm.total_out;
and mORMot compiles and run on Lazarus_fpcup 1.7(2016.05.03) Win64
Synopse mORMot Framework Automated tests
------------------------------------------
1. Synopse libraries
1.1. Low level common:
- System copy record: 83 assertions passed 153us
- TRawUTF8List: 130,009 assertions passed 40.94ms
- TDynArray: 1,082,741 assertions passed 251.27ms
- TDynArrayHashed: 1,200,629 assertions passed 109.22ms
- TObjectListHashed: 999,760 assertions passed 288.06ms
- TObjectDynArrayWrapper: 167,501 assertions passed 26.66ms
- TObjArray: 2,016 assertions passed 2.16ms
- Fast string compare: 24 assertions passed 153us
- IdemPropName: 197 assertions passed 130us
! - Url encoding: 100 / 150 FAILED 3.80ms
- GUID: 9,005 assertions passed 7.87ms
- IsMatch: 599 assertions passed 343us
- Soundex: 35 assertions passed 106us
- Numerical conversions: 1,114,237 assertions passed 404.20ms
- crc32c: 30,030 assertions passed 58.07ms
pas 17.82ms 334.8 MB/s fast 2.93ms 1.9 GB/s sse42 1.28ms 4.5 GB/s
- Curr 64: 20,053 assertions passed 1.73ms
- CamelCase: 11 assertions passed 405us
- Bits: 4,774 assertions passed 393us
- Ini files: 7,004 assertions passed 16.27ms
- UTF8: 99,134 assertions passed 550.15ms
- Iso 8601 date and time: 48,021 assertions passed 7.01ms
- Time zones: 407 assertions passed 5.23ms
- Url decoding: 1,100 assertions passed 351us
- Mime types: 30 assertions passed 345us
- TSynTable: 875 assertions passed 4.30ms
- TSynCache: 404 assertions passed 495us
- TSynFilter: 804 assertions passed 1.92ms
- TSynValidate: 677 assertions passed 828us
- TSynLogFile: 42 assertions passed 560us
- TSynUniqueIdentifier: 1,300,002 assertions passed 596.41ms
- TSynDictionary: 119,930 assertions passed 47.87ms
Total failed: 100 / 6,340,284 - Low level common FAILED 2.43s
1.2. Low level types:
- RTTI: 410 assertions passed 355us
- Url encoding: 200 assertions passed 547us
- Encode decode JSON: 283,996 assertions passed 2.08s
- Variants: 48 assertions passed 815us
- Mustache renderer: 144 assertions passed 904.09ms
- TDocVariant: no assertion 761us
- BSON: no assertion 109us
- TSynTableStatement: 206 assertions passed 688us
- TSynMonitorUsage: 1,202 assertions passed 599us
Total failed: 0 / 286,206 - Low level types PASSED 2.99s
1.3. Cryptographic routines:
- Adler32: 1 assertion passed 595us
- MD5: 86 assertions passed 617us
- SHA1: 10 assertions passed 11.47ms
- SHA256: 8 assertions passed 15.17ms
! - AES256: 1 / 17,428 FAILED 411.47ms
cypher 1..2408 bytes with AES-NI: 588us, without: 6.69ms
- RC4: 1 assertion passed 72us
! - Base64: 2 / 11,994 FAILED 106.73ms
- CompressShaAes: 1,683 assertions passed 4.39ms
- TAESPNRG: 9,999 assertions passed 44.04ms
Total failed: 3 / 41,210 - Cryptographic routines FAILED 597.53ms
1.4. Compression:
- In memory compression: 12 assertions passed 320.54ms
- GZIP format: 19 assertions passed 634.11ms
- ZIP format: 64 assertions passed 2.32s
- SynLZO: 3,006 assertions passed 74.56ms
- SynLZ: 30,217 assertions passed 512.04ms
Total failed: 0 / 33,318 - Compression PASSED 3.87s
2. mORMot
2.1. File based:
- Database direct access: 20,251 assertions passed 118.91ms
- Virtual table direct access: 12 assertions passed 1.23ms
- TSQLTableJSON: 144,070 assertions passed 99.20ms
- TSQLRestClientDB: 608,193 assertions passed 2.76s
- TRecordVersion: 20,060 assertions passed 104.50ms
Total failed: 0 / 792,586 - File based PASSED 3.08s
2.2. File based memory map:
- Database direct access: 20,246 assertions passed 111.90ms
- Virtual table direct access: 12 assertions passed 1.23ms
- TSQLTableJSON: 144,070 assertions passed 94.59ms
- TSQLRestClientDB: 608,192 assertions passed 2.71s
- TRecordVersion: 20,060 assertions passed 108.71ms
Total failed: 0 / 792,580 - File based memory map PASSED 3.03s
2.3. File based WAL:
- Database direct access: 20,251 assertions passed 121.96ms
- Virtual table direct access: 12 assertions passed 1.07ms
- TSQLTableJSON: 144,070 assertions passed 96.17ms
- TSQLRestClientDB: 608,193 assertions passed 2.68s
- TRecordVersion: 20,060 assertions passed 88.50ms
Total failed: 0 / 792,586 - File based WAL PASSED 2.99s
2.4. Memory based:
- Database direct access: 20,246 assertions passed 108.20ms
- Virtual table direct access: 12 assertions passed 973us
- TSQLTableJSON: 144,070 assertions passed 92.14ms
- TSQLRestClientDB: 676,500 assertions passed 3.46s
- TRecordVersion: 20,060 assertions passed 104.09ms
- RTree: 140,000 assertions passed 722.08ms
- Shard write: 10,602 assertions passed 208.20ms
- Shard read: 140,001 assertions passed 324.69ms
- Shard read after purge: 114,003 assertions passed 267.85ms
Total failed: 0 / 1,265,494 - Memory based PASSED 5.29s
2.5. Basic classes:
! - TSQLRecord: 5 / 88 FAILED 520us
- TSQLRecordSigned: 200 assertions passed 6.66ms
- TSQLModel: 16 assertions passed 384us
! - TSQLRestServerFullMemory: 370,119 / 640,135 FAILED 4.22s
Total failed: 370,124 / 640,439 - Basic classes FAILED 4.24s
2.6. Client server access:
- TSQLHttpServer: 2 assertions passed 3.94ms
using HTTP API 2.0
- TSQLHttpClient: 3 assertions passed 13.41ms
using TSQLHttpClientWinHTTP
- HTTP client keep alive: 3,087 assertions passed 213.66ms
4818 B, first 1.87ms, done 201.36ms i.e. 4966/s, aver. 201us, 23.2 MB/s
- HTTP client multi connect: 3,087 assertions passed 199.37ms
4818 B, first 378us, done 190.00ms i.e. 5262/s, aver. 190us, 24.6 MB/s
- HTTP client encrypted: 3,087 assertions passed 239.37ms
4818 B, first 347us, done 230.32ms i.e. 4341/s, aver. 230us, 20.3 MB/s
- Named pipe access: 3,089 assertions passed 560.16ms
4818 B, first 256.78ms, done 94.43ms i.e. 10589/s, aver. 94us, 49.5 MB/s
! - Local window messages: 1 / 2 FAILED 1.78ms
- Direct in process access: 3,056 assertions passed 49.91ms
4818 B, first 64us, done 40.93ms i.e. 24430/s, aver. 40us, 114.2 MB/s
- HTTP several DB servers: 9,604 assertions passed 689.63ms
4818 B, first 331us, done 200.60ms i.e. 4984/s, aver. 200us, 23.3 MB/s
4818 B, first 313us, done 195.54ms i.e. 5114/s, aver. 195us, 23.9 MB/s
4818 B, first 321us, done 195.52ms i.e. 5114/s, aver. 195us, 23.9 MB/s
Total failed: 1 / 25,017 - Client server access FAILED 1.98s
2.7. Service oriented architecture:
- Weak interfaces: 56 assertions passed 458us
! - Service initialization: 1 / 17 FAILED 1.83ms
- Direct call: 537,186 assertions passed 30.05ms
! - Server side: 1 / 3 FAILED 150us
! Service oriented architecture - Client side REST
! Exception EServiceException raised with messsage:
! TServiceFactoryClient.Create(): IComplexCalculator interface or TSQLRestRouti
ngREST routing not supported by server: {
"errorCode":400,
"errorText":"Bad Request"
}
! Service oriented architecture - Client side REST as JSON object
! Exception EServiceException raised with messsage:
! TServiceFactoryClient.Create: IComplexCalculator.TestBlob sicClientDriven mod
e not allowed with TServiceCustomAnswer result
! Service oriented architecture - Client side REST sessions stats
! Exception EServiceException raised with messsage:
! TServiceFactoryClient.Create: IComplexCalculator.TestBlob sicClientDriven mod
e not allowed with TServiceCustomAnswer result
- Client side REST locked: 3 assertions passed 1.65ms
- Client side REST main thread: 3 assertions passed 227us
! Service oriented architecture - Client side REST background thread
! Exception EServiceException raised with messsage:
! TServiceFactoryClient.Create: IComplexCalculator.TestBlob sicClientDriven mod
e not allowed with TServiceCustomAnswer result
! Service oriented architecture - Client side REST weak authentication
! Exception EServiceException raised with messsage:
! TServiceFactoryClient.Create: IComplexCalculator.TestBlob sicClientDriven mod
e not allowed with TServiceCustomAnswer result
! Service oriented architecture - Client side REST basic authentication
! Exception EServiceException raised with messsage:
! TServiceFactoryClient.Create: IComplexCalculator.TestBlob sicClientDriven mod
e not allowed with TServiceCustomAnswer result
! Service oriented architecture - Client side REST custom record layout
! Exception EServiceException raised with messsage:
! TServiceFactoryClient.Create: IComplexCalculator.TestBlob sicClientDriven mod
e not allowed with TServiceCustomAnswer result
! Service oriented architecture - Client side REST service log to DB
! Exception EServiceException raised with messsage:
! TServiceFactoryClient.Create: IComplexCalculator.TestBlob sicClientDriven mod
e not allowed with TServiceCustomAnswer result
! Service oriented architecture - Client side JSONRPC
! Exception EServiceException raised with messsage:
! TServiceFactoryClient.Create: IComplexCalculator.TestBlob sicClientDriven mod
e not allowed with TServiceCustomAnswer result
! Service oriented architecture - Test over HTTP
! Exception EServiceException raised with messsage:
! TServiceFactoryClient.Create(): IComplexCalculator interface or TSQLRestRouti
ngREST routing not supported by server: {
"errorCode":400,
"errorText":"Bad Request"
}
- Security: 135 assertions passed 1.58ms
- Mocks and stubs: 30,030 assertions passed 57.22ms
Total failed: 2 / 567,460 - Service oriented architecture FAILED 114.13ms
2.8. Bidirectional remote connection:
- Websockets JSON protocol: 60 assertions passed 637us
- Websockets binary protocol: 240 assertions passed 207us
- Run http server: 2 assertions passed 560us
- SOA callback on server side: 4,578 assertions passed 2.25ms
! Bidirectional remote connection - SOA callback via JSON websockets
! Exception EInterfaceFactoryException raised with messsage:
! TInterfacedObjectFakeClient.FakeCall(IBidirService.TestCallback) failed: '{
"errorCode":500,
"error":
{"EAccessViolation":{"EAccessViolation":"Access violation"}}
}'
! Bidirectional remote connection - SOA callback via binary websockets
! Exception EInterfaceFactoryException raised with messsage:
! TInterfacedObjectFakeClient.FakeCall(IBidirService.TestCallback) failed: '{
"errorCode":500,
"error":
{"EAccessViolation":{"EAccessViolation":"Access violation"}}
}'
- TRecordVersion: 20,068 assertions passed 108.62ms
Total failed: 0 / 29,366 - Bidirectional remote connection PASSED 187.22ms
2.9. External database:
- TQuery: 2,003 assertions passed 5.38ms
! External database - SynDBRemote
! Exception ESQLDBRemote raised with messsage:
! You do not have the right to be here
- DB properties persistence: 7 assertions passed 2.09ms
- External records: 2 assertions passed 700us
- Auto adapt SQL: 942 assertions passed 77.30ms
- Crypted database: 253,275 assertions passed 164.30ms
- External via REST: 170,354 assertions passed 809.65ms
- External via virtual table: 170,354 assertions passed 1.30s
- External via REST with change tracking: 180,454 assertions passed 1.79s
- JET database: 7,007 assertions passed 784.41ms
Total failed: 0 / 789,413 - External database PASSED 5.34s
2.10. Multi thread process:
- Create thread pool: 1 assertion passed 2.69ms
- TSQLRestServerDB: 4,822 assertions passed 70.70ms
1=37597/s 2=36751/s 5=38572/s 10=39035/s 30=44528/s 50=37950/s
- TSQLRestClientDB: 4,822 assertions passed 135.48ms
1=32208/s 2=35476/s 5=32229/s 10=31994/s 30=13854/s 50=8084/s
- TSQLRestClientURINamedPipe: 2,412 assertions passed 1.62s
1=1400/s 2=1075/s 5=528/s
! - TSQLRestClientURIMessage: 18 / 40 FAILED 30.58ms
1=224971/s 2=150150/s 5=61776/s 10=39662/s
- Windows API: 4,822 assertions passed 304.55ms
1=5204/s 2=7820/s 5=10075/s 10=10099/s 30=9932/s 50=8795/s
- Socket API: 4,822 assertions passed 211.70ms
1=11047/s 2=15440/s 5=15945/s 10=14800/s 30=11966/s 50=7375/s
- Websockets: 4,822 assertions passed 184.22ms
1=12425/s 2=14321/s 5=14326/s 10=15435/s 30=15443/s 50=11263/s
- Locked: 4,822 assertions passed 134.09ms
1=32488/s 2=33131/s 5=36166/s 10=34322/s 30=13777/s 50=8080/s
- Unlocked: 4,822 assertions passed 73.46ms
1=33596/s 2=35660/s 5=38273/s 10=36866/s 30=41254/s 50=36304/s
- Main thread: 4,822 assertions passed 79.66ms
1=27607/s 2=36825/s 5=36893/s 10=33610/s 30=37047/s 50=34794/s
- Background thread: 4,822 assertions passed 85.53ms
1=27870/s 2=31505/s 5=28477/s 10=30653/s 30=37950/s 50=32234/s
Total failed: 18 / 45,851 - Multi thread process FAILED 2.94s
2.11. DDD shared units:
- User model: 3,276 assertions passed 524us
- Authentication model: 20,006 assertions passed 127.63ms
! - Email validation process: 3 / 55 FAILED 20.40ms
! DDD shared units - User CQRS repository
! Exception EAccessViolation raised with messsage:
! Access violation
2.12. DDD multi thread:
- Delete old database: 1 assertion passed 1.12ms
- Start server: 1 assertion passed 11.54ms
- Single client test: 1,002 assertions passed 200.44ms
- Multi threaded clients test: 21 assertions passed 138.04ms
Total failed: 0 / 1,025 - DDD multi thread PASSED 354.04ms
Using mORMot 1.18.2637 FTS3
Running on Windows 7 64bit SP1 (6.1.7601) with code page 1250
TSQLite3LibraryStatic 3.12.2 with internal MM
Generated with: Free Pascal 3.1.1 compiler
Time elapsed for all tests: 40.09s
Tests performed at 2016-05-09 15:27:22
Total assertions failed for all test suits: 374,919 / 12,504,244
! Some tests FAILED: please correct the code.
Done - Press ENTER to Exit
Michal
Offline
Correction:
The results above are for Lazarus 1.7 Win32
Michal
Offline
Pages: 1