1: <?php
2: /*************************************************************************************/
3: /* */
4: /* Thelia */
5: /* */
6: /* Copyright (c) OpenStudio */
7: /* email : info@thelia.net */
8: /* web : http://www.thelia.net */
9: /* */
10: /* This program is free software; you can redistribute it and/or modify */
11: /* it under the terms of the GNU General Public License as published by */
12: /* the Free Software Foundation; either version 3 of the License */
13: /* */
14: /* This program is distributed in the hope that it will be useful, */
15: /* but WITHOUT ANY WARRANTY; without even the implied warranty of */
16: /* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */
17: /* GNU General Public License for more details. */
18: /* */
19: /* You should have received a copy of the GNU General Public License */
20: /* along with this program. If not, see <http://www.gnu.org/licenses/>. */
21: /* */
22: /*************************************************************************************/
23:
24: namespace Thelia\Tpex\Element\TestLoop;
25:
26: use Symfony\Component\HttpFoundation\Request;
27: use Symfony\Component\EventDispatcher\EventDispatcherInterface;
28:
29: abstract class BaseTestLoop
30: {
31: /**
32: * @var \Symfony\Component\HttpFoundation\Request
33: */
34: public $request;
35:
36: /**
37: * @var \Symfony\Component\EventDispatcher\EventDispatcherInterface
38: */
39: public $eventDispatcher;
40:
41: public function __construct(Request $request, EventDispatcherInterface $eventDispatcher)
42: {
43: $this->request = $request;
44: $this->eventDispatcher = $eventDispatcher;
45: }
46:
47: /**
48: *
49: * This method must be implemented by testLoop classes.
50: *
51: * This method must return a boolean
52: *
53: * exemple for testLoop equal :
54: *
55: * public function exec($variable, $value)
56: * {
57: * return $variable == $value;
58: * }
59: *
60: * @param $variable the variable to test
61: * @param $value the value to test
62: * @return boolean
63: */
64: abstract public function exec($variable, $value);
65:
66: }
67: