@@ -259,7 +259,7 @@ describe('DeepMap', () => {
259
259
} ) ;
260
260
261
261
describe ( 'union method' , ( ) => {
262
- it ( 'the union of two maps contains all unique keys and associated values ' , async ( ) => {
262
+ it ( 'the union of two maps contains all key-value pairs from first map and any unique keys from second map ' , async ( ) => {
263
263
const map1 = new DeepMap ( [
264
264
[ new K ( '1' ) , new V ( '1' ) ] ,
265
265
[ new K ( '2' ) , new V ( '2' ) ] ,
@@ -293,19 +293,19 @@ describe('DeepMap', () => {
293
293
} ) ;
294
294
295
295
describe ( 'intersection method' , ( ) => {
296
- it ( 'the intersection of two maps contains all shared keys and associated values ' , async ( ) => {
296
+ it ( 'the intersection of two maps contains all shared key-value pairs ' , async ( ) => {
297
297
const map1 = new DeepMap ( [
298
298
[ new K ( '1' ) , new V ( '1' ) ] ,
299
299
[ new K ( '2' ) , new V ( '2' ) ] ,
300
+ [ new K ( '3' ) , new V ( '3' ) ] ,
300
301
] ) ;
301
302
const map2 = new DeepMap ( [
302
- [ new K ( '2' ) , new V ( '999' ) ] ,
303
- [ new K ( '3' ) , new V ( '3' ) ] ,
303
+ [ new K ( '1' ) , new V ( '1' ) ] ,
304
+ [ new K ( '2' ) , new V ( '999' ) ] , // same key but different value -- not a match
305
+ [ new K ( '4' ) , new V ( '4' ) ] ,
304
306
] ) ;
305
307
const intersectionMap = map1 . intersection ( map2 ) ;
306
- expect ( [ ...intersectionMap . entries ( ) ] ) . toStrictEqual ( [
307
- [ new K ( '2' ) , new V ( '2' ) ] , // value for common key is the value from the caller
308
- ] ) ;
308
+ expect ( [ ...intersectionMap . entries ( ) ] ) . toStrictEqual ( [ [ new K ( '1' ) , new V ( '1' ) ] ] ) ;
309
309
} ) ;
310
310
311
311
it ( 'the intersection of equal maps is the same as either input' , async ( ) => {
@@ -325,18 +325,21 @@ describe('DeepMap', () => {
325
325
} ) ;
326
326
327
327
describe ( 'difference method' , ( ) => {
328
- it ( 'the difference of two maps contains all keys from first map not in second' , async ( ) => {
328
+ it ( 'the difference of two maps contains all key-value pairs from first map not in second' , async ( ) => {
329
329
const map1 = new DeepMap ( [
330
330
[ new K ( '1' ) , new V ( '1' ) ] ,
331
331
[ new K ( '2' ) , new V ( '2' ) ] ,
332
+ [ new K ( '3' ) , new V ( '3' ) ] ,
332
333
] ) ;
333
334
const map2 = new DeepMap ( [
334
- [ new K ( '2' ) , new V ( '999' ) ] ,
335
- [ new K ( '3' ) , new V ( '3' ) ] ,
335
+ [ new K ( '1' ) , new V ( '1' ) ] ,
336
+ [ new K ( '2' ) , new V ( '999' ) ] , // same key but different value -- not a match
337
+ [ new K ( '4' ) , new V ( '4' ) ] ,
336
338
] ) ;
337
339
const differenceMap = map1 . difference ( map2 ) ;
338
340
expect ( [ ...differenceMap . entries ( ) ] ) . toStrictEqual ( [
339
- [ new K ( '1' ) , new V ( '1' ) ] , // value for common key is the value from the caller
341
+ [ new K ( '2' ) , new V ( '2' ) ] ,
342
+ [ new K ( '3' ) , new V ( '3' ) ] ,
340
343
] ) ;
341
344
} ) ;
342
345
0 commit comments