Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
100.00% covered (success)
100.00%
6 / 6
100.00% covered (success)
100.00%
4 / 4
CRAP
100.00% covered (success)
100.00%
1 / 1
TimeoutCommand
100.00% covered (success)
100.00%
6 / 6
100.00% covered (success)
100.00%
4 / 4
4
100.00% covered (success)
100.00%
1 / 1
 __construct
100.00% covered (success)
100.00%
3 / 3
100.00% covered (success)
100.00%
1 / 1
1
 getServiceContext
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
 hasStartTimer
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
 isLateSubmissionAllowed
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
1<?php
2
3/**
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU General Public License
6 * as published by the Free Software Foundation; under version 2
7 * of the License (non-upgradable).
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
17 *
18 * Copyright (c) 2021 (original work) Open Assessment Technologies SA;
19 *
20 * @author Ricardo Quintanilha <ricardo.quintanilha@taotesting.com>
21 */
22
23declare(strict_types=1);
24
25namespace oat\taoQtiTest\model\Service;
26
27use oat\taoQtiTest\models\runner\QtiRunnerServiceContext;
28
29final class TimeoutCommand implements
30    ItemContextAwareInterface,
31    NavigationContextAwareInterface,
32    ToolsStateAwareInterface
33{
34    use ItemContextAwareTrait;
35    use NavigationContextAwareTrait;
36    use ToolsStateAwareTrait;
37
38    /** @var QtiRunnerServiceContext */
39    private $serviceContext;
40
41    /** @var bool */
42    private $hasStartTimer;
43
44    /** @var bool */
45    private $lateSubmissionAllowed;
46
47    public function __construct(
48        QtiRunnerServiceContext $serviceContext,
49        bool $hasStartTimer,
50        bool $lateSubmissionAllowed
51    ) {
52        $this->serviceContext = $serviceContext;
53        $this->hasStartTimer = $hasStartTimer;
54        $this->lateSubmissionAllowed = $lateSubmissionAllowed;
55    }
56
57    public function getServiceContext(): QtiRunnerServiceContext
58    {
59        return $this->serviceContext;
60    }
61
62    public function hasStartTimer(): bool
63    {
64        return $this->hasStartTimer;
65    }
66
67    public function isLateSubmissionAllowed(): bool
68    {
69        return $this->lateSubmissionAllowed;
70    }
71}