shouldHaveType(FrequentlyAskedQuestion::class); } function it_is_a_resource(): void { $this->shouldHaveType(ResourceInterface::class); } function it_implements_frequently_asked_question_interface(): void { $this->shouldHaveType(FrequentlyAskedQuestionInterface::class); } function it_allows_access_via_properties(): void { $this->setCode('delivery_charges_for_orders'); $this->getCode()->shouldReturn('delivery_charges_for_orders'); $this->setPosition(2); $this->getPosition()->shouldReturn(2); $this->setEnabled(true); $this->isEnabled()->shouldReturn(true); } function it_toggles(): void { $this->enable(); $this->isEnabled()->shouldReturn(true); $this->disable(); $this->isEnabled()->shouldReturn(false); } function it_associates_channels(ChannelInterface $firstChannel, ChannelInterface $secondChannel): void { $this->addChannel($firstChannel); $this->hasChannel($firstChannel)->shouldReturn(true); $this->hasChannel($secondChannel)->shouldReturn(false); $this->removeChannel($firstChannel); $this->hasChannel($firstChannel)->shouldReturn(false); } }