@basemaps/lambda-tiler 6.39.0 → 6.41.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. package/CHANGELOG.md +51 -0
  2. package/build/__tests__/config.data.d.ts.map +1 -1
  3. package/build/__tests__/config.data.js +142 -1
  4. package/build/__tests__/config.data.js.map +1 -1
  5. package/build/__tests__/wmts.capability.test.js +105 -79
  6. package/build/__tests__/wmts.capability.test.js.map +1 -1
  7. package/build/__tests__/xyz.util.d.ts.map +1 -1
  8. package/build/__tests__/xyz.util.js +6 -2
  9. package/build/__tests__/xyz.util.js.map +1 -1
  10. package/build/cli/render.tile.d.ts +2 -0
  11. package/build/cli/render.tile.d.ts.map +1 -0
  12. package/build/cli/render.tile.js +36 -0
  13. package/build/cli/render.tile.js.map +1 -0
  14. package/build/routes/__tests__/attribution.test.js +62 -2
  15. package/build/routes/__tests__/attribution.test.js.map +1 -1
  16. package/build/routes/__tests__/wmts.test.js +50 -8
  17. package/build/routes/__tests__/wmts.test.js.map +1 -1
  18. package/build/routes/attribution.d.ts +11 -0
  19. package/build/routes/attribution.d.ts.map +1 -1
  20. package/build/routes/attribution.js +32 -28
  21. package/build/routes/attribution.js.map +1 -1
  22. package/build/routes/tile.json.d.ts.map +1 -1
  23. package/build/routes/tile.json.js +2 -1
  24. package/build/routes/tile.json.js.map +1 -1
  25. package/build/routes/tile.style.json.d.ts.map +1 -1
  26. package/build/routes/tile.style.json.js +2 -1
  27. package/build/routes/tile.style.json.js.map +1 -1
  28. package/build/routes/tile.wmts.d.ts.map +1 -1
  29. package/build/routes/tile.wmts.js +12 -7
  30. package/build/routes/tile.wmts.js.map +1 -1
  31. package/build/routes/tile.xyz.raster.d.ts.map +1 -1
  32. package/build/routes/tile.xyz.raster.js +5 -1
  33. package/build/routes/tile.xyz.raster.js.map +1 -1
  34. package/build/util/__test__/filter.test.d.ts +2 -0
  35. package/build/util/__test__/filter.test.d.ts.map +1 -0
  36. package/build/util/__test__/filter.test.js +64 -0
  37. package/build/util/__test__/filter.test.js.map +1 -0
  38. package/build/util/config.loader.d.ts.map +1 -1
  39. package/build/util/config.loader.js +2 -3
  40. package/build/util/config.loader.js.map +1 -1
  41. package/build/util/filter.d.ts +15 -0
  42. package/build/util/filter.d.ts.map +1 -0
  43. package/build/util/filter.js +59 -0
  44. package/build/util/filter.js.map +1 -0
  45. package/build/util/validate.d.ts.map +1 -1
  46. package/build/util/validate.js +4 -3
  47. package/build/util/validate.js.map +1 -1
  48. package/build/wmts.capability.d.ts +61 -28
  49. package/build/wmts.capability.d.ts.map +1 -1
  50. package/build/wmts.capability.js +175 -99
  51. package/build/wmts.capability.js.map +1 -1
  52. package/dist/index.js +110 -82
  53. package/dist/node_modules/.package-lock.json +17 -17
  54. package/dist/node_modules/detect-libc/README.md +4 -1
  55. package/dist/node_modules/detect-libc/index.d.ts +3 -0
  56. package/dist/node_modules/detect-libc/lib/detect-libc.js +105 -4
  57. package/dist/node_modules/detect-libc/lib/filesystem.js +41 -0
  58. package/dist/node_modules/detect-libc/lib/process.js +3 -0
  59. package/dist/node_modules/detect-libc/package.json +7 -3
  60. package/dist/node_modules/minimist/.eslintrc +25 -50
  61. package/dist/node_modules/minimist/CHANGELOG.md +87 -1
  62. package/dist/node_modules/minimist/README.md +14 -10
  63. package/dist/node_modules/minimist/example/parse.js +2 -0
  64. package/dist/node_modules/minimist/index.js +256 -242
  65. package/dist/node_modules/minimist/package.json +73 -73
  66. package/dist/node_modules/minimist/test/all_bool.js +26 -24
  67. package/dist/node_modules/minimist/test/bool.js +146 -147
  68. package/dist/node_modules/minimist/test/dash.js +33 -21
  69. package/dist/node_modules/minimist/test/default_bool.js +26 -24
  70. package/dist/node_modules/minimist/test/dotted.js +13 -11
  71. package/dist/node_modules/minimist/test/kv_short.js +26 -10
  72. package/dist/node_modules/minimist/test/long.js +28 -26
  73. package/dist/node_modules/minimist/test/num.js +30 -28
  74. package/dist/node_modules/minimist/test/parse.js +169 -157
  75. package/dist/node_modules/minimist/test/parse_modified.js +7 -5
  76. package/dist/node_modules/minimist/test/proto.js +41 -37
  77. package/dist/node_modules/minimist/test/short.js +57 -55
  78. package/dist/node_modules/minimist/test/stop_early.js +10 -8
  79. package/dist/node_modules/minimist/test/unknown.js +83 -81
  80. package/dist/node_modules/minimist/test/whitespace.js +6 -4
  81. package/dist/node_modules/node-abi/.circleci/config.yml +2 -2
  82. package/dist/node_modules/node-abi/.github/CODEOWNERS +1 -0
  83. package/dist/node_modules/node-abi/.github/workflows/semantic.yml +26 -0
  84. package/dist/node_modules/node-abi/.github/workflows/update-abi.yml +5 -4
  85. package/dist/node_modules/node-abi/README.md +5 -3
  86. package/dist/node_modules/node-abi/abi_registry.json +32 -1
  87. package/dist/node_modules/node-abi/package.json +4 -4
  88. package/dist/node_modules/node-abi/scripts/update-abi-registry.js +2 -2
  89. package/dist/node_modules/readable-stream/README.md +1 -1
  90. package/dist/node_modules/readable-stream/lib/_stream_duplex.js +12 -25
  91. package/dist/node_modules/readable-stream/lib/_stream_passthrough.js +2 -4
  92. package/dist/node_modules/readable-stream/lib/_stream_readable.js +176 -273
  93. package/dist/node_modules/readable-stream/lib/_stream_transform.js +26 -37
  94. package/dist/node_modules/readable-stream/lib/_stream_writable.js +118 -174
  95. package/dist/node_modules/readable-stream/lib/internal/streams/async_iterator.js +10 -37
  96. package/dist/node_modules/readable-stream/lib/internal/streams/buffer_list.js +20 -47
  97. package/dist/node_modules/readable-stream/lib/internal/streams/destroy.js +8 -17
  98. package/dist/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +1 -19
  99. package/dist/node_modules/readable-stream/lib/internal/streams/from.js +12 -24
  100. package/dist/node_modules/readable-stream/lib/internal/streams/pipeline.js +5 -16
  101. package/dist/node_modules/readable-stream/lib/internal/streams/state.js +2 -7
  102. package/dist/node_modules/readable-stream/package.json +1 -1
  103. package/dist/node_modules/semver/README.md +70 -1
  104. package/dist/node_modules/semver/bin/semver.js +16 -2
  105. package/dist/node_modules/semver/classes/comparator.js +39 -34
  106. package/dist/node_modules/semver/classes/range.js +45 -28
  107. package/dist/node_modules/semver/classes/semver.js +32 -17
  108. package/dist/node_modules/semver/functions/coerce.js +1 -1
  109. package/dist/node_modules/semver/functions/diff.js +58 -16
  110. package/dist/node_modules/semver/functions/inc.js +3 -2
  111. package/dist/node_modules/semver/functions/parse.js +5 -22
  112. package/dist/node_modules/semver/index.js +1 -0
  113. package/dist/node_modules/semver/internal/constants.js +20 -2
  114. package/dist/node_modules/semver/internal/parse-options.js +14 -10
  115. package/dist/node_modules/semver/internal/re.js +34 -4
  116. package/dist/node_modules/semver/package.json +8 -7
  117. package/dist/node_modules/semver/ranges/intersects.js +1 -1
  118. package/dist/node_modules/semver/ranges/subset.js +6 -3
  119. package/dist/package-lock.json +18 -349
  120. package/dist/package.json +1 -2
  121. package/package.json +9 -10
  122. package/src/__tests__/config.data.ts +142 -1
  123. package/src/__tests__/wmts.capability.test.ts +117 -79
  124. package/src/__tests__/xyz.util.ts +6 -2
  125. package/src/cli/render.tile.ts +41 -0
  126. package/src/routes/__tests__/attribution.test.ts +64 -2
  127. package/src/routes/__tests__/wmts.test.ts +70 -9
  128. package/src/routes/attribution.ts +28 -28
  129. package/src/routes/tile.json.ts +2 -1
  130. package/src/routes/tile.style.json.ts +2 -1
  131. package/src/routes/tile.wmts.ts +13 -6
  132. package/src/routes/tile.xyz.raster.ts +4 -1
  133. package/src/util/__test__/filter.test.ts +80 -0
  134. package/src/util/config.loader.ts +1 -2
  135. package/src/util/filter.ts +60 -0
  136. package/src/util/validate.ts +4 -3
  137. package/src/wmts.capability.ts +216 -123
  138. package/tsconfig.tsbuildinfo +1 -1
  139. package/test-dump.js +0 -6
  140. package/test-imagery.js +0 -3
