@@ -183,20 +183,14 @@ func TestMergeValues(t *testing.T) {
183183 t .Run ("null not null" , func (t * testing.T ) {
184184 t .Parallel ()
185185 a , b := MustParse (`null` ), MustParse (`1` )
186- merged , changed , err := MergeValues (a , b )
187- require .NoError (t , err )
188- require .Equal (t , true , changed )
189- out := merged .MarshalTo (nil )
190- require .Equal (t , `1` , string (out ))
186+ _ , _ , err := MergeValues (a , b )
187+ require .Error (t , err )
191188 })
192189 t .Run ("null not null reverse" , func (t * testing.T ) {
193190 t .Parallel ()
194191 a , b := MustParse (`1` ), MustParse (`null` )
195- merged , changed , err := MergeValues (a , b )
196- require .NoError (t , err )
197- require .Equal (t , true , changed )
198- out := merged .MarshalTo (nil )
199- require .Equal (t , `null` , string (out ))
192+ _ , _ , err := MergeValues (a , b )
193+ require .Error (t , err )
200194 })
201195 t .Run ("array objects" , func (t * testing.T ) {
202196 t .Parallel ()
@@ -272,32 +266,43 @@ func TestMergeValues(t *testing.T) {
272266 t .Parallel ()
273267 left := MustParse (`null` )
274268 right := MustParse (`true` )
275- out , _ , err := MergeValues (left , right )
276- require .NoError (t , err )
277- require .Equal (t , `true` , out .String ())
269+ _ , _ , err := MergeValues (left , right )
270+ require .Error (t , err )
278271 })
279272 t .Run ("true null" , func (t * testing.T ) {
280273 t .Parallel ()
281274 left := MustParse (`true` )
282275 right := MustParse (`null` )
283- out , _ , err := MergeValues (left , right )
284- require .NoError (t , err )
285- require .Equal (t , `null` , out .String ())
276+ _ , _ , err := MergeValues (left , right )
277+ require .Error (t , err )
286278 })
287279 t .Run ("nested null true" , func (t * testing.T ) {
288280 t .Parallel ()
289281 left := MustParse (`{"a":null}` )
290282 right := MustParse (`{"a":true}` )
291- out , _ , err := MergeValues (left , right )
292- require .NoError (t , err )
293- require .Equal (t , `{"a":true}` , out .String ())
283+ _ , _ , err := MergeValues (left , right )
284+ require .Error (t , err )
294285 })
295286 t .Run ("nested true null" , func (t * testing.T ) {
296287 t .Parallel ()
297288 left := MustParse (`{"a":true}` )
298289 right := MustParse (`{"a":null}` )
290+ _ , _ , err := MergeValues (left , right )
291+ require .Error (t , err )
292+ })
293+ t .Run ("nested null into nested object" , func (t * testing.T ) {
294+ t .Parallel ()
295+ left := MustParse (`{"a":{"b":"c"}}` )
296+ right := MustParse (`{"a":null}` )
299297 out , _ , err := MergeValues (left , right )
300298 require .NoError (t , err )
301- require .Equal (t , `{"a":null}` , out .String ())
299+ require .Equal (t , `{"a":{"b":"c"}}` , out .String ())
300+ })
301+ t .Run ("nested object into nested null" , func (t * testing.T ) {
302+ t .Parallel ()
303+ left := MustParse (`{"a":null}` )
304+ right := MustParse (`{"a":{"b":"c"}}` )
305+ _ , _ , err := MergeValues (left , right )
306+ require .Error (t , err )
302307 })
303308}
0 commit comments