X-Git-Url: https://yaffs.net/gitweb/?a=blobdiff_plain;f=web%2Fmodules%2Fcontrib%2Fslick%2Ftests%2Fsrc%2FKernel%2FForm%2FSlickSettingsFormTest.php;fp=web%2Fmodules%2Fcontrib%2Fslick%2Ftests%2Fsrc%2FKernel%2FForm%2FSlickSettingsFormTest.php;h=56a6bf047cdf77931f61d6803383c45a6c892beb;hb=eba34333e3c89f208d2f72fa91351ad019a71583;hp=0000000000000000000000000000000000000000;hpb=a2bd1bf0c2c1f1a17d188f4dc0726a45494cefae;p=yaffs-website diff --git a/web/modules/contrib/slick/tests/src/Kernel/Form/SlickSettingsFormTest.php b/web/modules/contrib/slick/tests/src/Kernel/Form/SlickSettingsFormTest.php new file mode 100644 index 000000000..56a6bf047 --- /dev/null +++ b/web/modules/contrib/slick/tests/src/Kernel/Form/SlickSettingsFormTest.php @@ -0,0 +1,88 @@ +installConfig(static::$modules); + + $this->blazyManager = $this->container->get('blazy.manager'); + + $this->slickSettingsForm = new SlickSettingsForm( + $this->blazyManager->getConfigFactory() + ); + } + + /** + * Tests for \Drupal\slick_ui\Form\SlickSettingsForm. + * + * @covers ::getFormId + * @covers ::getEditableConfigNames + * @covers ::buildForm + * @covers ::submitForm + */ + public function testSlickSettingsForm() { + // Emulate a form state of a submitted form. + $form_state = (new FormState())->setValues([ + 'slick_css' => TRUE, + 'module_css' => TRUE, + ]); + + $this->assertInstanceOf(FormInterface::class, $this->slickSettingsForm); + $this->assertTrue($this->blazyManager->getConfigFactory()->get('slick.settings')->get('slick_css')); + + $id = $this->slickSettingsForm->getFormId(); + $this->assertEquals('slick_settings_form', $id); + + $method = new \ReflectionMethod(SlickSettingsForm::class, 'getEditableConfigNames'); + $method->setAccessible(TRUE); + + $name = $method->invoke($this->slickSettingsForm); + $this->assertEquals(['slick.settings'], $name); + + $form = $this->slickSettingsForm->buildForm([], $form_state); + $this->slickSettingsForm->submitForm($form, $form_state); + } + +}