@@ -1,32 +1,34 @@
1
+ 'use strict';
2
+
1
3
  var parse = require('../');
2
4
  var test = require('tape');
3
5
 
4
6
  test('flag boolean true (default all --args to boolean)', function (t) {
5
- var argv = parse(['moo', '--honk', 'cow'], {
6
- boolean: true
7
- });
8
-
9
- t.deepEqual(argv, {
10
- honk: true,
11
- _: ['moo', 'cow']
12
- });
13
-
14
- t.deepEqual(typeof argv.honk, 'boolean');
15
- t.end();
7
+ var argv = parse(['moo', '--honk', 'cow'], {
8
+ boolean: true,
9
+ });
10
+
11
+ t.deepEqual(argv, {
12
+ honk: true,
13
+ _: ['moo', 'cow'],
14
+ });
15
+
16
+ t.deepEqual(typeof argv.honk, 'boolean');
17
+ t.end();
16
18
  });
17
19
 
18
20
  test('flag boolean true only affects double hyphen arguments without equals signs', function (t) {
19
- var argv = parse(['moo', '--honk', 'cow', '-p', '55', '--tacos=good'], {
20
- boolean: true
21
- });
22
-
23
- t.deepEqual(argv, {
24
- honk: true,
25
- tacos: 'good',
26
- p: 55,
27
- _: ['moo', 'cow']
28
- });
29
-
30
- t.deepEqual(typeof argv.honk, 'boolean');
31
- t.end();
21
+ var argv = parse(['moo', '--honk', 'cow', '-p', '55', '--tacos=good'], {
22
+ boolean: true,
23
+ });
24
+
25
+ t.deepEqual(argv, {
26
+ honk: true,
27
+ tacos: 'good',
28
+ p: 55,
29
+ _: ['moo', 'cow'],
30
+ });
31
+
32
+ t.deepEqual(typeof argv.honk, 'boolean');
33
+ t.end();
32
34
  });
