Commit Graph

21 Commits

Author SHA1 Message Date
Anders Kaseorg
21d432e12c zjsunit: Deglobalize run_test.
Signed-off-by: Anders Kaseorg <[email protected]>
2020-12-01 07:14:00 -05:00
Anders Kaseorg
425f1789e2 zjsunit: Deglobalize namespace.
Signed-off-by: Anders Kaseorg <[email protected]>
2020-12-01 07:14:00 -05:00
Anders Kaseorg
7b03d48798 zjsunit: Deglobalize assert.
Signed-off-by: Anders Kaseorg <[email protected]>
2020-12-01 07:14:00 -05:00
Anders Kaseorg
9238813135 js: Use destructuring for require statements.
This allows import/order to auto-fix blocks including these
statements.

Signed-off-by: Anders Kaseorg <[email protected]>
2020-09-23 09:06:07 -04:00
Anders Kaseorg
6ec808b8df js: Add "use strict" directive to CommonJS files.
ES and TypeScript modules are strict by default and don’t need this
directive.  ESLint will remind us to add it to new CommonJS files and
remove it from ES and TypeScript modules.

Signed-off-by: Anders Kaseorg <[email protected]>
2020-07-31 22:09:46 -07:00
Anders Kaseorg
0e0baca41e typescript: Enable strictNullChecks.
Let’s do this right from the beginning instead of making a mess to
clean up later.

Signed-off-by: Anders Kaseorg <[email protected]>
2020-07-28 11:01:35 -07:00
Anders Kaseorg
b65d2e063d js: Reformat with Prettier.
Signed-off-by: Anders Kaseorg <[email protected]>
2020-07-17 14:31:25 -07:00
Anders Kaseorg
f3726db89a js: Normalize strings to double quotes.
Prettier would do this anyway, but it’s separated out for a more
reviewable diff.  Generated by ESLint.

Signed-off-by: Anders Kaseorg <[email protected]>
2020-07-17 14:31:24 -07:00
Rohitt Vashishtha
c8b0627ffe zblueslip: Run blueslip.reset after each test.
This simplifies the blueslip interface to just declaring expected
errors and calling the code to test.
2020-04-20 08:17:20 -04:00
Rohitt Vashishtha
0def4a97ae zblueslip: Implement tracking extra/lesser blueslip calls.
We change the user facing interface to allow specifying expected
number of error messages (default=1). Now an average test can look
like:

```
    // We expect 3 error messages;
    blueslip.expect('error', 'an error message', 3);
    throwError();
    throwError();
    throwError();
    blueslip.reset();
```
2020-04-20 08:17:20 -04:00
Steve Howell
f7b432afec node tests: Auto-include zblueslip for node tests.
We already use blueslip stubs in ~45 tests, so we
may as well just auto-include it.
2020-04-03 12:56:49 -04:00
Steve Howell
df84c52a7f zblueslip: Change API to expect/reset.
The `set_test_data` never made complete sense to
me, since it wasn't really data that we were
setting.
2020-04-03 12:56:49 -04:00
Anders Kaseorg
de3146c137 js: Replace [...x] with Array.from(x).
Babel strict generates more code for [...x] than you’d like, while
Babel loose mode assumes x is an array.

Signed-off-by: Anders Kaseorg <[email protected]>
2020-02-05 11:52:52 -08:00
Anders Kaseorg
fac2c71776 dict: Replace items method with @@iterator method.
Signed-off-by: Anders Kaseorg <[email protected]>
2020-02-04 12:22:03 -08:00
Anders Kaseorg
9e1343ff8a dict, lazy_set: Return an iterator from values method.
Signed-off-by: Anders Kaseorg <[email protected]>
2020-02-04 12:22:03 -08:00
Anders Kaseorg
45d3be5449 dict, lazy_set: Return an iterator from keys method.
Signed-off-by: Anders Kaseorg <[email protected]>
2020-02-04 12:22:03 -08:00
Anders Kaseorg
61de2e8192 dict: Remove is_empty method.
Signed-off-by: Anders Kaseorg <[email protected]>
2020-02-04 12:22:03 -08:00
Anders Kaseorg
60fac80c8e dict, lazy_set: Replace num_items method with size property.
Signed-off-by: Anders Kaseorg <[email protected]>
2020-02-04 12:22:03 -08:00
Anders Kaseorg
fe54e73c77 dict, lazy_set: Rename del method to delete, for consistency with Map.
Signed-off-by: Anders Kaseorg <[email protected]>
2020-02-04 12:22:03 -08:00
Anders Kaseorg
0e657756f1 dict: Make set method return value consistent with Map.
Signed-off-by: Anders Kaseorg <[email protected]>
2020-02-04 12:22:03 -08:00
Steve Howell
ee3e488e02 js: Extract FoldDict class.
We have ~5 years of proof that we'll probably never
extend Dict with more options.

Breaking the classes into makes both a little faster
(no options to check), and we remove some options
in FoldDict that are never used (from/from_array).

A possible next step is to fine-tune the Dict to use
Map internally.

Note that the TypeScript types for FoldDict are now
more specific (requiring string keys).  Of course,
this isn't really enforced until we convert other
modules to TS.
2020-01-03 17:19:50 -08:00