Commit Graph

335 Commits

Author SHA1 Message Date
Arseny Smirnov
34a69e3133 FlatHashMap: add implementation with chunks 2022-02-17 19:40:18 +01:00
levlam
512c0cd3c2 Fix formatting. 2022-02-12 00:48:35 +03:00
Arseny Smirnov
ecceb51881 FlatHashSet 2022-02-11 17:41:40 +01:00
levlam
15f27455c5 Move other big classes inside FlatHashMap to unique_ptr. 2022-02-11 19:27:32 +03:00
levlam
5b4bea1fef Add HashMap build time benchmark. 2022-02-11 14:46:30 +03:00
levlam
6ae2096d68 Fix HashSet benchmark. 2022-02-11 11:26:58 +03:00
Arseny Smirnov
500c20f7ea FlatHashMap: more benchmarks 2022-02-10 22:34:01 +01:00
levlam
b71e330396 Fix tests. 2022-02-11 00:11:02 +03:00
Arseny Smirnov
987e875520 FlatHashMap: support mem_stat->rss in memory benchmark; move memory benchmark in other folder, fix build. 2022-02-10 18:33:23 +01:00
Arseny Smirnov
6bb365567b FlatHashMap: improve memory benchmark 2022-02-10 18:29:52 +01:00
levlam
1a28bbd00c Remove redundant checks from calc_bucket. 2022-02-10 18:30:03 +03:00
Arseny Smirnov
10c59db842 FlatHashMap: simple benchmark for memory usage 2022-02-10 14:37:19 +01:00
Arseny Smirnov
f4b3a09646 FlatHashMap: shrink table if too sparse 2022-02-10 14:37:19 +01:00
levlam
9e6d106585 Minor improvements. 2022-02-10 11:55:32 +03:00
Arseny Smirnov
129d12566d FlatHashMap: add tests 2022-02-09 22:22:51 +01:00
Arseny Smirnov
8d8896d7f0 FlatHashMap: remove_if; generic td::table_remove_if 2022-02-09 22:22:51 +01:00
levlam
4eacaa3ebd FlatHashMap improvements. 2022-02-09 03:08:18 +03:00
Arseny Smirnov
d5e163cd9d FlatHashMap: support initializer_list 2022-02-08 20:47:10 +01:00
Arseny Smirnov
d5db554b70 FlatHashMap: benchmark 2022-02-08 19:38:09 +01:00
levlam
b62ced6d95 Minor improvements. 2022-02-08 00:42:53 +03:00
levlam
bcc2adeb47 Fix includes and formatting. 2022-02-08 00:04:34 +03:00
Arseny Smirnov
86bceb2972 td: replace most of std::unordered_map usages to td::FlatHashMap 2022-02-07 21:21:31 +01:00
Arseny Smirnov
088ce02832 tdutils: FlatHashMap 2022-02-07 21:21:31 +01:00
levlam
0b33522821 Improve ChainScheduler. 2022-02-03 22:01:09 +03:00
levlam
950876b496 Minor improvements. 2022-02-01 18:25:02 +03:00
Arseny Smirnov
24766fdad8 ChainScheduler: pass new test 2022-02-01 16:04:58 +03:00
Arseny Smirnov
b4396f18c6 ChainScheduler: tests and optimizations 2022-02-01 16:02:35 +03:00
levlam
b1b945e239 Minor fixes. 2022-01-31 15:56:44 +03:00
levlam
e7406475ff Fix compilation errors. 2022-01-28 19:12:20 +03:00
Arseny Smirnov
355c2950ad ChainScheduler - new implementation of SequenceDispatcher 2022-01-28 15:50:59 +03:00
levlam
b007cc7a2c Use compressed base64-encoded list of emoji instead of emoji themselves to reduce binary size and stack usage. 2022-01-13 23:43:22 +03:00
levlam
8085779cdc Update copyright year. 2022-01-01 03:35:39 +03:00
levlam
5f965a1ea4 Don't try to use "fr-FR" locale, because check for its existence is
broken with musl: https://www.openwall.com/lists/musl/2017/11/08/1.
2021-12-24 15:12:14 +03:00
levlam
ff6615e734 Fix some misprints. 2021-12-23 14:18:32 +03:00
levlam
a28b5f2fbb Remove explicit verbosity level changes in tests. 2021-11-21 21:41:11 +03:00
levlam
bd733c1c6e Fix CheckExitGuard test. 2021-11-18 17:01:05 +03:00
levlam
42ca2dcef5 Add serialize test. 2021-11-18 16:32:12 +03:00
levlam
bf9c78e982 Fix is_emoji. 2021-11-18 14:37:31 +03:00
levlam
b731414d42 Init some fields just in case. 2021-11-11 17:39:09 +03:00
levlam
5a02af8c72 Use const reference if range-based for if appropriate. 2021-11-10 20:39:35 +03:00
levlam
51cf4baee6 Fix tests compilation without threads. 2021-10-25 10:37:38 +03:00
levlam
c5a2f1570d Remove superflous endif comments. 2021-10-25 10:05:15 +03:00
levlam
f7d073baa4 Fix building with TD_EVENTFD_UNSUPPORTED. 2021-10-25 01:46:39 +03:00
levlam
9f44816a62 Minor improvements. 2021-10-21 12:51:16 +03:00
levlam
1e49f6dc13 Use auto as variable type if it is initialized with a cast. 2021-10-20 01:27:02 +03:00
levlam
e78a5fbecf Explicitly specify namespace td in tdutils tests. 2021-10-14 15:08:35 +03:00
levlam
f5fe132722 Remove unneeded logging in tests. 2021-10-07 16:56:45 +03:00
levlam
3af0059b94 Add is_emoji method. 2021-09-20 22:30:23 +03:00
levlam
84ad2e5b19 Remove redundant semicolons. 2021-08-30 23:27:32 +03:00
levlam
40c5d47717 Make inherited classes final if possible. 2021-07-04 05:58:54 +03:00
levlam
edfa5d1d98 Use final instead of override. 2021-07-03 23:51:36 +03:00
levlam
90e253d90c Remove REGISTER_TESTS define. 2021-05-26 00:41:15 +03:00
levlam
5f0b24926f Split path in HttpUrlQuery. 2021-05-25 04:39:41 +03:00
levlam
200da2c684 Add parse_url_query. 2021-05-24 23:47:18 +03:00
levlam
4cc60bbc25 Move HttpUrl test to separate header. 2021-05-24 23:09:41 +03:00
levlam
7edffa1bc7 Move TsLog out of logging.h. 2021-05-18 17:41:33 +03:00
levlam
674a112bfa Add NullLog.h. 2021-05-18 17:13:26 +03:00
levlam
8231c58335 Rename LogInterface::rotate to after_rotation. 2021-05-17 17:58:33 +03:00
levlam
135f9de4a9 Add CombinedLog.h. 2021-05-17 16:53:35 +03:00
levlam
13a21b4fe2 Make LogInterface::append non-virtual. 2021-05-17 16:18:19 +03:00
levlam
a6a4eb6616 Don't include SliceBuilder.h in logging.h. 2021-05-17 15:21:11 +03:00
levlam
d5f02b0066 Avoid int64 multiplication. 2021-03-16 14:35:32 +03:00
levlam
62c18729f1 Fix td::unique. 2021-01-07 04:03:38 +03:00
levlam
82f0386e73 Move some functions from misc.h to algorithm.h. 2021-01-01 16:01:03 +03:00
levlam
52c1da0a70 Update copyright year. 2021-01-01 15:57:46 +03:00
levlam
192fd4862f Use td::unique. 2020-12-30 18:50:57 +03:00
levlam
18be33a18c Add td::unique helper method. 2020-12-30 18:17:22 +03:00
levlam
9985f6db6a Add HMAC tests. 2020-12-22 17:54:35 +03:00
levlam
30fb689ba3 Speed up Misc_Time test. 2020-11-22 17:20:39 +03:00
levlam
ccb30077e7 Make test functions statis if possible. 2020-11-21 20:45:09 +03:00
levlam
8ef6822557 Remove "using namespace td" from tdutils misc test. 2020-11-20 14:49:14 +03:00
levlam
6ae33a5c27 Fix OptionParser test on Windows. 2020-11-20 03:33:09 +03:00
levlam
ff0c727ee2 Fix code formatting. 2020-11-06 02:13:12 +03:00
levlam
a4b71466e0 Minor improvements.
GitOrigin-RevId: 4f0c8840ee69c7a690cb12c5e36231cf9da6d91c
2020-10-12 10:24:30 +03:00
levlam
7207d76a80 Add ExitGuard.
GitOrigin-RevId: f8f04daacbee00386e326eb3ca1ec3dfec19cbb0
2020-10-10 22:37:36 +03:00
Arseny Smirnov
8fcf7740d2 RangeSet (will be used instead of BitMask in files) implementation with tests
GitOrigin-RevId: 977f0776d0b7ef96a31364d2a68cfe980f2845c8
2020-10-09 17:35:53 +03:00
levlam
582206d641 Use Random::fast_bool.
GitOrigin-RevId: 42da8a237c6dfbb6e72bc5b21482891b6c9d58b5
2020-10-08 12:56:08 +03:00
levlam
e1954304ea Remove 'using namespace td' from a test.
GitOrigin-RevId: 77374ec20c363e09e497744c3bed67a71b8e2b20
2020-10-02 01:34:32 +03:00
levlam
13cb7c6a13 Fix test.
GitOrigin-RevId: 7416bb7aa65805038267767213634ec0950b3885
2020-10-02 01:24:35 +03:00
levlam
013db25897 Improve AES CTR test.
GitOrigin-RevId: a65b34e408f972e737489222d9f3e0604582fa3d
2020-09-27 22:07:42 +03:00
levlam
6278121549 Improve AES IGE test.
GitOrigin-RevId: b0b0ac715b062b339f7d64c4695b0fb99b78b409
2020-09-27 22:03:00 +03:00
levlam
657ebfae0c Improve AES CBC test.
GitOrigin-RevId: 03d3cb464c49d9fed9db2104ed1ace3d72579140
2020-09-27 21:03:05 +03:00
levlam
f266aa3912 Minor fixes.
GitOrigin-RevId: a4aacfa1ecab2718475d32bcbd99f9671ba7e982
2020-08-14 22:51:10 +03:00
Arseny Smirnov
c48ef93e1e tdutils: add skip_eintr_timeout and use it for EventFd
GitOrigin-RevId: 716218731f914e89e6f1e542054298380441b522
2020-08-07 18:50:33 +03:00
levlam
e5fa1c3c7f Bench full logging time in log test.
GitOrigin-RevId: e224260d4f81f622af09c2df8f529dcced2ed0c2
2020-08-03 23:08:03 +03:00
levlam
462197e260 Bench logs with variable number of threads.
GitOrigin-RevId: 08e2af2e8fa53b9cec8ac70c3922c6912dd39ff1
2020-08-02 04:34:49 +03:00
levlam
dc96827a93 Add MemoryLog to LogInterface benchmarks.
GitOrigin-RevId: 5169c7b0d3e376323fd229212b95d17f65487e8f
2020-08-02 04:26:37 +03:00
levlam
5285a02cf8 Remove some logging in tests.
GitOrigin-RevId: 35194c43063ec1b65d67b3d58157ab77d7819691
2020-08-02 01:40:48 +03:00
levlam
b45f8ba3a0 Minor fixes.
GitOrigin-RevId: b7985efd4257bc9bb2b2672f94c5f5671e19dd0f
2020-07-26 14:24:30 +03:00
levlam
a02f8d610d Speed up tests execution.
GitOrigin-RevId: 5bcac989d87a04ef8510c47232e3525c4e610073
2020-07-23 17:59:48 +03:00
Arseny Smirnov
c4921adcad Gzip: more tests (with watermark and memory limit)
GitOrigin-RevId: b8eacf5a27d646b9265d2fe43b847888ad58f5af
2020-07-23 16:39:13 +03:00
Arseny Smirnov
38ef3a75cc PollableFd: explicit sync_with_poll
GitOrigin-RevId: 71fa35a594816e84e372ebcfa9d0077a13f26a62
2020-07-21 18:29:39 +03:00
Arseny Smirnov
9b98451c43 IPAddress: function to clear interface part of ipv6
GitOrigin-RevId: ff738e215e458bc9e7257e9a89c318fb01cdb345
2020-07-14 17:22:40 +03:00
levlam
7767842d4c Minor fixes.
GitOrigin-RevId: b9f67c5e5edf818610c1739533f01a7873e6e1b6
2020-07-14 03:37:04 +03:00
levlam
448a765cda Remove wrong assert.
GitOrigin-RevId: f7332c17d9746d9deccab802de970ca0651552bd
2020-07-06 17:45:33 +03:00
levlam
4a5a6e708f Speed up test execution.
GitOrigin-RevId: f52b544d3373d008a63bf7a94e6985c108112581
2020-07-05 03:25:44 +03:00
levlam
93ab72b560 Fix test.
GitOrigin-RevId: a260847020eec7827b5aef453e42d9b8606ecae6
2020-07-04 03:05:45 +03:00
levlam
8872fbf6ac Fix tdutils after merge.
GitOrigin-RevId: 5b9a863e405a9e3782157570156fda71bf2bb589
2020-06-26 02:24:13 +03:00
Arseny Smirnov
fd6423dedf update tdutils from another project
GitOrigin-RevId: 79b8eb2ba229d733f82dbb17b8bd7f27471c9472
2020-06-24 14:47:36 +03:00
levlam
0877d7f716 Automatically detect operating system version.
GitOrigin-RevId: d693799fdbfe4919da5a70c141709f2db93063d7
2020-06-19 03:45:24 +03:00
levlam
2172c71191 Add uname.
GitOrigin-RevId: d63397a217f67714d621425e7c6d3ea1e1fa3c60
2020-06-19 03:08:42 +03:00
levlam
959ecf3c91 Fix OptionParser test.
GitOrigin-RevId: d50bdcc78c49313861777c1abfdef24e5e69b2b3
2020-06-17 07:00:42 +03:00
levlam
c46910d75f Add portable option parser.
GitOrigin-RevId: 0d4f7e2f5bec4826e1c12e3aa1aee642fcf6da07
2020-06-17 03:04:36 +03:00
Arseny Smirnov
bd207a2d19 add AesCbcState test
GitOrigin-RevId: a5c38bc2c0b899aed6cba1689bf3292c30bb1f90
2020-06-16 18:43:49 +03:00
levlam
3442a88413 Unify constant names style.
GitOrigin-RevId: 6e4475366b94cea6ab0331d57f254311490bdee2
2020-06-16 05:10:16 +03:00
levlam
6a7dfc4f01 Minor AES improvements.
GitOrigin-RevId: 138384ad375735b9e889172cae919368c9976456
2020-06-15 23:20:44 +03:00
Arseny Smirnov
7e5a08f272 tdutils: new ige implementation
GitOrigin-RevId: c19b702e3cfcb1edb182839e67c410c7fc3edac5
2020-06-15 15:07:58 +03:00
levlam
2ed9cb3b75 Minor fixes.
GitOrigin-RevId: ce9058c2075281697cc41de2ab970dd11e189f77
2020-06-13 05:13:11 +03:00
levlam
7ec6c794f8 Use fuzzy search for PHP 7.2 on OpenBSD.
GitOrigin-RevId: d2bb7efbc201666c0e1fe455abc8c69bcf4d782d
2020-06-12 22:08:44 +03:00
levlam
f6ef851fe2 AES fixes.
GitOrigin-RevId: bf30c8c381edb623fec0dfac1c494559f3f3739e
2020-06-12 19:43:58 +03:00
Arseny Smirnov
e913c3126b tdutils: optimize aes ctr
GitOrigin-RevId: 09c6df45c0bf2683507a0f279769471efc859ecb
2020-06-12 19:40:17 +03:00
levlam
13af837169 Minor improvements.
GitOrigin-RevId: da7abae6b60c23f15f131ed33d54045f5b59990b
2020-06-12 03:53:04 +03:00
Arseny Smirnov
c4ed5ce140 tdutils: aes experiments
GitOrigin-RevId: 1dd2812041778679fb1ef0462d9e8b1899181e0b
2020-06-12 18:06:40 +03:00
levlam
44689f81ff Minor improvements.
GitOrigin-RevId: 835275f0146586e4de5e18e9f01be29bb72ddf31
2020-06-10 03:42:00 +03:00
levlam
bed0bb69f0 Simplify List test.
GitOrigin-RevId: 7306a169794ecb1e24e3b256bed600dd7d1a698c
2020-06-10 03:01:23 +03:00
levlam
2d22f4d13e Minor improvements.
GitOrigin-RevId: e86b66d0cd5b78a02ce401c40a2c2fffc1bb5a3c
2020-06-10 01:38:00 +03:00
levlam
2a51b98453 Add TsList. Add List/TsList tests.
GitOrigin-RevId: 78a85d3d575fa320187119a23a1ac2e265c70344
2020-06-09 18:40:36 +03:00
levlam
4eed84132e Do not use namespace td in KHeap test.
GitOrigin-RevId: 7f342ada1a91791c1c64184d7a070bccfb2eed12
2020-05-22 23:50:12 +03:00
levlam
ecd8b3b6ce Remove unneeded includes.
GitOrigin-RevId: 9ad3165792f5537b93639984b6128ce29981a062
2020-05-22 23:41:54 +03:00
levlam
bbdad2c9e2 Do not use std::rand.
GitOrigin-RevId: 88ad1ad4b7c8b2fabd0c2e90cb27086d2420a5db
2020-05-01 00:28:37 +03:00
levlam
2f850bc834 Fix warnings.
GitOrigin-RevId: 25c5aaaf29fd1284427f354291a6e664847413ea
2020-03-20 17:32:58 +03:00
levlam
62863e9280 Minor fixes.
GitOrigin-RevId: e7b9ea9cb76d5c65c00a5ca86c85c6c8984e1d3c
2020-03-16 22:00:44 +03:00
levlam
34973a5823 Add gzencode test.
GitOrigin-RevId: 2c4cced1680efe16b8145ba2c5614bad26c9e77e
2020-03-15 02:32:53 +03:00
levlam
968689157c Make max_compression_ratio required parameter in gzencode.
GitOrigin-RevId: c787fdeae202d3b80944412e7db4209f35adcd07
2020-03-15 01:56:48 +03:00
levlam
92df8f9827 Remove unneeded brackets.
GitOrigin-RevId: 0b8a2ae21d28e6c276db8b45ffb4d127800f5d73
2020-02-26 18:15:19 +03:00
Arseny Smirnov
8e0baa9b16 get_emojis_fingerprint: simplified, uses bswap64 now
GitOrigin-RevId: a5ac0742dfa45fc9fb59e75d8cfd302fe666f483
2020-02-25 12:47:31 +01:00
levlam
468523230a Improve SparseFiles test.
GitOrigin-RevId: 19d23d82d32cf4aaec57fb258cf93b70cfba5637
2020-02-19 04:55:25 +03:00
levlam
728d8d79f6 More enum class usages.
GitOrigin-RevId: 6680ce2276ced5b015a1f508f0b7b5f28b5f4a9b
2020-01-19 03:02:56 +03:00
levlam
09d359cdc4 Use exact size formula in base64_decode.
GitOrigin-RevId: 7515474fc70af351e7b886e870b0d3da453afdc8
2020-01-09 22:21:20 +03:00
levlam
7db7757d2d Simplify base64url_decode implementation.
GitOrigin-RevId: 873483e61cc54fad78a09aa8a143070c5e018dfb
2020-01-09 22:07:23 +03:00
levlam
529f925d40 Common base64_encode implementation.
GitOrigin-RevId: ed4f31cfc6f83e81f03bd8e71dc8d48ced530255
2020-01-09 21:05:43 +03:00
levlam
d6dca91ff3 Add is_base64_characters functions.
GitOrigin-RevId: 5b3e8642e9d9788788ee1343af4eee9acf7dddc9
2020-01-09 20:18:53 +03:00
levlam
30e47390aa Fix warning.
GitOrigin-RevId: 5e4ba1a98ba2675d60b469ae5401d2b9907b66b9
2020-01-03 19:37:03 +03:00
levlam
69f30a3505 Add real_size to Stat.
GitOrigin-RevId: 3b8b4c24504ed1fa7eed1885abd3a3e9014eb2c4
2020-01-03 01:01:39 +03:00
levlam
80c35676a2 Update copyright year.
GitOrigin-RevId: 09afb551b6e637dc69739fa735b0051a38b9e14c
2020-01-01 04:23:48 +03:00
levlam
a14ee3e66c Do not use functional cast on integers.
GitOrigin-RevId: 1ebcf0e9a9b004039d32b6363140387bca7d7722
2019-12-24 16:46:10 +03:00
levlam
adb10460b2 Minor fixes.
GitOrigin-RevId: 0c678ad195683947355b63af5aff49875312b4a3
2019-12-23 20:48:30 +03:00
levlam
a0d761f27e Simplify JsonScope.
GitOrigin-RevId: c3a9aea0c053db9684853acb857ae2381d542cb2
2019-12-08 09:02:20 +03:00
levlam
8a7d6be7df Remove td::ctie.
GitOrigin-RevId: 926a19055770a2566778a022d01b7a9661d46ae6
2019-12-08 08:50:43 +03:00
levlam
c0b8349a56 Simplify test.
GitOrigin-RevId: 033c85175c4e62059b377ace0e824e410f27b85e
2019-12-08 08:18:49 +03:00
levlam
c69beaf037 Add td::remove.
GitOrigin-RevId: 410df2c90132c9056d71f5fabe69607891b295c9
2019-10-22 01:14:00 +03:00
levlam
31e8975be5 Add td::contains.
GitOrigin-RevId: 93ce98764505885f5b7218c2f52cedd36fe4533f
2019-10-22 01:03:39 +03:00
levlam
ba3204a5c2 Fix tests.
GitOrigin-RevId: bb970d6d9f0881c260ba92c7c53291444f2f6e84
2019-11-17 23:42:48 +03:00
levlam
e37f7d1537 Add td::remove_if.
GitOrigin-RevId: d94733cbf251e8fc182c106f4cbf0cc84c0675a5
2019-10-20 01:51:17 +03:00
levlam
ee87414bab Fix misprints.
GitOrigin-RevId: e21e784c076005538ee889a61b12b8876567da13
2019-10-19 21:20:16 +03:00
levlam
0b6c1d226f Update clag-format to the latest (190926/r372920) version.
GitOrigin-RevId: 7861ae8ad28eb1f6a06ff3c6f56eff3f67b1d24c
2019-09-28 05:14:21 +03:00
levlam
9293f07464 Simplify static method call.
GitOrigin-RevId: 8b05448f2c5dcfc51d149537bd83c955dbbf5a9d
2019-09-09 02:49:13 +03:00
levlam
6cbc02ed1b Minor improvements.
GitOrigin-RevId: 157e77d244b24f3c5af56539d434096f7440e2e8
2019-09-05 18:32:45 +03:00
levlam
85c64bb3da Add more BigNum::from_binary tests.
GitOrigin-RevId: 0a887d5e59c81020d957100f3fa71ce0442c4674
2019-08-22 20:41:56 +03:00
levlam
72ce03b84b Supoort BigNum::{from,to}_le_binary for OpenSSL < 1.1.0.
GitOrigin-RevId: c104af3f22c814df6946a9218c83cae015823832
2019-08-22 19:22:31 +03:00