@@ -1,178 +1,177 @@
1
+ 'use strict';
2
+
1
3
  var parse = require('../');
2
4
  var test = require('tape');
3
5
 
4
6
  test('flag boolean default false', function (t) {
5
- var argv = parse(['moo'], {
6
- boolean: ['t', 'verbose'],
7
- default: { verbose: false, t: false }
8
- });
9
-
10
- t.deepEqual(argv, {
11
- verbose: false,
12
- t: false,
13
- _: ['moo']
14
- });
15
-
16
- t.deepEqual(typeof argv.verbose, 'boolean');
17
- t.deepEqual(typeof argv.t, 'boolean');
18
- t.end();
7
+ var argv = parse(['moo'], {
8
+ boolean: ['t', 'verbose'],
9
+ default: { verbose: false, t: false },
10
+ });
11
+
12
+ t.deepEqual(argv, {
13
+ verbose: false,
14
+ t: false,
15
+ _: ['moo'],
16
+ });
17
+
18
+ t.deepEqual(typeof argv.verbose, 'boolean');
19
+ t.deepEqual(typeof argv.t, 'boolean');
20
+ t.end();
19
21
 
20
22
  });
21
23
 
22
24
  test('boolean groups', function (t) {
23
- var argv = parse([ '-x', '-z', 'one', 'two', 'three' ], {
24
- boolean: ['x','y','z']
25
- });
26
-
27
- t.deepEqual(argv, {
28
- x : true,
29
- y : false,
30
- z : true,
31
- _ : [ 'one', 'two', 'three' ]
32
- });
33
-
34
- t.deepEqual(typeof argv.x, 'boolean');
35
- t.deepEqual(typeof argv.y, 'boolean');
36
- t.deepEqual(typeof argv.z, 'boolean');
37
- t.end();
25
+ var argv = parse(['-x', '-z', 'one', 'two', 'three'], {
26
+ boolean: ['x', 'y', 'z'],
27
+ });
28
+
29
+ t.deepEqual(argv, {
30
+ x: true,
31
+ y: false,
32
+ z: true,
33
+ _: ['one', 'two', 'three'],
34
+ });
35
+
36
+ t.deepEqual(typeof argv.x, 'boolean');
37
+ t.deepEqual(typeof argv.y, 'boolean');
38
+ t.deepEqual(typeof argv.z, 'boolean');
39
+ t.end();
38
40
  });
