Some checks are pending
Module sub-split / Sub-split (push) Waiting to run
- Base: wintercms/winter branch 1.2 (full framework) - Theme vivespos: Canvas 7 + Bootstrap 5 CDN, custom CSS - Layout: deferred GTM/GA4 tracking, JSON-LD SoftwareApplication - Partials: hero (offline-first), features, modes (offline/nube toggle), screenshots, pricing (3 planes), comparison, FAQ, CTA - Plugin VivesPOS.Site with ContactForm - Dockerfile: PHP 8.2 Apache, port 80, healthcheck - Added winter/wn-pages, blog, sitemap, seo plugins - Active theme set to vivespos
50 lines
1.5 KiB
PHP
50 lines
1.5 KiB
PHP
<?php
|
|
|
|
namespace Backend\Tests\Classes;
|
|
|
|
use System\Tests\Bootstrap\TestCase;
|
|
use Backend\Classes\WidgetManager;
|
|
|
|
class WidgetManagerTest extends TestCase
|
|
{
|
|
public function testListFormWidgets()
|
|
{
|
|
$manager = WidgetManager::instance();
|
|
$widgets = $manager->listFormWidgets();
|
|
|
|
$this->assertArrayHasKey('TestVendor\Test\FormWidgets\Sample', $widgets);
|
|
$this->assertArrayHasKey('Winter\Tester\FormWidgets\Preview', $widgets);
|
|
}
|
|
|
|
public function testIfWidgetsCanBeExtended()
|
|
{
|
|
$manager = WidgetManager::instance();
|
|
$manager->registerReportWidget('Acme\Fake\ReportWidget\HelloWorld', [
|
|
'name' => 'Hello World Test',
|
|
'context' => 'dashboard'
|
|
]);
|
|
$widgets = $manager->listReportWidgets();
|
|
|
|
$this->assertArrayHasKey('Acme\Fake\ReportWidget\HelloWorld', $widgets);
|
|
}
|
|
|
|
public function testIfWidgetsCanBeRemoved()
|
|
{
|
|
$manager = WidgetManager::instance();
|
|
$manager->registerReportWidget('Acme\Fake\ReportWidget\HelloWorld', [
|
|
'name' => 'Hello World Test',
|
|
'context' => 'dashboard'
|
|
]);
|
|
$manager->registerReportWidget('Acme\Fake\ReportWidget\ByeWorld', [
|
|
'name' => 'Hello World Bye',
|
|
'context' => 'dashboard'
|
|
]);
|
|
|
|
$manager->removeReportWidget('Acme\Fake\ReportWidget\ByeWorld');
|
|
|
|
$widgets = $manager->listReportWidgets();
|
|
|
|
$this->assertCount(1, $widgets);
|
|
}
|
|
}
|