@@ -4,7 +4,7 @@ import { merge } from 'merge-anything'
4
4
import { assert , test } from 'vitest'
5
5
import { createMagnetarInstance } from '../helpers/createMagnetarInstance.js'
6
6
7
- test ( 'write: insert (document)' , async ( ) => {
7
+ test ( 'write: insert (document) → set ID via doc instance ' , async ( ) => {
8
8
const { pokedexModule, magnetar } = createMagnetarInstance ( )
9
9
const payload = pokedex ( 7 )
10
10
assert . deepEqual ( pokedexModule . data . get ( '7' ) , undefined )
@@ -17,6 +17,20 @@ test('write: insert (document)', async () => {
17
17
assert . deepEqual ( magnetar . collection ( 'pokedex' ) . doc ( '7' ) . data , payload )
18
18
} )
19
19
20
+ test ( 'write: insert (document) → set ID via payload' , async ( ) => {
21
+ const { pokedexModule, magnetar } = createMagnetarInstance ( )
22
+ const payload = { ...pokedex ( 7 ) , id : '007' }
23
+ assert . deepEqual ( pokedexModule . data . get ( '7' ) , undefined )
24
+ assert . deepEqual ( pokedexModule . data . get ( '007' ) , undefined )
25
+ await pokedexModule . insert ( payload as any ) . catch ( ( e : any ) => assert . fail ( e . message ) ) // prettier-ignore
26
+ // check data of references executed on
27
+ assert . deepEqual ( pokedexModule . data . get ( '007' ) , payload as any )
28
+ // check data of new references
29
+ assert . deepEqual ( pokedexModule . doc ( '007' ) . data , payload as any )
30
+ assert . deepEqual ( magnetar . doc ( 'pokedex/007' ) . data , payload as any )
31
+ assert . deepEqual ( magnetar . collection ( 'pokedex' ) . doc ( '007' ) . data , payload as any )
32
+ } )
33
+
20
34
test ( 'write: insert (collection) → random ID' , async ( ) => {
21
35
const { pokedexModule, magnetar } = createMagnetarInstance ( )
22
36
const payload = pokedex ( 7 )
0 commit comments