39
41
  test('boolean and alias with chainable api', function (t) {
40
- var aliased = [ '-h', 'derp' ];
41
- var regular = [ '--herp', 'derp' ];
42
- var opts = {
43
- herp: { alias: 'h', boolean: true }
44
- };
45
- var aliasedArgv = parse(aliased, {
46
- boolean: 'herp',
47
- alias: { h: 'herp' }
48
- });
49
- var propertyArgv = parse(regular, {
50
- boolean: 'herp',
51
- alias: { h: 'herp' }
52
- });
53
- var expected = {
54
- herp: true,
55
- h: true,
56
- '_': [ 'derp' ]
57
- };
58
-
59
- t.same(aliasedArgv, expected);
60
- t.same(propertyArgv, expected);
61
- t.end();
42
+ var aliased = ['-h', 'derp'];
43
+ var regular = ['--herp', 'derp'];
44
+ var aliasedArgv = parse(aliased, {
45
+ boolean: 'herp',
46
+ alias: { h: 'herp' },
47
+ });
48
+ var propertyArgv = parse(regular, {
49
+ boolean: 'herp',
50
+ alias: { h: 'herp' },
51
+ });
52
+ var expected = {
53
+ herp: true,
54
+ h: true,
55
+ _: ['derp'],
56
+ };
57
+
58
+ t.same(aliasedArgv, expected);
59
+ t.same(propertyArgv, expected);
60
+ t.end();
62
61
  });
63
62
 
64
63
  test('boolean and alias with options hash', function (t) {
65
- var aliased = [ '-h', 'derp' ];
66
- var regular = [ '--herp', 'derp' ];
67
- var opts = {
68
- alias: { 'h': 'herp' },
69
- boolean: 'herp'
70
- };
71
- var aliasedArgv = parse(aliased, opts);
72
- var propertyArgv = parse(regular, opts);
73
- var expected = {
74
- herp: true,
75
- h: true,
76
- '_': [ 'derp' ]
77
- };
78
- t.same(aliasedArgv, expected);
79
- t.same(propertyArgv, expected);
80
- t.end();
64
+ var aliased = ['-h', 'derp'];
65
+ var regular = ['--herp', 'derp'];
66
+ var opts = {
67
+ alias: { h: 'herp' },
68
+ boolean: 'herp',
69
+ };
70
+ var aliasedArgv = parse(aliased, opts);
71
+ var propertyArgv = parse(regular, opts);
72
+ var expected = {
73
+ herp: true,
74
+ h: true,
75
+ _: ['derp'],
76
+ };
77
+ t.same(aliasedArgv, expected);
78
+ t.same(propertyArgv, expected);
79
+ t.end();
81
80
  });
