woocommerceHelper = $this ->getMockBuilder(Helper::class) ->setMethods(['isWooCommerceActive']) ->getMock(); $this->requirementsChecker = new RequirementsChecker($this->woocommerceHelper); } public function testShouldntBlockSegmentIfWooCommerceIsActive() { $this->woocommerceHelper->method('isWooCommerceActive')->willReturn(true); $segment = DynamicSegment::create(); $segment->setFilters([new WooCommerceCategory(1)]); expect($this->requirementsChecker->shouldSkipSegment($segment))->false(); } public function testShouldBlockWooCommerceSegmentIfWooCommerceIsInactive() { $this->woocommerceHelper->method('isWooCommerceActive')->willReturn(false); $segment = DynamicSegment::create(); $segment->setFilters([new WooCommerceCategory(1)]); expect($this->requirementsChecker->shouldSkipSegment($segment))->true(); } public function testShouldntBlockNonWooCommerceSegmentIfWooCommerceIsInactive() { $this->woocommerceHelper->method('isWooCommerceActive')->willReturn(false); $segment = DynamicSegment::create(); $segment->setFilters([new EmailAction(EmailAction::ACTION_OPENED, 2)]); expect($this->requirementsChecker->shouldSkipSegment($segment))->false(); } }