/
TestBaseClass.php
94 lines (76 loc) · 2.41 KB
/
TestBaseClass.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
<?php
namespace ls\tests;
use PHPUnit\Framework\TestCase;
class TestBaseClass extends TestCase
{
/**
* @var TestHelper
*/
protected static $testHelper = null;
/** @var string $tempFolder*/
protected static $tempFolder;
/** @var string $screenshotsFolder */
protected static $screenshotsFolder;
/** @var string $surveysFolder */
protected static $surveysFolder;
/** @var string $dataFolder */
protected static $dataFolder;
/** @var string $viewsFolder */
protected static $viewsFolder;
/** @var \Survey */
protected static $testSurvey;
/** @var integer */
protected static $surveyId;
public static function setUpBeforeClass()
{
parent::setUpBeforeClass();
self::$testHelper = new TestHelper();
self::$dataFolder = __DIR__.'/data';
self::$viewsFolder = self::$dataFolder."/views";
self::$surveysFolder = self::$dataFolder.'/surveys';
self::$tempFolder = __DIR__.'/tmp';
self::$screenshotsFolder = self::$tempFolder.'/screenshots';
self::$testHelper->importAll();
}
/**
* @param string $fileName
* @return void
*/
protected static function importSurvey($fileName)
{
\Yii::app()->session['loginID'] = 1;
$surveyFile = $fileName;
if (!file_exists($surveyFile)) {
echo 'Fatal error: found no survey file';
exit(1);
}
$translateLinksFields = false;
$newSurveyName = null;
$result = \importSurveyFile(
$surveyFile,
$translateLinksFields,
$newSurveyName,
null
);
if ($result) {
self::$testSurvey = \Survey::model()->findByPk($result['newsid']);
self::$surveyId = $result['newsid'];
} else {
echo 'Fatal error: Could not import survey';
exit(2);
}
}
public static function tearDownAfterClass()
{
parent::tearDownAfterClass();
// Make sure we have permission to delete survey.
\Yii::app()->session['loginID'] = 1;
if (self::$testSurvey) {
if (!self::$testSurvey->delete()) {
echo 'Fatal error: Could not clean up survey ' . self::$testSurvey->sid . '; errors: ' . json_encode(self::$testSurvey->errors);
exit(3);
}
self::$testSurvey = null;
}
}
}