82
81
 
83
82
  test('boolean and alias array with options hash', function (t) {
84
- var aliased = [ '-h', 'derp' ];
85
- var regular = [ '--herp', 'derp' ];
86
- var alt = [ '--harp', 'derp' ];
87
- var opts = {
88
- alias: { 'h': ['herp', 'harp'] },
89
- boolean: 'h'
90
- };
91
- var aliasedArgv = parse(aliased, opts);
92
- var propertyArgv = parse(regular, opts);
93
- var altPropertyArgv = parse(alt, opts);
94
- var expected = {
95
- harp: true,
96
- herp: true,
97
- h: true,
98
- '_': [ 'derp' ]
99
- };
100
- t.same(aliasedArgv, expected);
101
- t.same(propertyArgv, expected);
102
- t.same(altPropertyArgv, expected);
103
- t.end();
83
+ var aliased = ['-h', 'derp'];
84
+ var regular = ['--herp', 'derp'];
85
+ var alt = ['--harp', 'derp'];
86
+ var opts = {
87
+ alias: { h: ['herp', 'harp'] },
88
+ boolean: 'h',
89
+ };
90
+ var aliasedArgv = parse(aliased, opts);
91
+ var propertyArgv = parse(regular, opts);
92
+ var altPropertyArgv = parse(alt, opts);
93
+ var expected = {
94
+ harp: true,
95
+ herp: true,
96
+ h: true,
97
+ _: ['derp'],
98
+ };
99
+ t.same(aliasedArgv, expected);
100
+ t.same(propertyArgv, expected);
101
+ t.same(altPropertyArgv, expected);
102
+ t.end();
104
103
  });
105
104
 
106
105
  test('boolean and alias using explicit true', function (t) {
107
- var aliased = [ '-h', 'true' ];
108
- var regular = [ '--herp', 'true' ];
109
- var opts = {
110
- alias: { h: 'herp' },
111
- boolean: 'h'
112
- };
113
- var aliasedArgv = parse(aliased, opts);
114
- var propertyArgv = parse(regular, opts);
115
- var expected = {
116
- herp: true,
117
- h: true,
118
- '_': [ ]
119
- };
120
-
121
- t.same(aliasedArgv, expected);
122
- t.same(propertyArgv, expected);
123
- t.end();
106
+ var aliased = ['-h', 'true'];
107
+ var regular = ['--herp', 'true'];
108
+ var opts = {
109
+ alias: { h: 'herp' },
110
+ boolean: 'h',
111
+ };
112
+ var aliasedArgv = parse(aliased, opts);
113
+ var propertyArgv = parse(regular, opts);
114
+ var expected = {
115
+ herp: true,
116
+ h: true,
117
+ _: [],
118
+ };
119
+
120
+ t.same(aliasedArgv, expected);
121
+ t.same(propertyArgv, expected);
122
+ t.end();
124
123
  });
125
124
 
126
125
  // regression, see https://github.com/substack/node-optimist/issues/71
