]> git.immae.eu Git - github/shaarli/Shaarli.git/blob - tests/updater/DummyUpdater.php
namespacing: \Shaarli\Updater
[github/shaarli/Shaarli.git] / tests / updater / DummyUpdater.php
1 <?php
2 namespace Shaarli\Updater;
3
4 use Exception;
5 use ReflectionClass;
6 use ReflectionMethod;
7 use Shaarli\Bookmark\LinkDB;
8 use Shaarli\Config\ConfigManager;
9
10 /**
11 * Class DummyUpdater.
12 * Extends updater to add update method designed for unit tests.
13 */
14 class DummyUpdater extends Updater
15 {
16 /**
17 * Object constructor.
18 *
19 * @param array $doneUpdates Updates which are already done.
20 * @param LinkDB $linkDB LinkDB instance.
21 * @param ConfigManager $conf Configuration Manager instance.
22 * @param boolean $isLoggedIn True if the user is logged in.
23 */
24 public function __construct($doneUpdates, $linkDB, $conf, $isLoggedIn)
25 {
26 parent::__construct($doneUpdates, $linkDB, $conf, $isLoggedIn);
27
28 // Retrieve all update methods.
29 // For unit test, only retrieve final methods,
30 $class = new ReflectionClass($this);
31 $this->methods = $class->getMethods(ReflectionMethod::IS_FINAL);
32 }
33
34 /**
35 * Update method 1.
36 *
37 * @return bool true.
38 */
39 final private function updateMethodDummy1()
40 {
41 return true;
42 }
43
44 /**
45 * Update method 2.
46 *
47 * @return bool true.
48 */
49 final private function updateMethodDummy2()
50 {
51 return true;
52 }
53
54 /**
55 * Update method 3.
56 *
57 * @return bool true.
58 */
59 final private function updateMethodDummy3()
60 {
61 return true;
62 }
63
64 /**
65 * Update method 4, raise an exception.
66 *
67 * @throws Exception error.
68 */
69 final private function updateMethodException()
70 {
71 throw new Exception('whatever');
72 }
73 }