@enbox/dwn-sdk-js 0.4.8 → 0.4.10

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 (173) hide show
  1. package/dist/browser.mjs +1 -1
  2. package/dist/browser.mjs.map +4 -4
  3. package/dist/esm/generated/precompiled-validators.js +1262 -3888
  4. package/dist/esm/generated/precompiled-validators.js.map +1 -1
  5. package/dist/esm/src/core/constants.js +0 -26
  6. package/dist/esm/src/core/constants.js.map +1 -1
  7. package/dist/esm/src/core/encryption-control.js +0 -10
  8. package/dist/esm/src/core/encryption-control.js.map +1 -1
  9. package/dist/esm/src/core/replication-apply.js.map +1 -1
  10. package/dist/esm/src/index.js +1 -1
  11. package/dist/esm/src/index.js.map +1 -1
  12. package/dist/esm/src/interfaces/messages-subscribe.js.map +1 -1
  13. package/dist/esm/src/interfaces/records-write.js +0 -9
  14. package/dist/esm/src/interfaces/records-write.js.map +1 -1
  15. package/dist/esm/src/store/index-level-compound.js.map +1 -1
  16. package/dist/esm/src/store/level-wrapper.js +6 -2
  17. package/dist/esm/src/store/level-wrapper.js.map +1 -1
  18. package/dist/esm/src/utils/encryption.js +2 -7
  19. package/dist/esm/src/utils/encryption.js.map +1 -1
  20. package/dist/esm/src/utils/hd-key.js +0 -27
  21. package/dist/esm/src/utils/hd-key.js.map +1 -1
  22. package/dist/esm/src/utils/jws.js.map +1 -1
  23. package/dist/esm/src/utils/protocols.js +23 -51
  24. package/dist/esm/src/utils/protocols.js.map +1 -1
  25. package/dist/esm/src/utils/records.js +17 -31
  26. package/dist/esm/src/utils/records.js.map +1 -1
  27. package/dist/esm/tests/core/constants.spec.js +1 -11
  28. package/dist/esm/tests/core/constants.spec.js.map +1 -1
  29. package/dist/esm/tests/core/validation-read-closure.spec.js +1 -1
  30. package/dist/esm/tests/core/validation-read-closure.spec.js.map +1 -1
  31. package/dist/esm/tests/dwn.spec.js +5 -5
  32. package/dist/esm/tests/dwn.spec.js.map +1 -1
  33. package/dist/esm/tests/features/author-delegated-grant.spec.js +16 -16
  34. package/dist/esm/tests/features/author-delegated-grant.spec.js.map +1 -1
  35. package/dist/esm/tests/features/owner-delegated-grant.spec.js +7 -7
  36. package/dist/esm/tests/features/owner-delegated-grant.spec.js.map +1 -1
  37. package/dist/esm/tests/features/permissions.spec.js +8 -8
  38. package/dist/esm/tests/features/permissions.spec.js.map +1 -1
  39. package/dist/esm/tests/features/protocol-composition.spec.js +18 -63
  40. package/dist/esm/tests/features/protocol-composition.spec.js.map +1 -1
  41. package/dist/esm/tests/features/records-prune-cross-protocol.spec.js +5 -5
  42. package/dist/esm/tests/features/records-prune-cross-protocol.spec.js.map +1 -1
  43. package/dist/esm/tests/features/records-prune.spec.js +15 -15
  44. package/dist/esm/tests/features/records-prune.spec.js.map +1 -1
  45. package/dist/esm/tests/features/records-squash.spec.js +9 -9
  46. package/dist/esm/tests/features/records-squash.spec.js.map +1 -1
  47. package/dist/esm/tests/features/records-tags.spec.js +28 -28
  48. package/dist/esm/tests/features/records-tags.spec.js.map +1 -1
  49. package/dist/esm/tests/features/resumable-tasks.spec.js +3 -3
  50. package/dist/esm/tests/features/resumable-tasks.spec.js.map +1 -1
  51. package/dist/esm/tests/fuzz/data-stream.fuzz.spec.js +2 -2
  52. package/dist/esm/tests/fuzz/data-stream.fuzz.spec.js.map +1 -1
  53. package/dist/esm/tests/fuzz/filter.fuzz.spec.js +1 -1
  54. package/dist/esm/tests/fuzz/filter.fuzz.spec.js.map +1 -1
  55. package/dist/esm/tests/fuzz/records-utils.fuzz.spec.js +2 -2
  56. package/dist/esm/tests/fuzz/records-utils.fuzz.spec.js.map +1 -1
  57. package/dist/esm/tests/fuzz/resumable-task-store.fuzz.spec.js +4 -4
  58. package/dist/esm/tests/fuzz/resumable-task-store.fuzz.spec.js.map +1 -1
  59. package/dist/esm/tests/handlers/messages-subscribe.spec.js +16 -16
  60. package/dist/esm/tests/handlers/messages-subscribe.spec.js.map +1 -1
  61. package/dist/esm/tests/handlers/protocols-configure.spec.js +5 -5
  62. package/dist/esm/tests/handlers/protocols-configure.spec.js.map +1 -1
  63. package/dist/esm/tests/handlers/protocols-query.spec.js +11 -11
  64. package/dist/esm/tests/handlers/protocols-query.spec.js.map +1 -1
  65. package/dist/esm/tests/handlers/records-delete.spec.js +23 -23
  66. package/dist/esm/tests/handlers/records-delete.spec.js.map +1 -1
  67. package/dist/esm/tests/handlers/records-query.spec.js +120 -120
  68. package/dist/esm/tests/handlers/records-query.spec.js.map +1 -1
  69. package/dist/esm/tests/handlers/records-read.spec.js +16 -14
  70. package/dist/esm/tests/handlers/records-read.spec.js.map +1 -1
  71. package/dist/esm/tests/handlers/records-subscribe.spec.js +10 -10
  72. package/dist/esm/tests/handlers/records-subscribe.spec.js.map +1 -1
  73. package/dist/esm/tests/handlers/records-write.spec.js +41 -41
  74. package/dist/esm/tests/handlers/records-write.spec.js.map +1 -1
  75. package/dist/esm/tests/interfaces/protocols-configure.spec.js +9 -9
  76. package/dist/esm/tests/interfaces/protocols-configure.spec.js.map +1 -1
  77. package/dist/esm/tests/interfaces/records-write.spec.js +5 -51
  78. package/dist/esm/tests/interfaces/records-write.spec.js.map +1 -1
  79. package/dist/esm/tests/jose/jws/general.spec.js +4 -4
  80. package/dist/esm/tests/jose/jws/general.spec.js.map +1 -1
  81. package/dist/esm/tests/scenarios/end-to-end-tests.spec.js +2 -2
  82. package/dist/esm/tests/scenarios/end-to-end-tests.spec.js.map +1 -1
  83. package/dist/esm/tests/scenarios/nested-roles.spec.js +1 -1
  84. package/dist/esm/tests/scenarios/nested-roles.spec.js.map +1 -1
  85. package/dist/esm/tests/scenarios/subscriptions.spec.js +28 -28
  86. package/dist/esm/tests/scenarios/subscriptions.spec.js.map +1 -1
  87. package/dist/esm/tests/store/blockstore-mock.spec.js +1 -1
  88. package/dist/esm/tests/store/blockstore-mock.spec.js.map +1 -1
  89. package/dist/esm/tests/store/data-store-level.spec.js +3 -3
  90. package/dist/esm/tests/store/data-store-level.spec.js.map +1 -1
  91. package/dist/esm/tests/store/index-level.spec.js +83 -83
  92. package/dist/esm/tests/store/index-level.spec.js.map +1 -1
  93. package/dist/esm/tests/store/message-store-level.spec.js +2 -2
  94. package/dist/esm/tests/store/message-store-level.spec.js.map +1 -1
  95. package/dist/esm/tests/store/message-store.spec.js +30 -30
  96. package/dist/esm/tests/store/message-store.spec.js.map +1 -1
  97. package/dist/esm/tests/store-dependent-tests.spec.js +5 -0
  98. package/dist/esm/tests/store-dependent-tests.spec.js.map +1 -1
  99. package/dist/esm/tests/utils/data-stream.spec.js +15 -15
  100. package/dist/esm/tests/utils/data-stream.spec.js.map +1 -1
  101. package/dist/esm/tests/utils/encryption-callbacks.spec.js +18 -30
  102. package/dist/esm/tests/utils/encryption-callbacks.spec.js.map +1 -1
  103. package/dist/esm/tests/utils/encryption-control-test-utils.js +1 -1
  104. package/dist/esm/tests/utils/encryption-control-test-utils.js.map +1 -1
  105. package/dist/esm/tests/utils/encryption.spec.js +31 -34
  106. package/dist/esm/tests/utils/encryption.spec.js.map +1 -1
  107. package/dist/esm/tests/utils/messages.spec.js +8 -8
  108. package/dist/esm/tests/utils/messages.spec.js.map +1 -1
  109. package/dist/esm/tests/utils/secp256k1.spec.js +2 -2
  110. package/dist/esm/tests/utils/secp256k1.spec.js.map +1 -1
  111. package/dist/esm/tests/utils/secp256r1.spec.js +1 -1
  112. package/dist/esm/tests/utils/secp256r1.spec.js.map +1 -1
  113. package/dist/esm/tests/utils/test-data-generator.js +76 -24
  114. package/dist/esm/tests/utils/test-data-generator.js.map +1 -1
  115. package/dist/esm/tests/validation/json-schemas/protocols/protocols-configure.spec.js +1 -1
  116. package/dist/esm/tests/validation/json-schemas/protocols/protocols-configure.spec.js.map +1 -1
  117. package/dist/types/generated/precompiled-validators.d.ts +88 -120
  118. package/dist/types/generated/precompiled-validators.d.ts.map +1 -1
  119. package/dist/types/src/core/constants.d.ts +0 -13
  120. package/dist/types/src/core/constants.d.ts.map +1 -1
  121. package/dist/types/src/core/encryption-control.d.ts +0 -1
  122. package/dist/types/src/core/encryption-control.d.ts.map +1 -1
  123. package/dist/types/src/core/replication-apply.d.ts +0 -7
  124. package/dist/types/src/core/replication-apply.d.ts.map +1 -1
  125. package/dist/types/src/index.d.ts +1 -1
  126. package/dist/types/src/index.d.ts.map +1 -1
  127. package/dist/types/src/interfaces/messages-subscribe.d.ts +1 -2
  128. package/dist/types/src/interfaces/messages-subscribe.d.ts.map +1 -1
  129. package/dist/types/src/interfaces/records-write.d.ts +0 -4
  130. package/dist/types/src/interfaces/records-write.d.ts.map +1 -1
  131. package/dist/types/src/store/index-level-compound.d.ts +2 -4
  132. package/dist/types/src/store/index-level-compound.d.ts.map +1 -1
  133. package/dist/types/src/store/level-wrapper.d.ts.map +1 -1
  134. package/dist/types/src/types/protocols-types.d.ts +1 -1
  135. package/dist/types/src/types/protocols-types.d.ts.map +1 -1
  136. package/dist/types/src/utils/encryption.d.ts +0 -3
  137. package/dist/types/src/utils/encryption.d.ts.map +1 -1
  138. package/dist/types/src/utils/hd-key.d.ts +1 -11
  139. package/dist/types/src/utils/hd-key.d.ts.map +1 -1
  140. package/dist/types/src/utils/jws.d.ts +1 -2
  141. package/dist/types/src/utils/jws.d.ts.map +1 -1
  142. package/dist/types/src/utils/protocols.d.ts +2 -7
  143. package/dist/types/src/utils/protocols.d.ts.map +1 -1
  144. package/dist/types/src/utils/records.d.ts +1 -8
  145. package/dist/types/src/utils/records.d.ts.map +1 -1
  146. package/dist/types/tests/features/protocol-composition.spec.d.ts.map +1 -1
  147. package/dist/types/tests/handlers/records-read.spec.d.ts.map +1 -1
  148. package/dist/types/tests/scenarios/end-to-end-tests.spec.d.ts.map +1 -1
  149. package/dist/types/tests/utils/test-data-generator.d.ts +17 -1
  150. package/dist/types/tests/utils/test-data-generator.d.ts.map +1 -1
  151. package/package.json +4 -4
  152. package/src/core/constants.ts +0 -30
  153. package/src/core/encryption-control.ts +1 -17
  154. package/src/core/replication-apply.ts +0 -8
  155. package/src/index.ts +0 -1
  156. package/src/interfaces/messages-subscribe.ts +1 -2
  157. package/src/interfaces/records-write.ts +0 -13
  158. package/src/store/index-level-compound.ts +2 -5
  159. package/src/store/level-wrapper.ts +6 -2
  160. package/src/types/protocols-types.ts +2 -1
  161. package/src/utils/encryption.ts +2 -15
  162. package/src/utils/hd-key.ts +1 -32
  163. package/src/utils/jws.ts +1 -2
  164. package/src/utils/protocols.ts +15 -78
  165. package/src/utils/records.ts +15 -57
  166. package/dist/esm/tests/validation/json-schemas/encryption/delivery.spec.js +0 -47
  167. package/dist/esm/tests/validation/json-schemas/encryption/delivery.spec.js.map +0 -1
  168. package/dist/esm/tests/validation/json-schemas/encryption/grant-key.spec.js +0 -72
  169. package/dist/esm/tests/validation/json-schemas/encryption/grant-key.spec.js.map +0 -1
  170. package/dist/types/tests/validation/json-schemas/encryption/delivery.spec.d.ts +0 -2
  171. package/dist/types/tests/validation/json-schemas/encryption/delivery.spec.d.ts.map +0 -1
  172. package/dist/types/tests/validation/json-schemas/encryption/grant-key.spec.d.ts +0 -2
  173. package/dist/types/tests/validation/json-schemas/encryption/grant-key.spec.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"records-squash.spec.js","sourceRoot":"","sources":["../../../../tests/features/records-squash.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"records-squash.spec.js","sourceRoot":"","sources":["../../../../tests/features/records-squash.spec.ts"],"names":[],"mappings":"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"}
@@ -1866,7 +1866,7 @@ export function testRecordsTags() {
1866
1866
  });