127
- test('boolean and --x=true', function(t) {
128
- var parsed = parse(['--boool', '--other=true'], {
129
- boolean: 'boool'
130
- });
131
-
132
- t.same(parsed.boool, true);
133
- t.same(parsed.other, 'true');
134
-
135
- parsed = parse(['--boool', '--other=false'], {
136
- boolean: 'boool'
137
- });
138
-
139
- t.same(parsed.boool, true);
140
- t.same(parsed.other, 'false');
141
- t.end();
126
+ test('boolean and --x=true', function (t) {
127
+ var parsed = parse(['--boool', '--other=true'], {
128
+ boolean: 'boool',
129
+ });
130
+
131
+ t.same(parsed.boool, true);
132
+ t.same(parsed.other, 'true');
133
+
134
+ parsed = parse(['--boool', '--other=false'], {
135
+ boolean: 'boool',
136
+ });
137
+
138
+ t.same(parsed.boool, true);
139
+ t.same(parsed.other, 'false');
140
+ t.end();
142
141
  });
143
142
 
144
143
  test('boolean --boool=true', function (t) {
145
- var parsed = parse(['--boool=true'], {
146
- default: {
147
- boool: false
148
- },
149
- boolean: ['boool']
150
- });
151
-
152
- t.same(parsed.boool, true);
153
- t.end();
144
+ var parsed = parse(['--boool=true'], {
145
+ default: {
146
+ boool: false,
147
+ },
148
+ boolean: ['boool'],
149
+ });
150
+
151
+ t.same(parsed.boool, true);
152
+ t.end();
154
153
  });
155
154
 
156
155
  test('boolean --boool=false', function (t) {
157
- var parsed = parse(['--boool=false'], {
158
- default: {
159
- boool: true
160
- },
161
- boolean: ['boool']
162
- });
163
-
164
- t.same(parsed.boool, false);
165
- t.end();
156
+ var parsed = parse(['--boool=false'], {
157
+ default: {
158
+ boool: true,
159
+ },
160
+ boolean: ['boool'],
161
+ });
162
+
163
+ t.same(parsed.boool, false);
164
+ t.end();
166
165
  });
167
166
 
168
167
  test('boolean using something similar to true', function (t) {
169
- var opts = { boolean: 'h' };
170
- var result = parse(['-h', 'true.txt'], opts);
171
- var expected = {
172
- h: true,
173
- '_': ['true.txt']
174
- };
175
-
176
- t.same(result, expected);
177
- t.end();
178
- });
168
+ var opts = { boolean: 'h' };
169
+ var result = parse(['-h', 'true.txt'], opts);
170
+ var expected = {
171
+ h: true,
172
+ _: ['true.txt'],
173
+ };
174
+
175
+ t.same(result, expected);
176
+ t.end();
177
+ });
@@ -1,31 +1,43 @@
1
+ 'use strict';
2
+
1
3
  var parse = require('../');
2
4
  var test = require('tape');
3
5
 
4
6
  test('-', function (t) {
5
- t.plan(5);
6
- t.deepEqual(parse([ '-n', '-' ]), { n: '-', _: [] });
7
- t.deepEqual(parse([ '-' ]), { _: [ '-' ] });
8
- t.deepEqual(parse([ '-f-' ]), { f: '-', _: [] });
9
- t.deepEqual(
10
- parse([ '-b', '-' ], { boolean: 'b' }),
11
- { b: true, _: [ '-' ] }
12
- );
13
- t.deepEqual(
14
- parse([ '-s', '-' ], { string: 's' }),
15
- { s: '-', _: [] }
16
- );
7
+ t.plan(6);
8
+ t.deepEqual(parse(['-n', '-']), { n: '-', _: [] });
9
+ t.deepEqual(parse(['--nnn', '-']), { nnn: '-', _: [] });
10
+ t.deepEqual(parse(['-']), { _: ['-'] });
11
+ t.deepEqual(parse(['-f-']), { f: '-', _: [] });
12
+ t.deepEqual(
13
+ parse(['-b', '-'], { boolean: 'b' }),
14
+ { b: true, _: ['-'] }
15
+ );
16
+ t.deepEqual(
17
+ parse(['-s', '-'], { string: 's' }),
18
+ { s: '-', _: [] }
19
+ );
17
20
  });
18
21
 
19
22
  test('-a -- b', function (t) {
20
- t.plan(3);
21
- t.deepEqual(parse([ '-a', '--', 'b' ]), { a: true, _: [ 'b' ] });
22
- t.deepEqual(parse([ '--a', '--', 'b' ]), { a: true, _: [ 'b' ] });
23
- t.deepEqual(parse([ '--a', '--', 'b' ]), { a: true, _: [ 'b' ] });
23
+ t.plan(2);
24
+ t.deepEqual(parse(['-a', '--', 'b']), { a: true, _: ['b'] });
25
+ t.deepEqual(parse(['--a', '--', 'b']), { a: true, _: ['b'] });
26
+ });
27
+
28
+ test('move arguments after the -- into their own `--` array', function (t) {
29
+ t.plan(1);
30
+ t.deepEqual(
31
+ parse(['--name', 'John', 'before', '--', 'after'], { '--': true }),
32
+ { name: 'John', _: ['before'], '--': ['after'] }
33
+ );
24
34
  });
