fix: Variablen-Detach meldet verbleibende eingebettete Verweise und lehnt Werte mit Verweis, Markup oder leerem Inhalt ab
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 5.5
parent
e951cc1353
commit
62f8465e60
@@ -12,6 +12,7 @@ use LIT\MCP\Integrations\Divi\BlockTree\Parser;
|
||||
use LIT\MCP\Integrations\Divi\BlockTree\Serializer;
|
||||
use LIT\MCP\Integrations\Divi\Design\NodeRewrite;
|
||||
use LIT\MCP\Integrations\Divi\Design\TreeRewrite;
|
||||
use LIT\MCP\Integrations\Divi\Design\VariableDetachRewrite;
|
||||
use LIT\MCP\Tests\Unit\TestCase;
|
||||
|
||||
final class TreeRewriteTest extends TestCase
|
||||
@@ -134,4 +135,22 @@ final class TreeRewriteTest extends TestCase
|
||||
$result['skipped']
|
||||
);
|
||||
}
|
||||
|
||||
public function testAReportsLeftoversStrategyListsUnchangedBlocksAsSkipped(): void
|
||||
{
|
||||
$embedded = 'Ab ' . VariableDetachRewriteTest::ref('gvid-radius0001') . ' Rundung';
|
||||
$text = static fn (string $value): string => '<!-- wp:divi/text ' . \LIT\MCP\Integrations\Divi\BlockTree\Json::encode(
|
||||
['content' => ['innerContent' => ['desktop' => ['value' => $value]]]]
|
||||
) . ' /-->';
|
||||
$document = self::document(
|
||||
$text($embedded) . $text(VariableDetachRewriteTest::ref('gvid-radius0001')) . '<!-- wp:divi/text /-->'
|
||||
);
|
||||
|
||||
$result = (new TreeRewrite(new VariableDetachRewrite('gvid-radius0001', '8px', 'numbers')))
|
||||
->apply(NodeIndex::build($document));
|
||||
|
||||
self::assertSame(['s0.r0.c0.m1'], array_column($result['changed'], 'id'));
|
||||
self::assertSame(['s0.r0.c0.m0'], array_column($result['skipped'], 'id'), 'embedded only: reported');
|
||||
self::assertSame([], $result['warnings']);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user