MCPcopy Create free account
hub / github.com/TanStack/db / assertOnlyKeysAffected

Function assertOnlyKeysAffected

packages/db-ivm/tests/test-utils.ts:281–301  ·  view source on GitHub ↗
(
  testName: string,
  messages: Array<[[K, V], number]>,
  expectedKeys: Array<K>,
)

Source from the content-addressed store, hash-verified

279 * Assert that only specific keys appear in messages (for incremental processing verification)
280 */
281export function assertOnlyKeysAffected<K, V>(
282 testName: string,
283 messages: Array<[[K, V], number]>,
284 expectedKeys: Array<K>,
285) {
286 const actualKeys = extractMessageKeys(messages)
287 const expectedKeySet = new Set(expectedKeys)
288
289 // Check that all actual keys are expected
290 Array.from(actualKeys).forEach((key) => {
291 if (!expectedKeySet.has(key)) {
292 throw new Error(`${testName}: Unexpected key ${key} in messages`)
293 }
294 })
295
296 if (LOG_RESULTS) {
297 console.log(
298 `${testName}: ✅ Only expected keys affected: ${Array.from(actualKeys).join(`, `)}`,
299 )
300 }
301}
302
303export const compareFractionalIndex = (
304 r1: [unknown, [unknown, string]],

Callers 7

testJoinFunction · 0.85
testCountFunction · 0.85
join-types.test.tsFile · 0.85
testJoinFunction · 0.85
reduce.test.tsFile · 0.85

Calls 5

extractMessageKeysFunction · 0.85
fromMethod · 0.80
forEachMethod · 0.45
hasMethod · 0.45
joinMethod · 0.45

Tested by 3

testJoinFunction · 0.68
testCountFunction · 0.68
testJoinFunction · 0.68