25
35
 
26
- test('move arguments after the -- into their own `--` array', function(t) {
27
- t.plan(1);
28
- t.deepEqual(
29
- parse([ '--name', 'John', 'before', '--', 'after' ], { '--': true }),
30
- { name: 'John', _: [ 'before' ], '--': [ 'after' ] });
36
+ test('--- option value', function (t) {
37
+ // A multi-dash value is largely an edge case, but check the behaviour is as expected,
38
+ // and in particular the same for short option and long option (as made consistent in Jan 2023).
39
+ t.plan(2);
40
+ t.deepEqual(parse(['-n', '---']), { n: '---', _: [] });
41
+ t.deepEqual(parse(['--nnn', '---']), { nnn: '---', _: [] });
31
42
  });
43
+
@@ -1,35 +1,37 @@
1
+ 'use strict';
2
+
1
3
  var test = require('tape');
2
4
  var parse = require('../');
3
5
 
4
6
  test('boolean default true', function (t) {
5
- var argv = parse([], {
6
- boolean: 'sometrue',
7
- default: { sometrue: true }
8
- });
9
- t.equal(argv.sometrue, true);
10
- t.end();
7
+ var argv = parse([], {
8
+ boolean: 'sometrue',
9
+ default: { sometrue: true },
10
+ });
11
+ t.equal(argv.sometrue, true);
12
+ t.end();
11
13
  });
12
14
 
13
15
  test('boolean default false', function (t) {
14
- var argv = parse([], {
15
- boolean: 'somefalse',
16
- default: { somefalse: false }
17
- });
18
- t.equal(argv.somefalse, false);
19
- t.end();
16
+ var argv = parse([], {
17
+ boolean: 'somefalse',
18
+ default: { somefalse: false },
19
+ });
20
+ t.equal(argv.somefalse, false);
21
+ t.end();
20
22
  });
21
23
 
22
24
  test('boolean default to null', function (t) {
23
- var argv = parse([], {
24
- boolean: 'maybe',
25
- default: { maybe: null }
26
- });
27
- t.equal(argv.maybe, null);
28
- var argv = parse(['--maybe'], {
29
- boolean: 'maybe',
30
- default: { maybe: null }
31
- });
32
- t.equal(argv.maybe, true);
33
- t.end();
25
+ var argv = parse([], {
26
+ boolean: 'maybe',
27
+ default: { maybe: null },
28
+ });
29
+ t.equal(argv.maybe, null);
34
30
 
35
- })
31
+ var argvLong = parse(['--maybe'], {
32
+ boolean: 'maybe',
33
+ default: { maybe: null },
34
+ });
35
+ t.equal(argvLong.maybe, true);
36
+ t.end();
37
+ });
@@ -1,22 +1,24 @@
1
+ 'use strict';
2
+
1
3
  var parse = require('../');
2
4
  var test = require('tape');
3
5
 
4
6
  test('dotted alias', function (t) {
5
- var argv = parse(['--a.b', '22'], {default: {'a.b': 11}, alias: {'a.b': 'aa.bb'}});
6
- t.equal(argv.a.b, 22);
7
- t.equal(argv.aa.bb, 22);
8
- t.end();
7
+ var argv = parse(['--a.b', '22'], { default: { 'a.b': 11 }, alias: { 'a.b': 'aa.bb' } });
8
+ t.equal(argv.a.b, 22);
9
+ t.equal(argv.aa.bb, 22);
10
+ t.end();
9
11
  });
10
12
 
11
13
  test('dotted default', function (t) {
12
- var argv = parse('', {default: {'a.b': 11}, alias: {'a.b': 'aa.bb'}});
13
- t.equal(argv.a.b, 11);
14
- t.equal(argv.aa.bb, 11);
15
- t.end();
14
+ var argv = parse('', { default: { 'a.b': 11 }, alias: { 'a.b': 'aa.bb' } });
15
+ t.equal(argv.a.b, 11);
16
+ t.equal(argv.aa.bb, 11);
17
+ t.end();
16
18
  });
