packages/ztd-query-core/tests/Unit/Shadow/Mutation/Upsert/UpsertLiteralTest.php
1<?php
2
3declare(strict_types=1);
4
5namespace Tests\Unit\Shadow\Mutation\Upsert;
6
7use PHPUnit\Framework\Attributes\CoversClass;
8use PHPUnit\Framework\TestCase;
9use stdClass;
10use ZtdQuery\Shadow\Mutation\Upsert\UpsertLiteral;
11
12#[CoversClass(UpsertLiteral::class)]
13final class UpsertLiteralTest extends TestCase
14{
15 public function testValuePreservesObjectIdentity(): void
16 {
17 $value = new stdClass();
18
19 self::assertSame($value, (new UpsertLiteral($value))->value());
20 }
21
22 public function testValuePreservesNestedArrayKeysAndValues(): void
23 {
24 $value = ['json' => [3 => ['active' => true, 'missing' => null]]];
25
26 self::assertSame($value, (new UpsertLiteral($value))->value());
27 }
28}
29