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