17
19
 
18
20
  test('dotted default with no alias', function (t) {
19
- var argv = parse('', {default: {'a.b': 11}});
20
- t.equal(argv.a.b, 11);
21
- t.end();
21
+ var argv = parse('', { default: { 'a.b': 11 } });
22
+ t.equal(argv.a.b, 11);
23
+ t.end();
22
24
  });
@@ -1,16 +1,32 @@
1
+ 'use strict';
2
+
1
3
  var parse = require('../');
2
4
  var test = require('tape');
3
5
 
4
- test('short -k=v' , function (t) {
5
- t.plan(1);
6
-
7
- var argv = parse([ '-b=123' ]);
8
- t.deepEqual(argv, { b: 123, _: [] });
6
+ test('short -k=v', function (t) {
7
+ t.plan(1);
8
+
9
+ var argv = parse(['-b=123']);
10
+ t.deepEqual(argv, { b: 123, _: [] });
11
+ });
12
+
13
+ test('multi short -k=v', function (t) {
14
+ t.plan(1);
15
+
16
+ var argv = parse(['-a=whatever', '-b=robots']);
17
+ t.deepEqual(argv, { a: 'whatever', b: 'robots', _: [] });
9
18
  });
10
19
 
11
- test('multi short -k=v' , function (t) {
12
- t.plan(1);
13
-
14
- var argv = parse([ '-a=whatever', '-b=robots' ]);
15
- t.deepEqual(argv, { a: 'whatever', b: 'robots', _: [] });
20
+ test('short with embedded equals -k=a=b', function (t) {
21
+ t.plan(1);
22
+
23
+ var argv = parse(['-k=a=b']);
24
+ t.deepEqual(argv, { k: 'a=b', _: [] });
25
+ });
26
+
27
+ test('short with later equals like -ab=c', function (t) {
28
+ t.plan(1);
29
+
30
+ var argv = parse(['-ab=c']);
31
+ t.deepEqual(argv, { a: true, b: 'c', _: [] });
16
32
  });
@@ -1,31 +1,33 @@
1
+ 'use strict';
2
+
1
3
  var test = require('tape');
2
4
  var parse = require('../');
3
5
 
4
6
  test('long opts', function (t) {
5
- t.deepEqual(
6
- parse([ '--bool' ]),
7
- { bool : true, _ : [] },
8
- 'long boolean'
9
- );
10
- t.deepEqual(
11
- parse([ '--pow', 'xixxle' ]),
12
- { pow : 'xixxle', _ : [] },
13
- 'long capture sp'
14
- );
15
- t.deepEqual(
16
- parse([ '--pow=xixxle' ]),
17
- { pow : 'xixxle', _ : [] },
18
- 'long capture eq'
19
- );
20
- t.deepEqual(
21
- parse([ '--host', 'localhost', '--port', '555' ]),
22
- { host : 'localhost', port : 555, _ : [] },
23
- 'long captures sp'
24
- );
25
- t.deepEqual(
26
- parse([ '--host=localhost', '--port=555' ]),
27
- { host : 'localhost', port : 555, _ : [] },
28
- 'long captures eq'
29
- );
30
- t.end();
7
+ t.deepEqual(
8
+ parse(['--bool']),
9
+ { bool: true, _: [] },
10
+ 'long boolean'
11
+ );
12
+ t.deepEqual(
13
+ parse(['--pow', 'xixxle']),
14
+ { pow: 'xixxle', _: [] },
15
+ 'long capture sp'
16
+ );
17
+ t.deepEqual(
18
+ parse(['--pow=xixxle']),
19
+ { pow: 'xixxle', _: [] },
20
+ 'long capture eq'
21
+ );
22
+ t.deepEqual(
23
+ parse(['--host', 'localhost', '--port', '555']),
24
+ { host: 'localhost', port: 555, _: [] },
25
+ 'long captures sp'
26
+ );
27
+ t.deepEqual(
28
+ parse(['--host=localhost', '--port=555']),
29
+ { host: 'localhost', port: 555, _: [] },
30
+ 'long captures eq'
31
+ );
32
+ t.end();
31
33
  });