Skip to content

Instantly share code, notes, and snippets.

@martin-doyle
Created February 5, 2022 16:23
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 martin-doyle/44c55afea36a0375bc4a9e99bc915c56 to your computer and use it in GitHub Desktop.
Save martin-doyle/44c55afea36a0375bc4a9e99bc915c56 to your computer and use it in GitHub Desktop.
mORMot2 Regression Tests
--------------------------
1. Core units
1.1. Core base:
- RecordCopy: 743 assertions passed 29us
- TRawUtf8List: 190,174 assertions passed 56.04ms
- TDynArray: 1,091,805 assertions passed 85.68ms
- TDynArrayHashed: 1,599,070 assertions passed 556.78ms
- TSynDictionary: 283,050 assertions passed 515.78ms
- TSynQueue: 6,541,501 assertions passed 211.68ms
- TSynNameValue: 40,032 assertions passed 5.04ms
- TRawUtf8Interning: 2,000,013 assertions passed 69.17ms
500000 interning 16 KB in 16.75ms i.e. 28.4M/s, aver. 33ns, 910.7 MB/s
500000 direct 15.2 MB in 15.11ms i.e. 31.5M/s, aver. 30ns, 0.9 GB/s
- TObjArray: 3,230 assertions passed 618us
- Custom RTL: 297,646 assertions passed 748.70ms
FillChar in 31.64ms, 12.2 GB/s
Move in 205.17ms, 1.5 GB/s
small Move in 83.15ms, 1.3 GB/s
big Move in 141.21ms, 2.7 GB/s
FillCharFast in 4.98ms, 77.9 GB/s
MoveFast in 20.19ms, 15.4 GB/s
small MoveFast in 31.77ms, 3.4 GB/s
big MoveFast in 19.77ms, 19.7 GB/s
- Fast string compare: 41 assertions passed 10us
- IdemPropName: 228 assertions passed 39us
- Url encoding: 167 assertions passed 714us
- GUID: 10,019 assertions passed 2.16ms
- ParseCommandArguments: 232 assertions passed 54us
- IsMatch: 4,250 assertions passed 136us
- TExprParserMatch: 140 assertions passed 93us
- Soundex: 35 assertions passed 9us
- Numerical conversions: 2,543,298 assertions passed 285.82ms
100000 FloatToText in 42.83ms i.e. 2.2M/s, aver. 428ns, 42.3 MB/s
100000 str in 24.25ms i.e. 3.9M/s, aver. 242ns, 94.3 MB/s
100000 DoubleToShort in 17.31ms i.e. 5.5M/s, aver. 173ns, 115.7 MB/s
100000 DoubleToAscii in 6.46ms i.e. 14.7M/s, aver. 64ns, 313 MB/s
- Integers: 146,512 assertions passed 53.74ms
- crc32c: 310,089 assertions passed 117.32ms
pas 180.6 MB/s fast 795.3 MB/s armv8 9.5 GB/s
- Random32: 221,003 assertions passed 1.74ms
240000 Random32 in 1.30ms i.e. 175.2M/s, aver. 5ns, 701 MB/s
RandomBytes in 323us, 1.1 GB/s
- Bloom filters: 2,010,072 assertions passed 73.80ms
- DeltaCompress: 87 assertions passed 2.73ms
- Curr 64: 20,056 assertions passed 809us
- CamelCase: 11 assertions passed 59us
- Bits: 15,567 assertions passed 13.57ms
- Ini files: 7,028 assertions passed 21.61ms
- UTF8: 1,386,045 assertions passed 941.62ms
- Url decoding: 1,301 assertions passed 158us
- Mime types: 450 assertions passed 910us
- Baudot code: 10,007 assertions passed 55.43ms
- Iso 8601 date and time: 200,831 assertions passed 11.05ms
- Time zones: 459 assertions passed 200.66ms
- Quick select: 4,015 assertions passed 136.52ms
- TSynCache: 408 assertions passed 65us
- TSynFilter: 804 assertions passed 1.01ms
- TSynValidate: 677 assertions passed 294us
- TSynLogFile: 56 assertions passed 23us
- TSynUniqueIdentifier: 1,300,002 assertions passed 318.98ms
200000 ComputeNew in 1.76ms i.e. 108M/s, aver. 8ns
Total failed: 0 / 20,241,154 - Core base PASSED 4.50s
1.2. Core process:
- RTTI: 1,345 assertions passed 457us
- Url encoding: 300 assertions passed 309us
- Encode decode JSON: 431,457 assertions passed 58.60ms
- JSON benchmark: no assertion 30us
- Wiki markdown to html: 56 assertions passed 70us
- Variants: 122 assertions passed 67us
- Mustache renderer: 166 assertions passed 465us
- TDocVariant: 91,944 assertions passed 57.40ms
- TDecimal128: 17,446 assertions passed 932us
- BSON: 245,070 assertions passed 3.69ms
100000 TBsonObjectID.ComputeNew in 3.36ms i.e. 28.3M/s, aver. 33ns
- TSelectStatement: 229 assertions passed 98us
- TSynMonitorUsage: 1,202 assertions passed 48us
Total failed: 0 / 789,337 - Core process PASSED 122.45ms
1.3. Core collections:
- IList: 6,944,142 assertions passed 755.42ms
500000 IList<Byte> in 1.76ms i.e. 270.7M/s, aver. 3ns
500000 IList<Word> in 1.95ms i.e. 243.6M/s, aver. 3ns
500000 IList<Integer> in 2ms i.e. 237.4M/s, aver. 4ns
500000 IList<Cardinal> in 1.98ms i.e. 240.4M/s, aver. 3ns
500000 IList<Int64> in 2.40ms i.e. 198.1M/s, aver. 4ns
500000 IList<QWord> in 2.31ms i.e. 205.8M/s, aver. 4ns
500000 IList<Single> in 1.97ms i.e. 241.4M/s, aver. 3ns
500000 IList<Double> in 2.21ms i.e. 215.7M/s, aver. 4ns
500000 IList<TDateTime> in 2.18ms i.e. 217.8M/s, aver. 4ns
500000 IList<UTF8String> in 13.22ms i.e. 36M/s, aver. 26ns
500000 IList<UnicodeString> in 13.18ms i.e. 36.1M/s, aver. 26ns
500000 IList<Variant> in 19.67ms i.e. 24.2M/s, aver. 39ns
500000 IList<THash128> in 5.81ms i.e. 82M/s, aver. 11ns
500000 IList<TGuid> in 5.31ms i.e. 89.7M/s, aver. 10ns
- IKeyValue: 3,800,050 assertions passed 234.30ms
100000 integer,Int64 add in 4.97ms i.e. 19.1M/s, aver. 49ns
100000 integer,Int64 get in 1.89ms i.e. 50.3M/s, aver. 18ns
100000 RawUtf8,double add in 24.09ms i.e. 3.9M/s, aver. 240ns
100000 RawUtf8,double get in 3.21ms i.e. 29.6M/s, aver. 32ns
100000 integer,Int64 capa add in 7.94ms i.e. 12M/s, aver. 79ns
100000 integer,Int64 capa get in 1.88ms i.e. 50.5M/s, aver. 18ns
100000 RawUtf8,double capa add in 15.38ms i.e. 6.1M/s, aver. 153ns
100000 RawUtf8,double capa get in 2.31ms i.e. 41.1M/s, aver. 23ns
Total failed: 0 / 10,744,192 - Core collections PASSED 990.02ms
1.4. Core crypto:
- MD5: 166 assertions passed 212us
- SHA1: 8 assertions passed 7.12ms
- SHA256: 20 assertions passed 17.50ms
- SHA512: 32 assertions passed 44.67ms
- SHA3: 8,225 assertions passed 18.69ms
- AES: 72,700 assertions passed 139.43ms
- AES_GCM: 215 assertions passed 93us
- RC4: 1,016 assertions passed 750us
- Hashes: 21 assertions passed 532.51ms
- Base64: 26,064 assertions passed 164.72ms
encoding in 44.69ms, 2.1 GB/s
decoding in 79.10ms, 1.2 GB/s
- CompressShaAes: 1,683 assertions passed 1.45ms
- TAesPNRG: 362,626 assertions passed 178.94ms
100000 mORMot Random32 in 1.28ms i.e. 74.2M/s, aver. 12ns, 297 MB/s
mORMot FillRandom in 21us, 4.4 GB/s
100000 OpenSSL Random32 in 92.66ms i.e. 1M/s, aver. 926ns, 4.1 MB/s
OpenSSL FillRandom in 64us, 1.4 GB/s
100000 Lecuyer Random32 in 570us i.e. 167.3M/s, aver. 5ns, 669.2 MB/s
Lecuyer RandomBytes in 81us, 1.1 GB/s
- CryptDataForCurrentUser: 5,000 assertions passed 2.85ms
2000 AES-CFB in 2.76ms i.e. 707.3K/s, aver. 1.38us, 377.6 MB/s
- JWT: 164,921 assertions passed 1.01s
1000 HS256 in 570us i.e. 1.6M/s, aver. 570ns
1000 HS384 in 1.75ms i.e. 555.8K/s, aver. 1.75us
1000 HS512 in 1.76ms i.e. 554.2K/s, aver. 1.76us
1000 S3224 in 818us i.e. 1.1M/s, aver. 818ns
1000 S3256 in 820us i.e. 1.1M/s, aver. 820ns
1000 S3384 in 830us i.e. 1.1M/s, aver. 830ns
1000 S3512 in 837us i.e. 1.1M/s, aver. 837ns
1000 S3S128 in 829us i.e. 1.1M/s, aver. 829ns
1000 S3S256 in 843us i.e. 1.1M/s, aver. 843ns
100 ES256 in 5.62ms i.e. 17.3K/s, aver. 56us
100 RS256 in 10.35ms i.e. 9.4K/s, aver. 103us
100 RS384 in 14.41ms i.e. 6.7K/s, aver. 144us
100 RS512 in 2.37ms i.e. 41K/s, aver. 23us
100 PS256 in 2.37ms i.e. 41K/s, aver. 23us
100 PS384 in 2.45ms i.e. 39.8K/s, aver. 24us
100 PS512 in 2.42ms i.e. 40.2K/s, aver. 24us
100 ES256 in 14.49ms i.e. 6.7K/s, aver. 144us
100 ES384 in 70.38ms i.e. 1.3K/s, aver. 703us
100 ES512 in 254.49ms i.e. 392/s, aver. 2.54ms
100 ES256K in 28.30ms i.e. 3.4K/s, aver. 283us
100 EdDSA in 24.74ms i.e. 3.9K/s, aver. 247us
- TBinaryCookieGenerator: 82,944 assertions passed 11.08ms
16384 generate in 2.46ms i.e. 6.3M/s, aver. 150ns
16384 validate in 745us i.e. 20.9M/s, aver. 45ns
- Catalog: 2,943 assertions passed 1.08s
- Benchmark: 107,500 assertions passed 444ms
2500 crc32c in 658us i.e. 3.6M/s or 7.8 GB/s
2500 xxhash32 in 862us i.e. 2.7M/s or 6 GB/s
2500 crc32 in 656us i.e. 3.6M/s or 7.9 GB/s
2500 adler32 in 212us i.e. 11.2M/s or 24.5 GB/s
2500 hash32 in 481us i.e. 4.9M/s or 10.8 GB/s
2500 md5 in 37.22ms i.e. 65.5K/s or 142.9 MB/s
2500 sha1 in 47.83ms i.e. 51K/s or 111.2 MB/s
2500 hmacsha1 in 26.89ms i.e. 90.7K/s or 197.8 MB/s
2500 sha256 in 2.73ms i.e. 893.3K/s or 1.9 GB/s
2500 hmacsha256 in 3.13ms i.e. 779.7K/s or 1.6 GB/s
2500 sha384 in 19.51ms i.e. 125.1K/s or 272.6 MB/s
2500 hmacsha384 in 35.12ms i.e. 69.5K/s or 151.4 MB/s
2500 sha512 in 19.36ms i.e. 126K/s or 274.8 MB/s
2500 hmacsha512 in 23ms i.e. 106.1K/s or 231.3 MB/s
2500 sha3_256 in 19.93ms i.e. 122.4K/s or 266.9 MB/s
2500 sha3_512 in 30.68ms i.e. 79.5K/s or 173.4 MB/s
2500 rc4 in 5.24ms i.e. 465.4K/s or 0.9 GB/s
2500 mormot aes-128-cfb in 7.65ms i.e. 319.1K/s or 695.4 MB/s
2500 mormot aes-128-ofb in 4.47ms i.e. 545.6K/s or 1.1 GB/s
2500 mormot aes-128-c64 in 1.51ms i.e. 1.5M/s or 3.4 GB/s
2500 mormot aes-128-ctr in 1.46ms i.e. 1.6M/s or 3.5 GB/s
2500 mormot aes-128-cfc in 19.89ms i.e. 122.6K/s or 267.3 MB/s
2500 mormot aes-128-ofc in 5.07ms i.e. 480.6K/s or 1 GB/s
2500 mormot aes-128-ctc in 5.07ms i.e. 481.4K/s or 1 GB/s
2500 mormot aes-128-gcm in 5.47ms i.e. 446.3K/s or 0.9 GB/s
2500 mormot aes-256-cfb in 9.01ms i.e. 270.9K/s or 590.5 MB/s
2500 mormot aes-256-ofb in 5.83ms i.e. 418.1K/s or 911.3 MB/s
2500 mormot aes-256-c64 in 1.87ms i.e. 1.2M/s or 2.7 GB/s
2500 mormot aes-256-ctr in 1.82ms i.e. 1.3M/s or 2.8 GB/s
2500 mormot aes-256-cfc in 9.01ms i.e. 270.9K/s or 590.4 MB/s
2500 mormot aes-256-ofc in 6.52ms i.e. 374.3K/s or 815.9 MB/s
2500 mormot aes-256-ctc in 3.93ms i.e. 619.8K/s or 1.3 GB/s
2500 mormot aes-256-gcm in 5.48ms i.e. 445.3K/s or 0.9 GB/s
2500 openssl aes-128-cfb in 5.75ms i.e. 424.4K/s or 0.9 GB/s
2500 openssl aes-128-ofb in 4.97ms i.e. 491.1K/s or 1 GB/s
2500 openssl aes-128-ctr in 898us i.e. 2.6M/s or 5.7 GB/s
2500 openssl aes-128-gcm in 1.89ms i.e. 1.2M/s or 2.7 GB/s
2500 openssl aes-256-cfb in 7.19ms i.e. 339.3K/s or 739.4 MB/s
2500 openssl aes-256-ofb in 14.42ms i.e. 169.2K/s or 368.9 MB/s
2500 openssl aes-256-ctr in 1.09ms i.e. 2.1M/s or 4.7 GB/s
2500 openssl aes-256-gcm in 2.14ms i.e. 1.1M/s or 2.4 GB/s
2500 shake128 in 13.37ms i.e. 182.5K/s or 397.8 MB/s
2500 shake256 in 24.27ms i.e. 100.5K/s or 219.1 MB/s
Total failed: 0 / 836,084 - Core crypto PASSED 3.67s
1.5. Core ecc:
- Reference vectors: 23 assertions passed 4.10ms
- ECC: 2,104 assertions passed 600.17ms
300 Ecc256r1MakeKey in 11.24ms i.e. 26K/s, aver. 37us
300 Ecc256r1Uncompress in 28.31ms i.e. 10.3K/s, aver. 94us
300 Ecc256r1Sign in 9.47ms i.e. 30.9K/s, aver. 31us
300 Ecc256r1Verify in 35.68ms i.e. 8.2K/s, aver. 118us
300 Ecc256r1VerifyUncomp in 464.39ms i.e. 646/s, aver. 1.54ms
598 Ecc256r1SharedSecret in 39.30ms i.e. 14.8K/s, aver. 65us
- Certificates and signatures: 106 assertions passed 12.66ms
- Ecc command line tool: 704 assertions passed 70.75ms
- ECDHE stream protocol: 63,393 assertions passed 751.48ms
100 efAesCrc128 in 3.13ms i.e. 31.1K/s, aver. 31us, 812.1 MB/s
100 efAesCfb128 in 3.05ms i.e. 31.9K/s, aver. 30us, 834.2 MB/s
100 efAesOfb128 in 2.77ms i.e. 35.2K/s, aver. 27us, 918.7 MB/s
100 efAesCtr128 in 804us i.e. 121.4K/s, aver. 8.04us, 3 GB/s
100 efAesCbc128 in 1.56ms i.e. 62.6K/s, aver. 15us, 1.5 GB/s
100 efAesCrc256 in 11.64ms i.e. 8.3K/s, aver. 116us, 218.8 MB/s
100 efAesCfb256 in 11.69ms i.e. 8.3K/s, aver. 116us, 217.9 MB/s
100 efAesOfb256 in 3.44ms i.e. 28.3K/s, aver. 34us, 739.5 MB/s
100 efAesCtr256 in 8.90ms i.e. 10.9K/s, aver. 89us, 286.1 MB/s
100 efAesCbc256 in 1.96ms i.e. 49.6K/s, aver. 19us, 1.2 GB/s
100 efAesGcm128 in 852us i.e. 114.6K/s, aver. 8.52us, 2.9 GB/s
100 efAesGcm256 in 957us i.e. 102K/s, aver. 9.57us, 2.6 GB/s
100 efAesCtc128 in 1.64ms i.e. 59.5K/s, aver. 16us, 1.5 GB/s
100 efAesCtc256 in 1.82ms i.e. 53.5K/s, aver. 18us, 1.3 GB/s
- OpenSSL: 532 assertions passed 459.12ms
3 RSA 2048 Generation in 126.10ms i.e. 23/s, aver. 42.03ms
30 RSA 2048 Sign in 51ms i.e. 588/s, aver. 1.70ms
30 RSA 2048 Verify in 691us i.e. 42.3K/s, aver. 23us
3 RSA-PSS 2048 Generation in 224.44ms i.e. 13/s, aver. 74.81ms
30 RSA-PSS 2048 Sign in 24.72ms i.e. 1.1K/s, aver. 824us
30 RSA-PSS 2048 Verify in 700us i.e. 41.8K/s, aver. 23us
100 prime256v1 Generation in 3.76ms i.e. 25.9K/s, aver. 37us
100 prime256v1 Sign in 2.87ms i.e. 34K/s, aver. 28us
100 prime256v1 Verify in 6.44ms i.e. 15.1K/s, aver. 64us
100 ed25519 Generation in 3.38ms i.e. 28.8K/s, aver. 33us
100 ed25519 Sign in 6.20ms i.e. 15.7K/s, aver. 62us
100 ed25519 Verify in 8.54ms i.e. 11.4K/s, aver. 85us
Total failed: 0 / 66,862 - Core ecc PASSED 1.89s
1.6. Core compression:
- In memory compression: 21 assertions passed 428.28ms
- GZIP format: 30 assertions passed 82.12ms
- ZIP format: 872 assertions passed 1.06s
- SynLZ: 14,833 assertions passed 80.83ms
- TAlgoCompress: 1,218 assertions passed 520.53ms
TAlgoSynLZ 3.8 MB->2 MB: comp 208.2MB/s decomp 282.1MB/s
TAlgoRleLZ 3.8 MB->2 MB: comp 121.8MB/s decomp 209.1MB/s
TAlgoRle 3.8 MB->3.7 MB: comp 662MB/s decomp 15.7GB/s
TAlgoLizard 3.8 MB->1.9 MB: comp 31.3MB/s decomp 3.3GB/s
TAlgoLizardFast 3.8 MB->2.2 MB: comp 494.1MB/s decomp 4.1GB/s
TAlgoLizardHuffman 3.8 MB->1.8 MB: comp 161.9MB/s decomp 1.3GB/s
TAlgoDeflate 3.8 MB->1.5 MB: comp 32.4MB/s decomp 343.4MB/s
TAlgoDeflateFast 3.8 MB->1.6 MB: comp 54.5MB/s decomp 104.7MB/s
Total failed: 0 / 16,974 - Core compression PASSED 2.17s
1.7. Network protocols:
- Rtsp over http: 1,900 assertions passed 260.56ms
- Rtsp over http buffered write: 1,900 assertions passed 224.03ms
Total failed: 0 / 3,800 - Network protocols PASSED 484.62ms
2. ORM
2.1. Orm core:
- TOrm: 93 assertions passed 176us
- TOrmSigned: 200 assertions passed 424us
- TOrmModel: 49 assertions passed 18us
...
r1 #400037 var2 #400040 #400042 ! Orm core - TRestServerFullMemory
! Exception EDocVariant raised with messsage:
! DocVariantType.Data(1<>TDocVariant)
Total failed: 269,995 / 400,384 - Orm core FAILED 2.80s
2.2. Sqlite file:
- Database direct access: 22,291 assertions passed 73.89ms
- Virtual table direct access: 12 assertions passed 167us
- TOrmTableJson: 149,089 assertions passed 56.94ms
- TRestClientDB: 584,170 assertions passed 390.57ms
- Regexp function: 6,015 assertions passed 12.41ms
- TRecordVersion: 20,060 assertions passed 42.83ms
Total failed: 0 / 781,637 - Sqlite file PASSED 576.93ms
2.3. Sqlite file WAL:
- Database direct access: 22,291 assertions passed 79.78ms
- Virtual table direct access: 12 assertions passed 207us
- TOrmTableJson: 149,089 assertions passed 71.65ms
! Sqlite file WAL - TRestClientDB
! Exception ESqlite3Exception raised with messsage:
! Error SQLITE_ERROR (1) [Step] using 3.37.2 - TRestStorageInMemoryExternal.LoadFromJson: found 0 duplicate TOrmDali1 in ID. field, extended_errcode=1
! Sqlite file WAL - Regexp function
! Exception ESqlite3Exception raised with messsage:
! Error SQLITE_NOTADB (26) [DBOpen] using 3.37.2 with aDB=nil
- TRecordVersion: 20,060 assertions passed 39.85ms
Total failed: 0 / 191,476 - Sqlite file WAL PASSED 194.11ms
2.4. Sqlite file memory map:
- Database direct access: 22,271 assertions passed 34.66ms
- Virtual table direct access: 12 assertions passed 211us
- TOrmTableJson: 149,089 assertions passed 40.50ms
! Sqlite file memory map - TRestClientDB
! Exception ESqlite3Exception raised with messsage:
! Error SQLITE_ERROR (1) [Step] using 3.37.2 - TRestStorageInMemoryExternal.LoadFromJson: found 0 duplicate TOrmDali1 in ID. fieldhin, extended_errcode=1
- Regexp function: 6,015 assertions passed 5.93ms
- TRecordVersion: 20,060 assertions passed 25.29ms
Total failed: 0 / 197,471 - Sqlite file memory map PASSED 108ms
2.5. Sqlite memory:
- Database direct access: 22,271 assertions passed 63.31ms
- Virtual table direct access: 12 assertions passed 194us
- TOrmTableJson: 149,089 assertions passed 77.99ms
! Sqlite memory - TRestClientDB
! Exception ERestStorage raised with messsage:
! TRestStorageInMemory.LoadFromJson: found 0 duplicate TOrmPeople in ID. field
- Regexp function: 6,015 assertions passed 10.73ms
- TRecordVersion: 20,060 assertions passed 45.63ms
- TOrmTableWritable: 24,086 assertions passed 11.39ms
- RTree: 280,024 assertions passed 485.32ms
10000 With RTree in 207.84ms i.e. 46.9K/s, aver. 20us
10000 With RTreeInteger in 276.39ms i.e. 35.3K/s, aver. 27us
- Shard write: 10,602 assertions passed 44.30ms
- Shard read: 140,001 assertions passed 65.28ms
- Shard read after purge: 114,003 assertions passed 74.56ms
- MaxShardCount: 144,002 assertions passed 102.55ms
Total failed: 0 / 1,470,306 - Sqlite memory PASSED 1.47s
2.6. External database:
- SynDBRemote: 28,471 assertions passed 69.02ms
- DB properties persistence: 7 assertions passed 138us
- External records: 2 assertions passed 146us
- Auto adapt SQL: 1,041 assertions passed 908us
- Crypted database: 253,277 assertions passed 72.91ms
#5632 10911<>10912 bsn #149417 #149418 ! - External via REST: 3 / 170,380 FAILED 501.08ms
#5632 10911<>10912 bsn #149417 #149418 ! - External via virtual table: 3 / 170,380 FAILED 451.45ms
#180422 #180426 #180432 #180436 #180442 #180446 #180452 #180456 #180462 #180466 #180472 #180476 ! - External via REST with change tra
cking: 2,033 / 180,480 FAILED 920.09ms
Total failed: 2,039 / 804,038 - External database FAILED 2.01s
2.7. Client server access:
- TRestHttpServer: 2 assertions passed 8.22ms
using THttpAsyncServer Ubuntu 5.13.0 epoll
#4 Hash32()=$9A2516AA expected=$F11CEAC0 ! - TRestHttpClient: 1 / 4 FAILED 4.62ms
using TRestHttpClientSocket
- HTTP client keep alive: 4,088 assertions passed 38.51ms
4.7 KB, first 1.64ms, done 35.28ms i.e. 28337/s, aver. 35us, 130.3 MB/s
- HTTP client multi connect: 4,088 assertions passed 97.63ms
4.7 KB, first 129us, done 95.01ms i.e. 10524/s, aver. 95us, 48.4 MB/s
- HTTP client encrypted: 4,088 assertions passed 51.91ms
4.7 KB, first 4.84ms, done 45.43ms i.e. 22011/s, aver. 45us, 101.2 MB/s
- Direct in process access: 4,057 assertions passed 9.94ms
4.7 KB, first 18us, done 8.91ms i.e. 112145/s, aver. 8.91us, 515.8 MB/s
- HTTP several DB servers: 12,607 assertions passed 216.56ms
4.7 KB, first 87us, done 38.24ms i.e. 26145/s, aver. 38us, 120.2 MB/s
4.7 KB, first 74us, done 34.31ms i.e. 29143/s, aver. 34us, 134 MB/s
4.7 KB, first 73us, done 23.37ms i.e. 42780/s, aver. 23us, 196.7 MB/s
Total failed: 1 / 28,934 - Client server access FAILED 829.13ms
2.8. Multi thread process:
- Create thread pool: 1 assertion passed 566us
- TRestServerDB: 8,422 assertions passed 60.44ms
1=29797/s 2=82314/s 5=171149/s 10=59988/s 30=138285/s 50=124933/s
- TRestClientDB: 8,422 assertions passed 44.82ms
1=149413/s 2=112794/s 5=84704/s 10=137308/s 30=71560/s 50=78519/s
- TCP sockets: 8,422 assertions passed 557.53ms
1=21836/s 2=36078/s 5=30392/s 10=23898/s 30=41322/s 50=28380/s
- Unix domain sockets: 8,422 assertions passed 546.53ms
1=21990/s 2=25367/s 5=23208/s 10=47480/s 30=49126/s 50=43031/s
- Websockets: 8,422 assertions passed 376.18ms
1=11923/s 2=21570/s 5=27285/s 10=27804/s 30=13517/s 50=10021/s
- Locked: 8,421 assertions passed 46.79ms
1=137713/s 2=54953/s 5=134279/s 10=101390/s 30=97998/s 50=92008/s
- Unlocked: 8,422 assertions passed 43.55ms
1=144062/s 2=62893/s 5=110497/s 10=131702/s 30=124599/s 50=83822/s
- Main thread: 8,421 assertions passed 72ms
1=108661/s 2=50057/s 5=61581/s 10=41314/s 30=98661/s 50=49216/s
- Background thread: 8,422 assertions passed 107.82ms
1=33398/s 2=51821/s 5=39867/s 10=61952/s 30=36809/s 50=29821/s
MaxThreads=50 MaxClients=50 TotalOps=18720 TotalClients=882
Total failed: 0 / 75,797 - Multi thread process PASSED 1.91s
3. SOA
3.1. Service oriented architecture:
- Weak interfaces: 56 assertions passed 92us
- Service initialization: 268 assertions passed 3.25ms
- Direct call: 1,379,310 assertions passed 14.61ms
- Server side: 1,379,330 assertions passed 34.61ms
- Client side REST: 1,839,107 assertions passed 331.73ms
- Client side REST as json object: 1,839,101 assertions passed 349.89ms
- Client side REST sessions stats: 1,839,101 assertions passed 381.97ms
- Client side REST locked: 1,839,105 assertions passed 676.27ms
- Client side REST main thread: 1,839,105 assertions passed 1.69s
- Client side REST background thread: 1,839,105 assertions passed 1.63s
- Client side REST sign with crc 32c: 1,839,101 assertions passed 338.83ms
- Client side REST sign with xxhash: 1,839,101 assertions passed 365.22ms
- Client side REST sign with md 5: 1,839,101 assertions passed 298.19ms
- Client side REST sign with sha 256: 1,839,101 assertions passed 361.54ms
- Client side REST sign with sha 512: 1,839,101 assertions passed 461.62ms
- Client side REST weak authentication: 1,839,101 assertions passed 362.46ms
- Client side REST basic authentication: 1,839,101 assertions passed 498.11ms
- Client side REST custom record layout: 1,839,101 assertions passed 419.65ms
- Client side REST service log to DB: 1,839,101 assertions passed 621.07ms
- Client side json RPC: 1,839,101 assertions passed 422.09ms
- Test over HTTP: 17,769 assertions passed 616.22ms
#1 #2 #3 ! Service oriented architecture - Security
! Exception EAccessViolation raised with messsage:
! Access violation
- Mocks and stubs: 30,030 assertions passed 32.51ms
Total failed: 3 / 32,232,400 - Service oriented architecture FAILED 9.92s
3.2. Bidirectional remote connection:
- Websockets protocols: 30,000 assertions passed 10.20ms
- Run http server: 2 assertions passed 13.79ms
- Soa callback on server side: 4,580 assertions passed 844us
- Soa callback via json websockets: 6,898 assertions passed 156.44ms
- Soa callback via binary websockets: 6,898 assertions passed 157.84ms
- Relay start: 4 assertions passed 29.73ms
- Relay soa callback via json websockets: 6,899 assertions passed 267.33ms
- Relay connection recreate: 1 assertion passed 15.43ms
- Relay soa callback via binary websockets: 6,899 assertions passed 360.25ms
- Relay shutdown: 2 assertions passed 123.76ms
- TRecordVersion: 20,068 assertions passed 70.93ms
Total failed: 0 / 82,251 - Bidirectional remote connection PASSED 1.30s
Ubuntu 20.04.3 LTS - Linux 5.13.0-27-generic (cp utf8)
aarch64
on Parallels International GmbH. Parallels ARM Virtual Machine 0.1
Using mORMot 2.0.1
TSqlite3LibraryStatic 3.37.2 with internal MM
Generated with: Free Pascal 3.2 64 bit Linux compiler
Time elapsed for all tests: 37.39s
Performed 2022-02-05 12:06:08 by parallels on ubuntu-linux-20-04-desktop
Total assertions failed for all test suits: 272,038 / 68,961,498
! Some tests FAILED: please correct the code.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment