mol_mutable 0.0.362 → 0.0.364

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.
package/node.audit.js CHANGED
@@ -1 +1 @@
1
- console.info("Audit passed")
1
+ console.info( '%c ▫ $mol_build ▫ Audit passed', 'color:forestgreen; font-weight:bolder' )
package/node.test.js CHANGED
@@ -1221,17 +1221,6 @@ var $;
1221
1221
  ;
1222
1222
  "use strict";
1223
1223
  var $;
1224
- (function ($) {
1225
- function $mol_dom_serialize(node) {
1226
- const serializer = new $mol_dom_context.XMLSerializer;
1227
- return serializer.serializeToString(node);
1228
- }
1229
- $.$mol_dom_serialize = $mol_dom_serialize;
1230
- })($ || ($ = {}));
1231
- //mol/dom/serialize/serialize.ts
1232
- ;
1233
- "use strict";
1234
- var $;
1235
1224
  (function ($) {
1236
1225
  function $mol_assert_ok(value) {
1237
1226
  if (value)
@@ -1252,14 +1241,12 @@ var $;
1252
1241
  handler();
1253
1242
  }
1254
1243
  catch (error) {
1255
- if (!ErrorRight)
1256
- return error;
1257
1244
  $.$mol_fail = fail;
1258
1245
  if (typeof ErrorRight === 'string') {
1259
1246
  $mol_assert_equal(error.message, ErrorRight);
1260
1247
  }
1261
1248
  else {
1262
- $mol_assert_ok(error instanceof ErrorRight);
1249
+ $mol_assert_equal(error instanceof ErrorRight, true);
1263
1250
  }
1264
1251
  return error;
1265
1252
  }
@@ -1269,58 +1256,47 @@ var $;
1269
1256
  $mol_fail(new Error('Not failed'));
1270
1257
  }
1271
1258
  $.$mol_assert_fail = $mol_assert_fail;
1272
- function $mol_assert_equal(...args) {
1273
- for (let i = 0; i < args.length; ++i) {
1274
- for (let j = 0; j < args.length; ++j) {
1275
- if (i === j)
1276
- continue;
1277
- if (Number.isNaN(args[i]) && Number.isNaN(args[j]))
1278
- continue;
1279
- if (args[i] !== args[j])
1280
- $mol_fail(new Error(`Not equal (${i + 1}:${j + 1})\n${args[i]}\n${args[j]}`));
1281
- }
1282
- }
1259
+ function $mol_assert_like(...args) {
1260
+ $mol_assert_equal(...args);
1283
1261
  }
1284
- $.$mol_assert_equal = $mol_assert_equal;
1262
+ $.$mol_assert_like = $mol_assert_like;
1285
1263
  function $mol_assert_unique(...args) {
1286
1264
  for (let i = 0; i < args.length; ++i) {
1287
1265
  for (let j = 0; j < args.length; ++j) {
1288
1266
  if (i === j)
1289
1267
  continue;
1290
- if (args[i] === args[j] || (Number.isNaN(args[i]) && Number.isNaN(args[j]))) {
1291
- $mol_fail(new Error(`args[${i}] = args[${j}] = ${args[i]}`));
1292
- }
1268
+ if (!$mol_compare_deep(args[i], args[j]))
1269
+ continue;
1270
+ $mol_fail(new Error(`args[${i}] = args[${j}] = ${args[i]}`));
1293
1271
  }
1294
1272
  }
1295
1273
  }
1296
1274
  $.$mol_assert_unique = $mol_assert_unique;
1297
- function $mol_assert_like(head, ...tail) {
1298
- for (let [index, value] of Object.entries(tail)) {
1299
- if (!$mol_compare_deep(value, head)) {
1300
- const print = (val) => {
1301
- if (!val)
1302
- return val;
1303
- if (typeof val !== 'object')
1304
- return val;
1305
- if ('outerHTML' in val)
1306
- return val.outerHTML;
1307
- try {
1308
- return JSON.stringify(val, (k, v) => typeof v === 'bigint' ? String(v) : v, '\t');
1309
- }
1310
- catch (error) {
1311
- console.error(error);
1312
- return val;
1313
- }
1314
- };
1315
- return $mol_fail(new Error(`Not like (1:${+index + 2})\n${print(head)}\n---\n${print(value)}`));
1316
- }
1275
+ function $mol_assert_equal(...args) {
1276
+ for (let i = 1; i < args.length; ++i) {
1277
+ if ($mol_compare_deep(args[0], args[i]))
1278
+ continue;
1279
+ if (args[0] instanceof Element && args[i] instanceof Element && args[0].outerHTML === args[i].outerHTML)
1280
+ continue;
1281
+ return $mol_fail(new Error(`args[0] args[${i}]\n${print(args[0])}\n---\n${print(args[i])}`));
1317
1282
  }
1318
1283
  }
1319
- $.$mol_assert_like = $mol_assert_like;
1320
- function $mol_assert_dom(left, right) {
1321
- $mol_assert_equal($mol_dom_serialize(left), $mol_dom_serialize(right));
1322
- }
1323
- $.$mol_assert_dom = $mol_assert_dom;
1284
+ $.$mol_assert_equal = $mol_assert_equal;
1285
+ const print = (val) => {
1286
+ if (!val)
1287
+ return val;
1288
+ if (typeof val !== 'object')
1289
+ return val;
1290
+ if ('outerHTML' in val)
1291
+ return val.outerHTML;
1292
+ try {
1293
+ return JSON.stringify(val, (k, v) => typeof v === 'bigint' ? String(v) : v, '\t');
1294
+ }
1295
+ catch (error) {
1296
+ console.error(error);
1297
+ return val;
1298
+ }
1299
+ };
1324
1300
  })($ || ($ = {}));
1325
1301
  //mol/assert/assert.ts
1326
1302
  ;
@@ -1341,10 +1317,10 @@ var $;
1341
1317
  $mol_assert_equal(2, 2, 2);
1342
1318
  },
1343
1319
  'two must be unique'() {
1344
- $mol_assert_unique([3], [3]);
1320
+ $mol_assert_unique([2], [3]);
1345
1321
  },
1346
1322
  'three must be unique'() {
1347
- $mol_assert_unique([3], [3], [3]);
1323
+ $mol_assert_unique([1], [2], [3]);
1348
1324
  },
1349
1325
  'two must be alike'() {
1350
1326
  $mol_assert_like([3], [3]);
@@ -1669,7 +1645,7 @@ var $;
1669
1645
  };
1670
1646
  }
1671
1647
  error(message, Class = Error) {
1672
- return new Class(`${message}${this}`);
1648
+ return new Class(`${message} (${this})`);
1673
1649
  }
1674
1650
  span(row, col, length) {
1675
1651
  return new $mol_span(this.uri, this.source, row, col, length);
@@ -1684,11 +1660,11 @@ var $;
1684
1660
  if (end < 0)
1685
1661
  end += len;
1686
1662
  if (begin < 0 || begin > len)
1687
- this.$.$mol_fail(`Begin value '${begin}' out of range ${this}`);
1663
+ this.$.$mol_fail(this.error(`Begin value '${begin}' out of range`, RangeError));
1688
1664
  if (end < 0 || end > len)
1689
- this.$.$mol_fail(`End value '${end}' out of range ${this}`);
1665
+ this.$.$mol_fail(this.error(`End value '${end}' out of range`, RangeError));
1690
1666
  if (end < begin)
1691
- this.$.$mol_fail(`End value '${end}' can't be less than begin value ${this}`);
1667
+ this.$.$mol_fail(this.error(`End value '${end}' can't be less than begin value`, RangeError));
1692
1668
  return this.span(this.row, this.col + begin, end - begin);
1693
1669
  }
1694
1670
  }
@@ -1735,14 +1711,14 @@ var $;
1735
1711
  },
1736
1712
  'slice span - out of range'($) {
1737
1713
  const span = new $mol_span('test.ts', '', 1, 3, 5);
1738
- $mol_assert_fail(() => span.slice(-1, 3));
1739
- $mol_assert_fail(() => span.slice(1, 6));
1740
- $mol_assert_fail(() => span.slice(1, 10));
1714
+ $mol_assert_fail(() => span.slice(-1, 3), `End value '3' can't be less than begin value (test.ts#1:3/5)`);
1715
+ $mol_assert_fail(() => span.slice(1, 6), `End value '6' out of range (test.ts#1:3/5)`);
1716
+ $mol_assert_fail(() => span.slice(1, 10), `End value '10' out of range (test.ts#1:3/5)`);
1741
1717
  },
1742
1718
  'error handling'($) {
1743
1719
  const span = new $mol_span('test.ts', '', 1, 3, 4);
1744
- const error = span.error('Some error\n');
1745
- $mol_assert_equal(error.message, 'Some error\ntest.ts#1:3/4');
1720
+ const error = span.error('Some error');
1721
+ $mol_assert_equal(error.message, 'Some error (test.ts#1:3/4)');
1746
1722
  }
1747
1723
  });
1748
1724
  })($ || ($ = {}));