'#111827']); $html = app(ThemeHtmlBuilder::class)->variables()->toHtml(); $this->assertStringContainsString('--brand-primary: #111827;', $html); } public function test_appearance_does_not_overwrite_theme_identity(): void { $html = app(ThemeHtmlBuilder::class)->variables()->toHtml(); $this->assertStringContainsString('d.dataset.theme=k', $html); $this->assertStringContainsString('d.dataset.appearance=dark?', $html); $this->assertStringNotContainsString("d.dataset.theme=dark?'dark':'light'", $html); } public function test_appearance_variables_use_data_appearance_selector(): void { $html = app(ThemeHtmlBuilder::class)->variables()->toHtml(); if (str_contains($html, 'data-appearance')) { $this->assertStringNotContainsString(':root[data-theme="dark"]', $html); } else { $this->addToAssertionCount(1); } } }