1867
1867
  const tagsQueryMatchReply = await dwn.processMessage(alice.did, tagsQueryMatch.message);
1868
1868
  expect(tagsQueryMatchReply.status.code).toBe(200);
1869
- expect(tagsQueryMatchReply.entries?.length).toBe(1);
1869
+ expect(tagsQueryMatchReply.entries).toHaveLength(1);
1870
1870
  expect(tagsQueryMatchReply.entries[0].recordId).toBe(tagsRecord1.message.recordId);
1871
1871
  // update the record with new tags
1872
1872
  const updatedRecord = await TestDataGenerator.generateFromRecordsWrite({
@@ -1883,7 +1883,7 @@ export function testRecordsTags() {
1883
1883
  // Sanity: Query for the old tag value should return no results
1884
1884
  const tagsQueryMatchReply2 = await dwn.processMessage(alice.did, tagsQueryMatch.message);
1885
1885
  expect(tagsQueryMatchReply2.status.code).toBe(200);
1886
- expect(tagsQueryMatchReply2.entries?.length).toBe(0);
1886
+ expect(tagsQueryMatchReply2.entries).toHaveLength(0);
1887
1887
  });
1888
1888
  it('should not index tags when the record is not `latestBaseState`', async () => {
1889
1889
  const buildTagIndexSpy = sinon.spy(Records, 'buildTagIndexes');
@@ -1951,7 +1951,7 @@ export function testRecordsTags() {
1951
1951
  });
1952
1952
  const tagsQueryMatchReply = await dwn.processMessage(alice.did, tagsQueryMatch.message);
1953
1953
  expect(tagsQueryMatchReply.status.code).toBe(200);
1954
- expect(tagsQueryMatchReply.entries?.length).toBe(1);
1954
+ expect(tagsQueryMatchReply.entries).toHaveLength(1);
1955
1955
  expect(tagsQueryMatchReply.entries[0].recordId).toBe(tagsRecord1.message.recordId);
1956
1956
  // negative result same tag different value
1957
1957
  let tagsQueryNegative = await TestDataGenerator.generateRecordsQuery({
@@ -1964,7 +1964,7 @@ export function testRecordsTags() {
1964
1964
  });
1965
1965
  let tagsQueryNegativeReply = await dwn.processMessage(alice.did, tagsQueryNegative.message);
1966
1966
  expect(tagsQueryNegativeReply.status.code).toBe(200);
1967
- expect(tagsQueryNegativeReply.entries?.length).toBe(0);
1967
+ expect(tagsQueryNegativeReply.entries).toHaveLength(0);
1968
1968
  // negative result different tag same value
1969
1969
  tagsQueryNegative = await TestDataGenerator.generateRecordsQuery({
1970
1970
  author: alice,
@@ -1976,7 +1976,7 @@ export function testRecordsTags() {
1976
1976
  });
1977
1977
  tagsQueryNegativeReply = await dwn.processMessage(alice.did, tagsQueryNegative.message);
1978
1978
  expect(tagsQueryNegativeReply.status.code).toBe(200);
1979
- expect(tagsQueryNegativeReply.entries?.length).toBe(0);
1979
+ expect(tagsQueryNegativeReply.entries).toHaveLength(0);
1980
1980
  });
1981
1981
  it('should be able to filter by number match', async () => {
1982
1982
  const alice = await TestDataGenerator.generateDidKeyPersona();
@@ -2004,7 +2004,7 @@ export function testRecordsTags() {
2004
2004
  });
2005
2005
  const tagsQueryMatchReply = await dwn.processMessage(alice.did, tagsQueryMatch.message);
2006
2006
  expect(tagsQueryMatchReply.status.code).toBe(200);
2007
- expect(tagsQueryMatchReply.entries?.length).toBe(1);
2007
+ expect(tagsQueryMatchReply.entries).toHaveLength(1);
2008
2008
  expect(tagsQueryMatchReply.entries[0].recordId).toBe(tagsRecord1.message.recordId);
2009
2009
  // negative result same tag different value
2010
2010
  let tagsQueryNegative = await TestDataGenerator.generateRecordsQuery({
@@ -2017,7 +2017,7 @@ export function testRecordsTags() {
2017
2017
  });
2018
2018
  let tagsQueryNegativeReply = await dwn.processMessage(alice.did, tagsQueryNegative.message);
2019
2019
  expect(tagsQueryNegativeReply.status.code).toBe(200);
2020
- expect(tagsQueryNegativeReply.entries?.length).toBe(0);
2020
+ expect(tagsQueryNegativeReply.entries).toHaveLength(0);
2021
2021
  // negative result different tag same value
2022
2022
  tagsQueryNegative = await TestDataGenerator.generateRecordsQuery({
2023
2023
  author: alice,
@@ -2029,7 +2029,7 @@ export function testRecordsTags() {
2029
2029
  });
2030
2030
  tagsQueryNegativeReply = await dwn.processMessage(alice.did, tagsQueryNegative.message);
2031
2031
  expect(tagsQueryNegativeReply.status.code).toBe(200);
2032
- expect(tagsQueryNegativeReply.entries?.length).toBe(0);
2032
+ expect(tagsQueryNegativeReply.entries).toHaveLength(0);
2033
2033
  });
2034
2034
  it('should be able to filter by boolean match', async () => {
2035
2035
  // 1. Write a record with a boolean tag `booleanTag` set to true
@@ -2072,7 +2072,7 @@ export function testRecordsTags() {
2072
2072
  });
2073
2073
  const tagsQueryMatchTrueReply = await dwn.processMessage(alice.did, tagsQueryMatchTrue.message);
2074
2074
  expect(tagsQueryMatchTrueReply.status.code).toBe(200);
2075
- expect(tagsQueryMatchTrueReply.entries?.length).toBe(1);
2075
+ expect(tagsQueryMatchTrueReply.entries).toHaveLength(1);
2076
2076
  expect(tagsQueryMatchTrueReply.entries[0].recordId).toBe(tagsRecordTrue.message.recordId);
2077
2077
  // query for records with a `booleanTag` set to false, should return the record with the false tag
2078
2078
  const tagsQueryMatchFalse = await TestDataGenerator.generateRecordsQuery({
@@ -2085,7 +2085,7 @@ export function testRecordsTags() {
2085
2085
  });
2086
2086
  const tagsQueryMatchFalseReply = await dwn.processMessage(alice.did, tagsQueryMatchFalse.message);
2087
2087
  expect(tagsQueryMatchFalseReply.status.code).toBe(200);
2088
- expect(tagsQueryMatchFalseReply.entries?.length).toBe(1);
2088
+ expect(tagsQueryMatchFalseReply.entries).toHaveLength(1);
2089
2089
  expect(tagsQueryMatchFalseReply.entries[0].recordId).toBe(tagsRecordFalse.message.recordId);
2090
2090
  // negative result for a non existent boolean tag.
2091
2091
  const tagsQueryNegative = await TestDataGenerator.generateRecordsQuery({
@@ -2098,7 +2098,7 @@ export function testRecordsTags() {
2098
2098
  });
2099
2099
  const tagsQueryNegativeReply = await dwn.processMessage(alice.did, tagsQueryNegative.message);
2100
2100
  expect(tagsQueryNegativeReply.status.code).toBe(200);
2101
- expect(tagsQueryNegativeReply.entries?.length).toBe(0);
2101
+ expect(tagsQueryNegativeReply.entries).toHaveLength(0);
2102
2102
  });
2103
2103
  it('should be able to range filter by string value', async () => {
2104
2104
  const alice = await TestDataGenerator.generateDidKeyPersona();
@@ -2153,7 +2153,7 @@ export function testRecordsTags() {
2153
2153
  });
2154
2154
  const queryForAllReply = await dwn.processMessage(alice.did, queryForAll.message);
2155
2155
  expect(queryForAllReply.status.code).toBe(200);
2156
- expect(queryForAllReply.entries?.length).toBe(4); // all 4 records
2156
+ expect(queryForAllReply.entries).toHaveLength(4); // all 4 records
2157
2157
  // query for first names that begin with 'a' and 'b'
2158
2158
  const queryForAtoB = await TestDataGenerator.generateRecordsQuery({
2159
2159
  author: alice,
@@ -2166,7 +2166,7 @@ export function testRecordsTags() {
2166
2166
  });
2167
2167
  const queryForAtoBReply = await dwn.processMessage(alice.did, queryForAtoB.message);
2168
2168
  expect(queryForAtoBReply.status.code).toBe(200);
2169
- expect(queryForAtoBReply.entries?.length).toBe(2);
2169
+ expect(queryForAtoBReply.entries).toHaveLength(2);
2170
2170
  const atobRecordIds = queryForAtoBReply.entries.map(entry => entry.recordId);
2171
2171
  expect(atobRecordIds).toEqual(expect.arrayContaining([aliceRecord.message.recordId, bobRecord.message.recordId]));
2172
2172
  // query for first names greater than 'bob'(exclusive of), and less than but inclusive of 'daniel'
@@ -2181,7 +2181,7 @@ export function testRecordsTags() {
2181
2181
  });
2182
2182
  const queryForBtoDReply = await dwn.processMessage(alice.did, queryForBtoD.message);
2183
2183
  expect(queryForBtoDReply.status.code).toBe(200);
2184
- expect(queryForBtoDReply.entries?.length).toBe(2);
2184
+ expect(queryForBtoDReply.entries).toHaveLength(2);
2185
2185
  const btodRecordIds = queryForBtoDReply.entries.map(entry => entry.recordId);
2186
2186
  expect(btodRecordIds).toEqual(expect.arrayContaining([carolRecord.message.recordId, danielRecord.message.recordId]));
2187
2187
  // query for first names that begin with 'carol' onward (inclusive).
@@ -2196,7 +2196,7 @@ export function testRecordsTags() {
2196
2196
  });
2197
2197
  const queryForCarolOnwardReply = await dwn.processMessage(alice.did, queryForCarolOnward.message);
2198
2198
  expect(queryForCarolOnwardReply.status.code).toBe(200);
2199
- expect(queryForCarolOnwardReply.entries?.length).toBe(2);
2199
+ expect(queryForCarolOnwardReply.entries).toHaveLength(2);
2200
2200
  const onwardResults = queryForCarolOnwardReply.entries.map(entry => entry.recordId);
2201
2201
  expect(onwardResults).toEqual(expect.arrayContaining([carolRecord.message.recordId, danielRecord.message.recordId]));
2202
2202
  });
@@ -2246,7 +2246,7 @@ export function testRecordsTags() {
2246
2246
  });
2247
2247
  const tagsQueryMatchReply = await dwn.processMessage(alice.did, tagsQueryMatch.message);
2248
2248
  expect(tagsQueryMatchReply.status.code).toBe(200);
2249
- expect(tagsQueryMatchReply.entries?.length).toBe(2);
2249
+ expect(tagsQueryMatchReply.entries).toHaveLength(2);
2250
2250
  const matchedRecords = tagsQueryMatchReply.entries.map(entry => entry.recordId);
2251
2251
  expect(matchedRecords).toEqual(expect.arrayContaining([tagsRecord1.message.recordId, tagsRecord2.message.recordId]));
2252
2252
  // sanity/control: a regular range query will return all
@@ -2261,7 +2261,7 @@ export function testRecordsTags() {
2261
2261
  });
2262
2262
  const tagsQueryRangeReply = await dwn.processMessage(alice.did, tagsQueryRange.message);
2263
2263
  expect(tagsQueryRangeReply.status.code).toBe(200);
2264
- expect(tagsQueryRangeReply.entries?.length).toBe(3); // returned all 3 records
2264
+ expect(tagsQueryRangeReply.entries).toHaveLength(3); // returned all 3 records
2265
2265
  });
2266
2266
  it('should be able to range filter by number value', async () => {
2267
2267
  const alice = await TestDataGenerator.generateDidKeyPersona();
@@ -2320,7 +2320,7 @@ export function testRecordsTags() {
2320
2320
  });
2321
2321
  const queryForAllReply = await dwn.processMessage(alice.did, queryForAll.message);
2322
2322
  expect(queryForAllReply.status.code).toBe(200);
2323
- expect(queryForAllReply.entries?.length).toBe(4); // all 4 records
2323
+ expect(queryForAllReply.entries).toHaveLength(4); // all 4 records
2324
2324
  // query for all records that received higher than(not including) an 80
2325
2325
  // only one record should match
2326
2326
  const queryForHighGrade = await TestDataGenerator.generateRecordsQuery({
@@ -2334,7 +2334,7 @@ export function testRecordsTags() {
2334
2334
  });
2335
2335
  const queryForHighReply = await dwn.processMessage(alice.did, queryForHighGrade.message);
2336
2336
  expect(queryForHighReply.status.code).toBe(200);
2337
- expect(queryForHighReply.entries?.length).toBe(1);
2337
+ expect(queryForHighReply.entries).toHaveLength(1);
2338
2338
  expect(queryForHighReply.entries[0].recordId).toBe(danielRecord.message.recordId);
2339
2339
  // query for all records that received higher (and including) a 75
2340
2340
  // three records should match
@@ -2349,7 +2349,7 @@ export function testRecordsTags() {
2349
2349
  });
2350
2350
  const queryForPassingGradeReply = await dwn.processMessage(alice.did, queryForPassingGrade.message);
2351
2351
  expect(queryForPassingGradeReply.status.code).toBe(200);
2352
- expect(queryForPassingGradeReply.entries?.length).toBe(3);
2352
+ expect(queryForPassingGradeReply.entries).toHaveLength(3);
2353
2353
  const passingRecords = queryForPassingGradeReply.entries.map(entry => entry.recordId);
2354
2354
  expect(passingRecords).toEqual(expect.arrayContaining([
2355
2355
  danielRecord.message.recordId, bobRecord.message.recordId, aliceRecord.message.recordId
@@ -2366,7 +2366,7 @@ export function testRecordsTags() {
2366
2366
  });
2367
2367
  const queryForPoorGradesReply = await dwn.processMessage(alice.did, queryForPoorGrades.message);
2368
2368
  expect(queryForPoorGradesReply.status.code).toBe(200);
2369
- expect(queryForPoorGradesReply.entries?.length).toBe(1);
2369
+ expect(queryForPoorGradesReply.entries).toHaveLength(1);
2370
2370
  expect(queryForPoorGradesReply.entries[0].recordId).toBe(carolRecord.message.recordId);
2371
2371
  // query for passing grades that were not perfect scores
2372
2372
  const queryForRange = await TestDataGenerator.generateRecordsQuery({
@@ -2380,7 +2380,7 @@ export function testRecordsTags() {
2380
2380
  });
2381
2381
  const queryForRangeReply = await dwn.processMessage(alice.did, queryForRange.message);
2382
2382
  expect(queryForRangeReply.status.code).toBe(200);
2383
- expect(queryForRangeReply.entries?.length).toBe(2);
2383
+ expect(queryForRangeReply.entries).toHaveLength(2);
2384
2384
  const rangeRecords = queryForRangeReply.entries.map(entry => entry.recordId);
2385
2385
  expect(rangeRecords).toEqual(expect.arrayContaining([bobRecord.message.recordId, aliceRecord.message.recordId]));
2386
2386
  });
@@ -2407,7 +2407,7 @@ export function testRecordsTags() {
2407
2407
  });
2408
2408
  const tagsQueryMatchReply = await dwn.processMessage(alice.did, tagsQueryMatch.message);
2409
2409
  expect(tagsQueryMatchReply.status.code).toBe(200);
2410
- expect(tagsQueryMatchReply.entries?.length).toBe(1);
2410
+ expect(tagsQueryMatchReply.entries).toHaveLength(1);
2411
2411
  expect(tagsQueryMatchReply.entries[0].recordId).toBe(tagsRecord1.message.recordId);
2412
2412
  // update the record with new tags
2413
2413
  const updatedRecord = await TestDataGenerator.generateFromRecordsWrite({
@@ -2420,7 +2420,7 @@ export function testRecordsTags() {
2420
2420
  // issuing the same query should return no results
2421
2421
  const tagsQueryMatchReply2 = await dwn.processMessage(alice.did, tagsQueryMatch.message);
2422
2422
  expect(tagsQueryMatchReply2.status.code).toBe(200);
2423
- expect(tagsQueryMatchReply2.entries?.length).toBe(0);
2423
+ expect(tagsQueryMatchReply2.entries).toHaveLength(0);
2424
2424
  });
2425
2425
  it('should not return results if the record was updated with empty tags', async () => {
2426
2426
  const alice = await TestDataGenerator.generateDidKeyPersona();
@@ -2445,7 +2445,7 @@ export function testRecordsTags() {
2445
2445
  });
2446
2446
  const tagsQueryMatchReply = await dwn.processMessage(alice.did, tagsQueryMatch.message);
2447
2447
  expect(tagsQueryMatchReply.status.code).toBe(200);
2448
- expect(tagsQueryMatchReply.entries?.length).toBe(1);
2448
+ expect(tagsQueryMatchReply.entries).toHaveLength(1);
2449
2449
  expect(tagsQueryMatchReply.entries[0].recordId).toBe(tagsRecord1.message.recordId);
2450
2450
  // update the record without any tags
2451
2451
  const updatedRecord = await TestDataGenerator.generateFromRecordsWrite({
@@ -2457,7 +2457,7 @@ export function testRecordsTags() {
2457
2457
  // issuing the same query should return no results
2458
2458
  const tagsQueryMatchReply2 = await dwn.processMessage(alice.did, tagsQueryMatch.message);
2459
2459
  expect(tagsQueryMatchReply2.status.code).toBe(200);
2460
- expect(tagsQueryMatchReply2.entries?.length).toBe(0);
2460
+ expect(tagsQueryMatchReply2.entries).toHaveLength(0);
2461
2461
  });
2462
2462
  });
2463
2463
  describe('RecordsDelete with tags', () => {
@@ -2486,7 +2486,7 @@ export function testRecordsTags() {
2486
2486
  });
2487
2487
  const tagsQueryMatchReply = await dwn.processMessage(alice.did, tagsQueryMatch.message);
2488
2488
  expect(tagsQueryMatchReply.status.code).toBe(200);
2489
- expect(tagsQueryMatchReply.entries?.length).toBe(1);
2489
+ expect(tagsQueryMatchReply.entries).toHaveLength(1);
2490
2490
  expect(tagsQueryMatchReply.entries[0].recordId).toBe(tagsRecord1.message.recordId);
2491
2491
  // delete the record
2492
2492
  const recordDelete = await TestDataGenerator.generateRecordsDelete({
@@ -2498,7 +2498,7 @@ export function testRecordsTags() {
2498
2498
  // issue the the same query should return no results
2499
2499
  const tagsQueryMatchReply2 = await dwn.processMessage(alice.did, tagsQueryMatch.message);
2500
2500
  expect(tagsQueryMatchReply2.status.code).toBe(200);
2501
- expect(tagsQueryMatchReply2.entries?.length).toBe(0);
2501
+ expect(tagsQueryMatchReply2.entries).toHaveLength(0);
2502
2502
  });
2503
2503
  });
2504
2504
  });