Commit 65326361e26a83c5c712cb69bbfeffa4f2b061c7

Authored by Yarik
1 parent 718ec4d1

test

Showing 116 changed files with 273 additions and 2065 deletions   Show diff stats

Too many changes.

To preserve performance only 100 of 116 files are displayed.

.gitignore
  1 +/tests
1 2 /frontend/web/js/Validation.ts
2 3 /frontend/web/js/typescript.ts
3 4 /node_modules
... ...
codeception.yml
... ... @@ -7,7 +7,7 @@ paths:
7 7 envs: tests/_envs
8 8 settings:
9 9 bootstrap: _bootstrap.php
10   - colors: true
  10 + colors: false
11 11 memory_limit: 1024M
12 12 extensions:
13 13 enabled:
... ...
common/behaviors/MapsBehavior.php 0 → 100644
  1 +<?php
  2 + namespace common\behaviors;
  3 +
  4 + use yii\base\Behavior;
  5 + use yii\base\ErrorException;
  6 + use yii\base\Event;
  7 + use yii\db\ActiveRecord;
  8 + use yii\helpers\Html;
  9 +
  10 + /**
  11 + * Class MapsBehavior
  12 + * @package common\behaviors
  13 + */
  14 + class MapsBehavior extends Behavior
  15 + {
  16 +
  17 + public $location_attributes = [ ];
  18 +
  19 + public $required_attributes = [ ];
  20 +
  21 + /**
  22 + * @inheritdoc
  23 + */
  24 + public function events()
  25 + {
  26 + return [
  27 + ActiveRecord::EVENT_BEFORE_INSERT => 'beforeSave',
  28 + ActiveRecord::EVENT_BEFORE_UPDATE => 'beforeSave',
  29 + ];
  30 + }
  31 +
  32 + /**
  33 + * After saving model get latitude (lat) and longitude (lng) from Google Map Api and insert
  34 + * to the database
  35 + *
  36 + * @param Event $event
  37 + *
  38 + * @return bool
  39 + * @throws ErrorException
  40 + */
  41 + public function beforeSave($event)
  42 + {
  43 + /**
  44 + * @var ActiveRecord $owner
  45 + */
  46 + $owner = $this->owner;
  47 + foreach($this->required_attributes as $required_attribute) {
  48 + if(empty( $owner->$required_attribute )) {
  49 + return true;
  50 + }
  51 + }
  52 + $location = '';
  53 + $first = true;
  54 + foreach($this->location_attributes as $location_attribute) {
  55 + if(!$first) {
  56 + $location .= '+';
  57 + }
  58 + $location .= $owner->$location_attribute;
  59 + $first = false;
  60 + }
  61 + $location = Html::encode($location);
  62 + $ch = curl_init();
  63 + if(!$ch) {
  64 + throw new ErrorException('Curl error');
  65 + }
  66 + curl_setopt($ch, CURLOPT_URL, "https://maps.googleapis.com/maps/api/geocode/json?address=" . $location);
  67 + curl_setopt($ch, CURLOPT_HEADER, 0);
  68 + curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  69 + curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  70 + $result = json_decode(curl_exec($ch));
  71 + curl_close($ch);
  72 + if(!empty($result->results)) {
  73 + $owner->lat = $result->results[0]->geometry->location->lat;
  74 + $owner->lng = $result->results[0]->geometry->location->lng;
  75 + }
  76 + return true;
  77 + }
  78 + }
0 79 \ No newline at end of file
... ...
common/models/Project.php
... ... @@ -2,6 +2,7 @@
2 2  
3 3 namespace common\models;
4 4  
  5 + use common\behaviors\MapsBehavior;
5 6 use common\modules\comment\models\CommentProject;
6 7 use common\modules\fileloader\behaviors\FileloaderBehavior;
7 8 use Yii;
... ... @@ -76,6 +77,17 @@
76 77 'fileloader' => [
77 78 'class' => FileloaderBehavior::className(),
78 79 ],
  80 + 'maps' => [
  81 + 'class' => MapsBehavior::className(),
  82 + 'location_attributes' => [
  83 + 'city',
  84 + 'street',
  85 + 'house',
  86 + ],
  87 + 'required_attributes' => [
  88 + 'city',
  89 + ],
  90 + ],
79 91 ];
80 92 }
81 93  
... ... @@ -160,7 +172,11 @@
160 172 'boolean',
161 173 ],
162 174 [
163   - [ 'hidden', 'budget', 'total_budget' ],
  175 + [
  176 + 'hidden',
  177 + 'budget',
  178 + 'total_budget',
  179 + ],
164 180 'default',
165 181 'value' => 0,
166 182 ],
... ...
console/migrations/m160504_145135_add_coordinates_columns_to_project_and_portfolio.php 0 → 100644
  1 +<?php
  2 +
  3 +use yii\db\Migration;
  4 +
  5 +/**
  6 + * Handles adding coordinates_columns to table `project_and_portfolio`.
  7 + */
  8 +class m160504_145135_add_coordinates_columns_to_project_and_portfolio extends Migration
  9 +{
  10 + /**
  11 + * @inheritdoc
  12 + */
  13 + public function up()
  14 + {
  15 + $this->addColumn('{{%project}}', 'lat', $this->string());
  16 + $this->addColumn('{{%project}}', 'lng', $this->string());
  17 + $this->addColumn('{{%portfolio}}', 'lat', $this->string());
  18 + $this->addColumn('{{%portfolio}}', 'lng', $this->string());
  19 + }
  20 +
  21 + /**
  22 + * @inheritdoc
  23 + */
  24 + public function down()
  25 + {
  26 + $this->dropColumn('{{%project}}', 'lat');
  27 + $this->dropColumn('{{%project}}', 'lng');
  28 + $this->dropColumn('{{%portfolio}}', 'lat');
  29 + $this->dropColumn('{{%portfolio}}', 'lng');
  30 + }
  31 +}
... ...
frontend/views/performer/portfolio-view.php
... ... @@ -120,7 +120,7 @@
120 120 <?php
121 121 foreach($portfolio->ShowGallery($portfolio->gallery->photo) as $one_photo) {
122 122 ?>
123   - <li><img src="<?= $one_photo ?>" alt=""/></li>
  123 + <li><img src="<?= $portfolio->minImg($one_photo, 210, 150) ?>" alt=""/></li>
124 124 <?php
125 125 }
126 126 ?>
... ...
frontend/views/site/index.php
... ... @@ -10,6 +10,26 @@
10 10 $this->title = 'My Yii Application';
11 11 ?>
12 12 <div class="section-box-1">
  13 + <?php
  14 + /* Yarik map fun
  15 + ?>
  16 + <div id="map_test" style="width:100%;height:500px;">
  17 +
  18 + </div>
  19 + <script>
  20 + $(function() {
  21 + initMap();
  22 + });
  23 + var map;
  24 + function initMap() {
  25 + map = new google.maps.Map(document.getElementById('map_test'), {
  26 + center: {lat: -34.397, lng: 150.644},
  27 + zoom: 8
  28 + })
  29 + }
  30 + </script>
  31 + */
  32 + ?>
13 33 <div class="box-wr">
14 34 <div class="box-all">
15 35 <div class="section-box-base">
... ... @@ -97,121 +117,121 @@
97 117 <div class="shadow-map"></div>
98 118 <div id="map_cloud" style="display: none;">
99 119 <script type="text/javascript">
100   - function initialize()
101   - {
102   - var start_position = new google.maps.LatLng('56', '30');
103   - var settings = {
104   - zoom : 7, scrollwheel : false, center : start_position,
105   - mapTypeControl : false,
106   - mapTypeControlOptions : {style : google.maps.MapTypeControlStyle.DROPDOWN_MENU},
107   - navigationControl : false,
108   - navigationControlOptions : {style : google.maps.NavigationControlStyle.SMALL},
109   - scaleControl : false, streetViewControl : false, rotateControl : false,
110   - zoomControl : true, mapTypeId : google.maps.MapTypeId.ROADMAP
111   - };
112   - var map = new google.maps.Map(document.getElementById("map_canvas"), settings);
113   -
114   - var image1 = new google.maps.MarkerImage(
115   - '/images/markers/marker-we-1.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
116   - );
117   - var image2 = new google.maps.MarkerImage(
118   - '/images/markers/marker-we-2.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
119   - );
120   - var image3 = new google.maps.MarkerImage(
121   - '/images/markers/marker-we-3.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
122   - );
123   - var image4 = new google.maps.MarkerImage(
124   - '/images/markers/marker-we-4.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
125   - );
126   - var image5 = new google.maps.MarkerImage(
127   - '/images/markers/marker-we-5.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
128   - );
129   - var image6 = new google.maps.MarkerImage(
130   - '/images/markers/marker-we-6.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
131   - );
132   - var image7 = new google.maps.MarkerImage(
133   - '/images/markers/marker-we-7.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
134   - );
135   - var image8 = new google.maps.MarkerImage(
136   - '/images/markers/marker-we-8.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
137   - );
138   - var image9 = new google.maps.MarkerImage(
139   - '/images/markers/marker-we-9.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
140   - );
141   - var image10 = new google.maps.MarkerImage(
142   - '/images/markers/marker-empl-1.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
143   - );
144   - var image11 = new google.maps.MarkerImage(
145   - '/images/markers/marker-empl-2.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
146   - );
147   - var image12 = new google.maps.MarkerImage(
148   - '/images/markers/marker-empl-3.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
149   - );
150   - var image13 = new google.maps.MarkerImage(
151   - '/images/markers/marker-empl-4.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
152   - );
153   - var image14 = new google.maps.MarkerImage(
154   - '/images/markers/marker-empl-5.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
155   - );
156   - var image15 = new google.maps.MarkerImage(
157   - '/images/markers/marker-empl-6.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
158   - );
159   - var image16 = new google.maps.MarkerImage(
160   - '/images/markers/marker-empl-7.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
161   - );
162   - var image17 = new google.maps.MarkerImage(
163   - '/images/markers/marker-empl-8.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
164   - );
165   - var image18 = new google.maps.MarkerImage(
166   - '/images/markers/marker-empl-9.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
167   - );
168   -
169   - var markers = [];
170   -
171   - var marker = new google.maps.Marker(
172   - {
173   - position : new google.maps.LatLng('56', '35.3'), map : map,
174   - title : 'Marker Title2', icon : image1
175   - }
176   - );
177   - markers.push(marker);
178   -
179   - var marker = new google.maps.Marker(
180   - {
181   - position : new google.maps.LatLng('56', '36'), map : map,
182   - title : 'Marker Title2', icon : image2
183   - }
184   - );
185   - markers.push(marker);
186   -
187   - var marker = new google.maps.Marker(
188   - {
189   - position : new google.maps.LatLng('56', '34.5'), map : map,
190   - title : 'Marker Title3', icon : image18
191   - }
192   - );
193   - markers.push(marker);
194   -
195   - var marker = new google.maps.Marker(
196   - {
197   - position : new google.maps.LatLng('56', '35'), map : map,
198   - title : 'Marker Title4', icon : image13
199   - }
200   - );
201   - markers.push(marker);
202   -
203   - var clusterStyles = [
204   - {
205   - url : '/images/markers/clasters.png', height : 36, width : 36
206   - }
207   -
208   - ];
209   - markerClusterer = new MarkerClusterer(
210   - map, markers, {
211   - maxZoom : 10, gridSize : 100, styles : clusterStyles
212   - }
213   - );
214   - }
  120 + // function initialize()
  121 + // {
  122 + // var start_position = new google.maps.LatLng('56', '30');
  123 + // var settings = {
  124 + // zoom : 7, scrollwheel : false, center : start_position,
  125 + // mapTypeControl : false,
  126 + // mapTypeControlOptions : {style : google.maps.MapTypeControlStyle.DROPDOWN_MENU},
  127 + // navigationControl : false,
  128 + // navigationControlOptions : {style : google.maps.NavigationControlStyle.SMALL},
  129 + // scaleControl : false, streetViewControl : false, rotateControl : false,
  130 + // zoomControl : true, mapTypeId : google.maps.MapTypeId.ROADMAP
  131 + // };
  132 + // var map = new google.maps.Map(document.getElementById("map_canvas"), settings);
  133 + //
  134 + // var image1 = new google.maps.MarkerImage(
  135 + // '/images/markers/marker-we-1.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
  136 + // );
  137 + // var image2 = new google.maps.MarkerImage(
  138 + // '/images/markers/marker-we-2.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
  139 + // );
  140 + // var image3 = new google.maps.MarkerImage(
  141 + // '/images/markers/marker-we-3.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
  142 + // );
  143 + // var image4 = new google.maps.MarkerImage(
  144 + // '/images/markers/marker-we-4.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
  145 + // );
  146 + // var image5 = new google.maps.MarkerImage(
  147 + // '/images/markers/marker-we-5.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
  148 + // );
  149 + // var image6 = new google.maps.MarkerImage(
  150 + // '/images/markers/marker-we-6.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
  151 + // );
  152 + // var image7 = new google.maps.MarkerImage(
  153 + // '/images/markers/marker-we-7.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
  154 + // );
  155 + // var image8 = new google.maps.MarkerImage(
  156 + // '/images/markers/marker-we-8.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
  157 + // );
  158 + // var image9 = new google.maps.MarkerImage(
  159 + // '/images/markers/marker-we-9.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
  160 + // );
  161 + // var image10 = new google.maps.MarkerImage(
  162 + // '/images/markers/marker-empl-1.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
  163 + // );
  164 + // var image11 = new google.maps.MarkerImage(
  165 + // '/images/markers/marker-empl-2.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
  166 + // );
  167 + // var image12 = new google.maps.MarkerImage(
  168 + // '/images/markers/marker-empl-3.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
  169 + // );
  170 + // var image13 = new google.maps.MarkerImage(
  171 + // '/images/markers/marker-empl-4.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
  172 + // );
  173 + // var image14 = new google.maps.MarkerImage(
  174 + // '/images/markers/marker-empl-5.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
  175 + // );
  176 + // var image15 = new google.maps.MarkerImage(
  177 + // '/images/markers/marker-empl-6.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
  178 + // );
  179 + // var image16 = new google.maps.MarkerImage(
  180 + // '/images/markers/marker-empl-7.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
  181 + // );
  182 + // var image17 = new google.maps.MarkerImage(
  183 + // '/images/markers/marker-empl-8.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
  184 + // );
  185 + // var image18 = new google.maps.MarkerImage(
  186 + // '/images/markers/marker-empl-9.png', new google.maps.Size(21, 32), new google.maps.Point(0, 0), new google.maps.Point(16, 35)
  187 + // );
  188 + //
  189 + // var markers = [];
  190 + //
  191 + // var marker = new google.maps.Marker(
  192 + // {
  193 + // position : new google.maps.LatLng('56', '35.3'), map : map,
  194 + // title : 'Marker Title2', icon : image1
  195 + // }
  196 + // );
  197 + // markers.push(marker);
  198 + //
  199 + // var marker = new google.maps.Marker(
  200 + // {
  201 + // position : new google.maps.LatLng('56', '36'), map : map,
  202 + // title : 'Marker Title2', icon : image2
  203 + // }
  204 + // );
  205 + // markers.push(marker);
  206 + //
  207 + // var marker = new google.maps.Marker(
  208 + // {
  209 + // position : new google.maps.LatLng('56', '34.5'), map : map,
  210 + // title : 'Marker Title3', icon : image18
  211 + // }
  212 + // );
  213 + // markers.push(marker);
  214 + //
  215 + // var marker = new google.maps.Marker(
  216 + // {
  217 + // position : new google.maps.LatLng('56', '35'), map : map,
  218 + // title : 'Marker Title4', icon : image13
  219 + // }
  220 + // );
  221 + // markers.push(marker);
  222 + //
  223 + // var clusterStyles = [
  224 + // {
  225 + // url : '/images/markers/clasters.png', height : 36, width : 36
  226 + // }
  227 + //
  228 + // ];
  229 + // markerClusterer = new MarkerClusterer(
  230 + // map, markers, {
  231 + // maxZoom : 10, gridSize : 100, styles : clusterStyles
  232 + // }
  233 + // );
  234 + // }
215 235 </script>
216 236 </div>
217 237 <div id="map_canvas" style="width: 100%; height:100%;"></div>
... ...
tests/README.md deleted
1   -This directory contains various tests for the advanced applications.
2   -
3   -Tests in `codeception` directory are developed with [Codeception PHP Testing Framework](http://codeception.com/).
4   -
5   -After creating and setting up the advanced application, follow these steps to prepare for the tests:
6   -
7   -1. Install Codeception if it's not yet installed:
8   -
9   - ```
10   - composer global require "codeception/codeception=2.0.*" "codeception/specify=*" "codeception/verify=*"
11   - ```
12   -
13   - If you've never used Composer for global packages run `composer global status`. It should output:
14   -
15   - ```
16   - Changed current directory to <directory>
17   - ```
18   -
19   - Then add `<directory>/vendor/bin` to you `PATH` environment variable. Now you're able to use `codecept` from command
20   - line globally.
21   -
22   -2. Install faker extension by running the following from template root directory where `composer.json` is:
23   -
24   - ```
25   - composer require --dev yiisoft/yii2-faker:*
26   - ```
27   -
28   -3. Create `yii2_advanced_tests` database then update it by applying migrations:
29   -
30   - ```
31   - codeception/bin/yii migrate
32   - ```
33   -
34   -4. In order to be able to run acceptance tests you need to start a webserver. The simplest way is to use PHP built in
35   - webserver. In the root directory where `common`, `frontend` etc. are execute the following:
36   -
37   - ```
38   - php -S localhost:8080
39   - ```
40   -
41   -5. Now you can run the tests with the following commands, assuming you are in the `tests/codeception` directory:
42   -
43   - ```
44   - # frontend tests
45   - cd frontend
46   - codecept build
47   - codecept run
48   -
49   - # backend tests
50   -
51   - cd backend
52   - codecept build
53   - codecept run
54   -
55   - # etc.
56   - ```
57   -
58   - If you already have run `codecept build` for each application, you can skip that step and run all tests by a single `codecept run`.
tests/_bootstrap.php
1 1 <?php
2   -
3   -defined('YII_DEBUG') or define('YII_DEBUG', true);
4   -defined('YII_ENV') or define('YII_ENV', 'test');
5   -
6   -require(__DIR__ . '/../vendor/autoload.php');
7   -require(__DIR__ . '/../vendor/yiisoft/yii2/Yii.php');
8   -require(__DIR__ . '/../common/config/bootstrap.php');
9   -
10   -$config = yii\helpers\ArrayHelper::merge(
11   - require(__DIR__ . '/../common/config/main.php'),
12   - require(__DIR__ . '/../common/config/main-local.php'),
13   - require(__DIR__ . '/config/main.php')
14   -
15   -);
16   -
17   -Yii::setAlias('@tests', dirname(__DIR__));
18   -
19   -$application = new yii\web\Application($config);
20 2 \ No newline at end of file
  3 +// This is global bootstrap for autoloading
... ...
tests/_data/ViewIllustrator_2001.jpg deleted

477 KB

tests/_support/AcceptanceTester.php
... ... @@ -12,7 +12,7 @@
12 12 * @method void am($role)
13 13 * @method void lookForwardTo($achieveValue)
14 14 * @method void comment($description)
15   - * @method \Codeception\Lib\Friend haveFriend($name, $actorClass = null)
  15 + * @method \Codeception\Lib\Friend haveFriend($name, $actorClass = NULL)
16 16 *
17 17 * @SuppressWarnings(PHPMD)
18 18 */
... ...
tests/_support/FunctionalTester.php
... ... @@ -12,7 +12,7 @@
12 12 * @method void am($role)
13 13 * @method void lookForwardTo($achieveValue)
14 14 * @method void comment($description)
15   - * @method \Codeception\Lib\Friend haveFriend($name, $actorClass = null)
  15 + * @method \Codeception\Lib\Friend haveFriend($name, $actorClass = NULL)
16 16 *
17 17 * @SuppressWarnings(PHPMD)
18 18 */
... ...
tests/_support/Helper/Acceptance.php
1 1 <?php
2 2 namespace Helper;
  3 +
3 4 // here you can define custom actions
4 5 // all public methods declared in helper class will be available in $I
5 6  
... ...
tests/_support/Helper/Functional.php
1 1 <?php
2 2 namespace Helper;
  3 +
3 4 // here you can define custom actions
4 5 // all public methods declared in helper class will be available in $I
5 6  
... ...
tests/_support/Helper/Unit.php
1 1 <?php
2 2 namespace Helper;
  3 +
3 4 // here you can define custom actions
4 5 // all public methods declared in helper class will be available in $I
5 6  
... ...
tests/_support/Step/Acceptance/CRMOperatorSteps.php deleted
1   -<?php
2   -namespace Step\Acceptance;
3   -
4   -class CRMOperatorSteps extends \AcceptanceTester
5   -{
6   - public function amInAddCustomerUi(){
7   - $I = $this;
8   - $I->amOnPage('site/signup');
9   - }
10   -
11   - public function imagineCustomer(){
12   - $fake = \Faker\Factory::create();
13   - return [
14   - 'SignupForm[username]' => $fake->name,
15   - 'SignupForm[email]' => $fake->email,
16   - 'SignupForm[password]' => $fake->password(19),
17   - ];
18   -
19   - }
20   -
21   - public function fillCustomerDataForm($fieldData){
22   - $I = $this;
23   - foreach ($fieldData as $key=>$value) {
24   - $I->fillField($key,$value);
25   - }
26   -
27   - }
28   -
29   - public function submitCustomerDataForm(){
30   - $I = $this;
31   - $I->click('signup-button');
32   - }
33   -
34   -
35   -
36   -}
37 0 \ No newline at end of file
tests/_support/UnitTester.php
... ... @@ -12,7 +12,7 @@
12 12 * @method void am($role)
13 13 * @method void lookForwardTo($achieveValue)
14 14 * @method void comment($description)
15   - * @method \Codeception\Lib\Friend haveFriend($name, $actorClass = null)
  15 + * @method \Codeception\Lib\Friend haveFriend($name, $actorClass = NULL)
16 16 *
17 17 * @SuppressWarnings(PHPMD)
18 18 */
... ...
tests/_support/_generated/AcceptanceTesterActions.php
1   -<?php //[STAMP] 584deab9f7b9cb890a39728f7857171e
  1 +<?php //[STAMP] 95b0ebb913a31e9b68fa174df4a53553
2 2 namespace _generated;
3 3  
4 4 // This class was automatically generated by build task
... ...
tests/acceptance.suite.yml
... ... @@ -8,6 +8,5 @@ class_name: AcceptanceTester
8 8 modules:
9 9 enabled:
10 10 - PhpBrowser:
11   - url: http://mfp.dev/
12   -# browser: firefox
  11 + url: http://localhost/myapp
13 12 - \Helper\Acceptance
14 13 \ No newline at end of file
... ...
tests/acceptance/FirstTestCept.php deleted
1   -<?php
2   -$I = new AcceptanceTester($scenario);
3   -$I->wantTo('perform actions and see result');
4   -$I->amOnPage('/');
5   -$I->canSee('Проектантам');
6   -$I->click('Вход');
7   -$I->waitForElement('#modal_form_login', 15);
8   -$I->canSee('Авторизация');
9   -$I->fillField('#loginform-username','admin');
10   -$I->fillField('#loginform-password','112233');
11   -$I->click('.login-button');
12   -$I->wait(1);
13   -$I->canSee('admin@admin.com');
14   -$I->wait(1);
15   -$I->amOnPage('/accounts/portfolio');
16   -$I->wait(1);
17   -$I->click('Добавить');
18   -$I->wait(1);
19   -$I->attachFile('input[type="file"]', 'ViewIllustrator_2001.jpg');
20   -$I->fillField('#portfolio-name','');
21   -$I->click('Добавить', '.input-blocks-wrapper');
22   -$I->see('Необходимо заполнить «name».','div');
tests/codeception.yml deleted
1   -include:
2   - - codeception/common
3   - - codeception/console
4   - - codeception/backend
5   - - codeception/frontend
6   -
7   -paths:
8   - log: codeception/_output
9   -
10   -settings:
11   - colors: true
tests/codeception/_output/.gitignore deleted
1   -*
2   -!.gitignore
tests/codeception/backend/.gitignore deleted
1   -# these files are auto generated by codeception build
2   -/unit/UnitTester.php
3   -/functional/FunctionalTester.php
4   -/acceptance/AcceptanceTester.php
tests/codeception/backend/_bootstrap.php deleted
1   -<?php
2   -defined('YII_DEBUG') or define('YII_DEBUG', true);
3   -defined('YII_ENV') or define('YII_ENV', 'test');
4   -
5   -defined('YII_APP_BASE_PATH') or define('YII_APP_BASE_PATH', dirname(dirname(dirname(__DIR__))));
6   -
7   -defined('YII_BACKEND_TEST_ENTRY_URL') or define('YII_BACKEND_TEST_ENTRY_URL', parse_url(\Codeception\Configuration::config()['config']['test_entry_url'], PHP_URL_PATH));
8   -defined('YII_TEST_BACKEND_ENTRY_FILE') or define('YII_TEST_BACKEND_ENTRY_FILE', YII_APP_BASE_PATH . '/backend/web/index-test.php');
9   -
10   -require_once(YII_APP_BASE_PATH . '/vendor/autoload.php');
11   -require_once(YII_APP_BASE_PATH . '/vendor/yiisoft/yii2/Yii.php');
12   -require_once(YII_APP_BASE_PATH . '/common/config/bootstrap.php');
13   -require_once(YII_APP_BASE_PATH . '/backend/config/bootstrap.php');
14   -
15   -// set correct script paths
16   -
17   -// the entry script file path for functional and acceptance tests
18   -$_SERVER['SCRIPT_FILENAME'] = YII_TEST_BACKEND_ENTRY_FILE;
19   -$_SERVER['SCRIPT_NAME'] = YII_BACKEND_TEST_ENTRY_URL;
20   -$_SERVER['SERVER_NAME'] = parse_url(\Codeception\Configuration::config()['config']['test_entry_url'], PHP_URL_HOST);
21   -$_SERVER['SERVER_PORT'] = parse_url(\Codeception\Configuration::config()['config']['test_entry_url'], PHP_URL_PORT) ?: '80';
22   -
23   -Yii::setAlias('@tests', dirname(dirname(__DIR__)));
tests/codeception/backend/_output/.gitignore deleted
1   -*
2   -!.gitignore
tests/codeception/backend/acceptance.suite.yml deleted
1   -# Codeception Test Suite Configuration
2   -
3   -# suite for acceptance tests.
4   -# perform tests in browser using the Selenium-like tools.
5   -# powered by Mink (http://mink.behat.org).
6   -# (tip: that's what your customer will see).
7   -# (tip: test your ajax and javascript by one of Mink drivers).
8   -
9   -# RUN `build` COMMAND AFTER ADDING/REMOVING MODULES.
10   -
11   -class_name: AcceptanceTester
12   -modules:
13   - enabled:
14   - - PhpBrowser
15   - - tests\codeception\common\_support\FixtureHelper
16   -# you can use WebDriver instead of PhpBrowser to test javascript and ajax.
17   -# This will require you to install selenium. See http://codeception.com/docs/04-AcceptanceTests#Selenium
18   -# "restart" option is used by the WebDriver to start each time per test-file new session and cookies,
19   -# it is useful if you want to login in your app in each test.
20   -# - WebDriver
21   - config:
22   - PhpBrowser:
23   -# PLEASE ADJUST IT TO THE ACTUAL ENTRY POINT WITHOUT PATH INFO
24   - url: http://localhost:8080
25   -# WebDriver:
26   -# url: http://localhost:8080
27   -# browser: firefox
28   -# restart: true
tests/codeception/backend/acceptance/LoginCept.php deleted
1   -<?php
2   -
3   -use tests\codeception\backend\AcceptanceTester;
4   -use tests\codeception\common\_pages\LoginPage;
5   -
6   -/* @var $scenario Codeception\Scenario */
7   -
8   -$I = new AcceptanceTester($scenario);
9   -$I->wantTo('ensure login page works');
10   -
11   -$loginPage = LoginPage::openBy($I);
12   -
13   -$I->amGoingTo('submit login form with no data');
14   -$loginPage->login('', '');
15   -if (method_exists($I, 'wait')) {
16   - $I->wait(3); // only for selenium
17   -}
18   -$I->expectTo('see validations errors');
19   -$I->see('Username cannot be blank.', '.help-block');
20   -$I->see('Password cannot be blank.', '.help-block');
21   -
22   -$I->amGoingTo('try to login with wrong credentials');
23   -$I->expectTo('see validations errors');
24   -$loginPage->login('admin', 'wrong');
25   -if (method_exists($I, 'wait')) {
26   - $I->wait(3); // only for selenium
27   -}
28   -$I->expectTo('see validations errors');
29   -$I->see('Incorrect username or password.', '.help-block');
30   -
31   -$I->amGoingTo('try to login with correct credentials');
32   -$loginPage->login('erau', 'password_0');
33   -if (method_exists($I, 'wait')) {
34   - $I->wait(3); // only for selenium
35   -}
36   -$I->expectTo('see that user is logged');
37   -$I->seeLink('Logout (erau)');
38   -$I->dontSeeLink('Login');
39   -$I->dontSeeLink('Signup');
40   -/** Uncomment if using WebDriver
41   - * $I->click('Logout (erau)');
42   - * $I->dontSeeLink('Logout (erau)');
43   - * $I->seeLink('Login');
44   - */
tests/codeception/backend/acceptance/_bootstrap.php deleted
1   -<?php
2   -new yii\web\Application(require(dirname(dirname(__DIR__)) . '/config/backend/acceptance.php'));
tests/codeception/backend/codeception.yml deleted
1   -namespace: tests\codeception\backend
2   -actor: Tester
3   -paths:
4   - tests: .
5   - log: _output
6   - data: _data
7   - helpers: _support
8   -settings:
9   - bootstrap: _bootstrap.php
10   - suite_class: \PHPUnit_Framework_TestSuite
11   - colors: true
12   - memory_limit: 1024M
13   - log: true
14   -config:
15   - # the entry script URL (with host info) for functional and acceptance tests
16   - # PLEASE ADJUST IT TO THE ACTUAL ENTRY SCRIPT URL
17   - test_entry_url: http://localhost:8080/backend/web/index-test.php
tests/codeception/backend/functional.suite.yml deleted
1   -# Codeception Test Suite Configuration
2   -
3   -# suite for functional (integration) tests.
4   -# emulate web requests and make application process them.
5   -# (tip: better to use with frameworks).
6   -
7   -# RUN `build` COMMAND AFTER ADDING/REMOVING MODULES.
8   -#basic/web/index.php
9   -class_name: FunctionalTester
10   -modules:
11   - enabled:
12   - - Filesystem
13   - - Yii2
14   - - tests\codeception\common\_support\FixtureHelper
15   - config:
16   - Yii2:
17   - configFile: '../config/backend/functional.php'
tests/codeception/backend/functional/LoginCept.php deleted
1   -<?php
2   -
3   -use tests\codeception\backend\FunctionalTester;
4   -use tests\codeception\common\_pages\LoginPage;
5   -
6   -/* @var $scenario Codeception\Scenario */
7   -
8   -$I = new FunctionalTester($scenario);
9   -$I->wantTo('ensure login page works');
10   -
11   -$loginPage = LoginPage::openBy($I);
12   -
13   -$I->amGoingTo('submit login form with no data');
14   -$loginPage->login('', '');
15   -$I->expectTo('see validations errors');
16   -$I->see('Username cannot be blank.', '.help-block');
17   -$I->see('Password cannot be blank.', '.help-block');
18   -
19   -$I->amGoingTo('try to login with wrong credentials');
20   -$I->expectTo('see validations errors');
21   -$loginPage->login('admin', 'wrong');
22   -$I->expectTo('see validations errors');
23   -$I->see('Incorrect username or password.', '.help-block');
24   -
25   -$I->amGoingTo('try to login with correct credentials');
26   -$loginPage->login('erau', 'password_0');
27   -$I->expectTo('see that user is logged');
28   -$I->seeLink('Logout (erau)');
29   -$I->dontSeeLink('Login');
30   -$I->dontSeeLink('Signup');
tests/codeception/backend/functional/_bootstrap.php deleted
1   -<?php
2   -new yii\web\Application(require(dirname(dirname(__DIR__)) . '/config/backend/functional.php'));
tests/codeception/backend/unit.suite.yml deleted
1   -# Codeception Test Suite Configuration
2   -
3   -# suite for unit (internal) tests.
4   -# RUN `build` COMMAND AFTER ADDING/REMOVING MODULES.
5   -
6   -class_name: UnitTester
tests/codeception/backend/unit/DbTestCase.php deleted
1   -<?php
2   -
3   -namespace tests\codeception\backend\unit;
4   -
5   -class DbTestCase extends \yii\codeception\DbTestCase
6   -{
7   - public $appConfig = '@tests/codeception/config/backend/unit.php';
8   -}
tests/codeception/backend/unit/TestCase.php deleted
1   -<?php
2   -
3   -namespace tests\codeception\backend\unit;
4   -
5   -class TestCase extends \yii\codeception\TestCase
6   -{
7   - public $appConfig = '@tests/codeception/config/backend/unit.php';
8   -}
tests/codeception/backend/unit/_bootstrap.php deleted
1   -<?php
2   -// Here you can initialize variables that will for your tests
tests/codeception/backend/unit/fixtures/data/.gitkeep deleted
tests/codeception/bin/_bootstrap.php deleted
1   -<?php
2   -/**
3   - * Yii console bootstrap file.
4   - *
5   - * @link http://www.yiiframework.com/
6   - * @copyright Copyright (c) 2008 Yii Software LLC
7   - * @license http://www.yiiframework.com/license/
8   - */
9   -
10   -defined('YII_DEBUG') or define('YII_DEBUG', true);
11   -defined('YII_ENV') or define('YII_ENV', 'test');
12   -
13   -defined('YII_APP_BASE_PATH') or define('YII_APP_BASE_PATH', dirname(dirname(dirname(__DIR__))));
14   -
15   -require_once(YII_APP_BASE_PATH . '/vendor/autoload.php');
16   -require_once(YII_APP_BASE_PATH . '/vendor/yiisoft/yii2/Yii.php');
17   -require_once(YII_APP_BASE_PATH . '/common/config/bootstrap.php');
18   -
19   -Yii::setAlias('@tests', dirname(dirname(__DIR__)));
tests/codeception/bin/yii deleted
1   -#!/usr/bin/env php
2   -<?php
3   -/**
4   - * Yii console bootstrap file.
5   - *
6   - * @link http://www.yiiframework.com/
7   - * @copyright Copyright (c) 2008 Yii Software LLC
8   - * @license http://www.yiiframework.com/license/
9   - */
10   -
11   -require_once __DIR__ . '/_bootstrap.php';
12   -
13   -$config = yii\helpers\ArrayHelper::merge(
14   - require(YII_APP_BASE_PATH . '/common/config/main.php'),
15   - require(YII_APP_BASE_PATH . '/common/config/main-local.php'),
16   - require(YII_APP_BASE_PATH . '/console/config/main.php'),
17   - require(YII_APP_BASE_PATH . '/console/config/main-local.php'),
18   - require(dirname(__DIR__) . '/config/config.php')
19   -);
20   -
21   -$application = new yii\console\Application($config);
22   -$exitCode = $application->run();
23   -exit($exitCode);
tests/codeception/bin/yii.bat deleted
1   -@echo off
2   -
3   -rem -------------------------------------------------------------
4   -rem Yii command line bootstrap script for Windows.
5   -rem
6   -rem @author Qiang Xue <qiang.xue@gmail.com>
7   -rem @link http://www.yiiframework.com/
8   -rem @copyright Copyright (c) 2008 Yii Software LLC
9   -rem @license http://www.yiiframework.com/license/
10   -rem -------------------------------------------------------------
11   -
12   -@setlocal
13   -
14   -set YII_PATH=%~dp0
15   -
16   -if "%PHP_COMMAND%" == "" set PHP_COMMAND=php.exe
17   -
18   -"%PHP_COMMAND%" "%YII_PATH%yii" %*
19   -
20   -@endlocal
tests/codeception/common/.gitignore deleted
1   -# these files are auto generated by codeception build
2   -/unit/UnitTester.php
3   -/functional/FunctionalTester.php
4   -/acceptance/AcceptanceTester.php
tests/codeception/common/_bootstrap.php deleted
1   -<?php
2   -defined('YII_DEBUG') or define('YII_DEBUG', true);
3   -defined('YII_ENV') or define('YII_ENV', 'test');
4   -
5   -defined('YII_APP_BASE_PATH') or define('YII_APP_BASE_PATH', dirname(dirname(dirname(__DIR__))));
6   -
7   -require_once(YII_APP_BASE_PATH . '/vendor/autoload.php');
8   -require_once(YII_APP_BASE_PATH . '/vendor/yiisoft/yii2/Yii.php');
9   -require_once(YII_APP_BASE_PATH . '/common/config/bootstrap.php');
10   -
11   -// set correct script paths
12   -$_SERVER['SERVER_NAME'] = 'localhost';
13   -$_SERVER['SERVER_PORT'] = '80';
14   -
15   -Yii::setAlias('@tests', dirname(dirname(__DIR__)));
tests/codeception/common/_output/.gitignore deleted
1   -*
2   -!.gitignore
tests/codeception/common/_pages/LoginPage.php deleted
1   -<?php
2   -
3   -namespace tests\codeception\common\_pages;
4   -
5   -use yii\codeception\BasePage;
6   -
7   -/**
8   - * Represents loging page
9   - * @property \codeception_frontend\AcceptanceTester|\codeception_frontend\FunctionalTester|\codeception_backend\AcceptanceTester|\codeception_backend\FunctionalTester $actor
10   - */
11   -class LoginPage extends BasePage
12   -{
13   - public $route = 'site/login';
14   -
15   - /**
16   - * @param string $username
17   - * @param string $password
18   - */
19   - public function login($username, $password)
20   - {
21   - $this->actor->fillField('input[name="LoginForm[username]"]', $username);
22   - $this->actor->fillField('input[name="LoginForm[password]"]', $password);
23   - $this->actor->click('login-button');
24   - }
25   -}
tests/codeception/common/_support/FixtureHelper.php deleted
1   -<?php
2   -
3   -namespace tests\codeception\common\_support;
4   -
5   -use tests\codeception\common\fixtures\UserFixture;
6   -use Codeception\Module;
7   -use yii\test\FixtureTrait;
8   -use yii\test\InitDbFixture;
9   -
10   -/**
11   - * This helper is used to populate the database with needed fixtures before any tests are run.
12   - * In this example, the database is populated with the demo login user, which is used in acceptance
13   - * and functional tests. All fixtures will be loaded before the suite is started and unloaded after it
14   - * completes.
15   - */
16   -class FixtureHelper extends Module
17   -{
18   -
19   - /**
20   - * Redeclare visibility because codeception includes all public methods that do not start with "_"
21   - * and are not excluded by module settings, in actor class.
22   - */
23   - use FixtureTrait {
24   - loadFixtures as protected;
25   - fixtures as protected;
26   - globalFixtures as protected;
27   - unloadFixtures as protected;
28   - getFixtures as protected;
29   - getFixture as protected;
30   - }
31   -
32   - /**
33   - * Method called before any suite tests run. Loads User fixture login user
34   - * to use in acceptance and functional tests.
35   - * @param array $settings
36   - */
37   - public function _beforeSuite($settings = [])
38   - {
39   - $this->loadFixtures();
40   - }
41   -
42   - /**
43   - * Method is called after all suite tests run
44   - */
45   - public function _afterSuite()
46   - {
47   - $this->unloadFixtures();
48   - }
49   -
50   - /**
51   - * @inheritdoc
52   - */
53   - public function globalFixtures()
54   - {
55   - return [
56   - InitDbFixture::className(),
57   - ];
58   - }
59   -
60   - /**
61   - * @inheritdoc
62   - */
63   - public function fixtures()
64   - {
65   - return [
66   - 'user' => [
67   - 'class' => UserFixture::className(),
68   - 'dataFile' => '@tests/codeception/common/fixtures/data/init_login.php',
69   - ],
70   - ];
71   - }
72   -}
tests/codeception/common/codeception.yml deleted
1   -namespace: tests\codeception\common
2   -actor: Tester
3   -paths:
4   - tests: .
5   - log: _output
6   - data: _data
7   - helpers: _support
8   -settings:
9   - bootstrap: _bootstrap.php
10   - suite_class: \PHPUnit_Framework_TestSuite
11   - colors: true
12   - memory_limit: 1024M
13   - log: true
tests/codeception/common/fixtures/UserFixture.php deleted
1   -<?php
2   -
3   -namespace tests\codeception\common\fixtures;
4   -
5   -use yii\test\ActiveFixture;
6   -
7   -/**
8   - * User fixture
9   - */
10   -class UserFixture extends ActiveFixture
11   -{
12   - public $modelClass = 'common\models\User';
13   -}
tests/codeception/common/fixtures/data/init_login.php deleted
1   -<?php
2   -
3   -return [
4   - [
5   - 'username' => 'erau',
6   - 'auth_key' => 'tUu1qHcde0diwUol3xeI-18MuHkkprQI',
7   - // password_0
8   - 'password_hash' => '$2y$13$nJ1WDlBaGcbCdbNC5.5l4.sgy.OMEKCqtDQOdQ2OWpgiKRWYyzzne',
9   - 'password_reset_token' => 'RkD_Jw0_8HEedzLk7MM-ZKEFfYR7VbMr_1392559490',
10   - 'created_at' => '1392559490',
11   - 'updated_at' => '1392559490',
12   - 'email' => 'sfriesen@jenkins.info',
13   - ],
14   -];
tests/codeception/common/templates/fixtures/user.php deleted
1   -<?php
2   -/**
3   - * @var $faker \Faker\Generator
4   - * @var $index integer
5   - */
6   -
7   -$security = Yii::$app->getSecurity();
8   -
9   -return [
10   - 'username' => $faker->userName,
11   - 'email' => $faker->email,
12   - 'auth_key' => $security->generateRandomString(),
13   - 'password_hash' => $security->generatePasswordHash('password_' . $index),
14   - 'password_reset_token' => $security->generateRandomString() . '_' . time(),
15   - 'created_at' => time(),
16   - 'updated_at' => time(),
17   -];
tests/codeception/common/unit.suite.yml deleted
1   -# Codeception Test Suite Configuration
2   -
3   -# suite for unit (internal) tests.
4   -# RUN `build` COMMAND AFTER ADDING/REMOVING MODULES.
5   -
6   -class_name: UnitTester
tests/codeception/common/unit/DbTestCase.php deleted
1   -<?php
2   -
3   -namespace tests\codeception\common\unit;
4   -
5   -/**
6   - * @inheritdoc
7   - */
8   -class DbTestCase extends \yii\codeception\DbTestCase
9   -{
10   - public $appConfig = '@tests/codeception/config/common/unit.php';
11   -}
tests/codeception/common/unit/TestCase.php deleted
1   -<?php
2   -
3   -namespace tests\codeception\common\unit;
4   -
5   -/**
6   - * @inheritdoc
7   - */
8   -class TestCase extends \yii\codeception\TestCase
9   -{
10   - public $appConfig = '@tests/codeception/config/common/unit.php';
11   -}
tests/codeception/common/unit/_bootstrap.php deleted
1   -<?php
2   -// Here you can initialize variables that will for your tests
tests/codeception/common/unit/fixtures/data/models/user.php deleted
1   -<?php
2   -
3   -return [
4   - [
5   - 'username' => 'bayer.hudson',
6   - 'auth_key' => 'HP187Mvq7Mmm3CTU80dLkGmni_FUH_lR',
7   - //password_0
8   - 'password_hash' => '$2y$13$EjaPFBnZOQsHdGuHI.xvhuDp1fHpo8hKRSk6yshqa9c5EG8s3C3lO',
9   - 'password_reset_token' => 'ExzkCOaYc1L8IOBs4wdTGGbgNiG3Wz1I_1402312317',
10   - 'created_at' => '1402312317',
11   - 'updated_at' => '1402312317',
12   - 'email' => 'nicole.paucek@schultz.info',
13   - ],
14   -];
tests/codeception/common/unit/models/LoginFormTest.php deleted
1   -<?php
2   -
3   -namespace tests\codeception\common\unit\models;
4   -
5   -use Yii;
6   -use tests\codeception\common\unit\DbTestCase;
7   -use Codeception\Specify;
8   -use common\models\LoginForm;
9   -use tests\codeception\common\fixtures\UserFixture;
10   -
11   -/**
12   - * Login form test
13   - */
14   -class LoginFormTest extends DbTestCase
15   -{
16   -
17   - use Specify;
18   -
19   - public function setUp()
20   - {
21   - parent::setUp();
22   -
23   - Yii::configure(Yii::$app, [
24   - 'components' => [
25   - 'user' => [
26   - 'class' => 'yii\web\User',
27   - 'identityClass' => 'common\models\User',
28   - ],
29   - ],
30   - ]);
31   - }
32   -
33   - protected function tearDown()
34   - {
35   - Yii::$app->user->logout();
36   - parent::tearDown();
37   - }
38   -
39   - public function testLoginNoUser()
40   - {
41   - $model = new LoginForm([
42   - 'username' => 'not_existing_username',
43   - 'password' => 'not_existing_password',
44   - ]);
45   -
46   - $this->specify('user should not be able to login, when there is no identity', function () use ($model) {
47   - expect('model should not login user', $model->login())->false();
48   - expect('user should not be logged in', Yii::$app->user->isGuest)->true();
49   - });
50   - }
51   -
52   - public function testLoginWrongPassword()
53   - {
54   - $model = new LoginForm([
55   - 'username' => 'bayer.hudson',
56   - 'password' => 'wrong_password',
57   - ]);
58   -
59   - $this->specify('user should not be able to login with wrong password', function () use ($model) {
60   - expect('model should not login user', $model->login())->false();
61   - expect('error message should be set', $model->errors)->hasKey('password');
62   - expect('user should not be logged in', Yii::$app->user->isGuest)->true();
63   - });
64   - }
65   -
66   - public function testLoginCorrect()
67   - {
68   -
69   - $model = new LoginForm([
70   - 'username' => 'bayer.hudson',
71   - 'password' => 'password_0',
72   - ]);
73   -
74   - $this->specify('user should be able to login with correct credentials', function () use ($model) {
75   - expect('model should login user', $model->login())->true();
76   - expect('error message should not be set', $model->errors)->hasntKey('password');
77   - expect('user should be logged in', Yii::$app->user->isGuest)->false();
78   - });
79   - }
80   -
81   - /**
82   - * @inheritdoc
83   - */
84   - public function fixtures()
85   - {
86   - return [
87   - 'user' => [
88   - 'class' => UserFixture::className(),
89   - 'dataFile' => '@tests/codeception/common/unit/fixtures/data/models/user.php'
90   - ],
91   - ];
92   - }
93   -}
tests/codeception/config/acceptance.php deleted
1   -<?php
2   -/**
3   - * Application configuration shared by all applications acceptance tests
4   - */
5   -return [
6   -
7   -];
8 0 \ No newline at end of file
tests/codeception/config/backend/acceptance.php deleted
1   -<?php
2   -defined('YII_APP_BASE_PATH') or define('YII_APP_BASE_PATH', dirname(dirname(dirname(dirname(__DIR__)))));
3   -
4   -/**
5   - * Application configuration for backend acceptance tests
6   - */
7   -return yii\helpers\ArrayHelper::merge(
8   - require(YII_APP_BASE_PATH . '/common/config/main.php'),
9   - require(YII_APP_BASE_PATH . '/common/config/main-local.php'),
10   - require(YII_APP_BASE_PATH . '/backend/config/main.php'),
11   - require(YII_APP_BASE_PATH . '/backend/config/main-local.php'),
12   - require(dirname(__DIR__) . '/config.php'),
13   - require(dirname(__DIR__) . '/acceptance.php'),
14   - require(__DIR__ . '/config.php'),
15   - [
16   - ]
17   -);
tests/codeception/config/backend/config.php deleted
1   -<?php
2   -/**
3   - * Application configuration for all backend test types
4   - */
5   -return [];
6 0 \ No newline at end of file
tests/codeception/config/backend/functional.php deleted
1   -<?php
2   -$_SERVER['SCRIPT_FILENAME'] = YII_TEST_BACKEND_ENTRY_FILE;
3   -$_SERVER['SCRIPT_NAME'] = YII_BACKEND_TEST_ENTRY_URL;
4   -
5   -/**
6   - * Application configuration for backend functional tests
7   - */
8   -return yii\helpers\ArrayHelper::merge(
9   - require(YII_APP_BASE_PATH . '/common/config/main.php'),
10   - require(YII_APP_BASE_PATH . '/common/config/main-local.php'),
11   - require(YII_APP_BASE_PATH . '/backend/config/main.php'),
12   - require(YII_APP_BASE_PATH . '/backend/config/main-local.php'),
13   - require(dirname(__DIR__) . '/config.php'),
14   - require(dirname(__DIR__) . '/functional.php'),
15   - require(__DIR__ . '/config.php'),
16   - [
17   - ]
18   -);
tests/codeception/config/backend/unit.php deleted
1   -<?php
2   -
3   -/**
4   - * Application configuration for backend unit tests
5   - */
6   -return yii\helpers\ArrayHelper::merge(
7   - require(YII_APP_BASE_PATH . '/common/config/main.php'),
8   - require(YII_APP_BASE_PATH . '/common/config/main-local.php'),
9   - require(YII_APP_BASE_PATH . '/backend/config/main.php'),
10   - require(YII_APP_BASE_PATH . '/backend/config/main-local.php'),
11   - require(dirname(__DIR__) . '/config.php'),
12   - require(dirname(__DIR__) . '/unit.php'),
13   - require(__DIR__ . '/config.php'),
14   - [
15   - ]
16   -);
tests/codeception/config/common/unit.php deleted
1   -<?php
2   -/**
3   - * Application config for common unit tests
4   - */
5   -return yii\helpers\ArrayHelper::merge(
6   - require(YII_APP_BASE_PATH . '/common/config/main.php'),
7   - require(YII_APP_BASE_PATH . '/common/config/main-local.php'),
8   - require(dirname(__DIR__) . '/config.php'),
9   - require(dirname(__DIR__) . '/unit.php'),
10   - [
11   - 'id' => 'app-common',
12   - 'basePath' => dirname(__DIR__),
13   - ]
14   -);
tests/codeception/config/config.php deleted
1   -<?php
2   -/**
3   - * Application configuration shared by all applications and test types
4   - */
5   -return [
6   - 'language' => 'en-US',
7   - 'controllerMap' => [
8   - 'fixture' => [
9   - 'class' => 'yii\faker\FixtureController',
10   - 'fixtureDataPath' => '@tests/codeception/common/fixtures/data',
11   - 'templatePath' => '@tests/codeception/common/templates/fixtures',
12   - 'namespace' => 'tests\codeception\common\fixtures',
13   - ],
14   - ],
15   - 'components' => [
16   - 'db' => [
17   - 'dsn' => 'mysql:host=localhost;dbname=yii2_advanced_tests',
18   - ],
19   - 'mailer' => [
20   - 'useFileTransport' => true,
21   - ],
22   - 'urlManager' => [
23   - 'showScriptName' => true,
24   - ],
25   - ],
26   -];
tests/codeception/config/console/unit.php deleted
1   -<?php
2   -/**
3   - * Application configuration for console unit tests
4   - */
5   -return yii\helpers\ArrayHelper::merge(
6   - require(YII_APP_BASE_PATH . '/common/config/main.php'),
7   - require(YII_APP_BASE_PATH . '/common/config/main-local.php'),
8   - require(YII_APP_BASE_PATH . '/console/config/main.php'),
9   - require(YII_APP_BASE_PATH . '/console/config/main-local.php'),
10   - require(dirname(__DIR__) . '/config.php'),
11   - require(dirname(__DIR__) . '/unit.php'),
12   - [
13   - ]
14   -);
tests/codeception/config/frontend/acceptance.php deleted
1   -<?php
2   -defined('YII_APP_BASE_PATH') or define('YII_APP_BASE_PATH', dirname(dirname(dirname(dirname(__DIR__)))));
3   -
4   -/**
5   - * Application configuration for frontend acceptance tests
6   - */
7   -return yii\helpers\ArrayHelper::merge(
8   - require(YII_APP_BASE_PATH . '/common/config/main.php'),
9   - require(YII_APP_BASE_PATH . '/common/config/main-local.php'),
10   - require(YII_APP_BASE_PATH . '/frontend/config/main.php'),
11   - require(YII_APP_BASE_PATH . '/frontend/config/main-local.php'),
12   - require(dirname(__DIR__) . '/config.php'),
13   - require(dirname(__DIR__) . '/acceptance.php'),
14   - require(__DIR__ . '/config.php'),
15   - [
16   - ]
17   -);
tests/codeception/config/frontend/config.php deleted
1   -<?php
2   -/**
3   - * Application configuration for all frontend test types
4   - */
5   -return [];
6 0 \ No newline at end of file
tests/codeception/config/frontend/functional.php deleted
1   -<?php
2   -$_SERVER['SCRIPT_FILENAME'] = FRONTEND_ENTRY_FILE;
3   -$_SERVER['SCRIPT_NAME'] = FRONTEND_ENTRY_URL;
4   -
5   -/**
6   - * Application configuration for frontend functional tests
7   - */
8   -return yii\helpers\ArrayHelper::merge(
9   - require(YII_APP_BASE_PATH . '/common/config/main.php'),
10   - require(YII_APP_BASE_PATH . '/common/config/main-local.php'),
11   - require(YII_APP_BASE_PATH . '/frontend/config/main.php'),
12   - require(YII_APP_BASE_PATH . '/frontend/config/main-local.php'),
13   - require(dirname(__DIR__) . '/config.php'),
14   - require(dirname(__DIR__) . '/functional.php'),
15   - require(__DIR__ . '/config.php'),
16   - [
17   - ]
18   -);
tests/codeception/config/frontend/unit.php deleted
1   -<?php
2   -
3   -/**
4   - * Application configuration for frontend unit tests
5   - */
6   -return yii\helpers\ArrayHelper::merge(
7   - require(YII_APP_BASE_PATH . '/common/config/main.php'),
8   - require(YII_APP_BASE_PATH . '/common/config/main-local.php'),
9   - require(YII_APP_BASE_PATH . '/frontend/config/main.php'),
10   - require(YII_APP_BASE_PATH . '/frontend/config/main-local.php'),
11   - require(dirname(__DIR__) . '/config.php'),
12   - require(dirname(__DIR__) . '/unit.php'),
13   - require(__DIR__ . '/config.php'),
14   - [
15   - ]
16   -);
tests/codeception/config/functional.php deleted
1   -<?php
2   -/**
3   - * Application configuration shared by all applications functional tests
4   - */
5   -return [
6   - 'components' => [
7   - 'request' => [
8   - // it's not recommended to run functional tests with CSRF validation enabled
9   - 'enableCsrfValidation' => false,
10   - // but if you absolutely need it set cookie domain to localhost
11   - /*
12   - 'csrfCookie' => [
13   - 'domain' => 'localhost',
14   - ],
15   - */
16   - ],
17   - ],
18   -];
19 0 \ No newline at end of file
tests/codeception/config/unit.php deleted
1   -<?php
2   -/**
3   - * Application configuration shared by all applications unit tests
4   - */
5   -return [
6   -
7   -];
8 0 \ No newline at end of file
tests/codeception/console/.gitignore deleted
1   -# these files are auto generated by codeception build
2   -/unit/UnitTester.php
tests/codeception/console/_bootstrap.php deleted
1   -<?php
2   -defined('YII_DEBUG') or define('YII_DEBUG', true);
3   -defined('YII_ENV') or define('YII_ENV', 'test');
4   -
5   -defined('YII_APP_BASE_PATH') or define('YII_APP_BASE_PATH', dirname(dirname(dirname(__DIR__))));
6   -
7   -require_once(YII_APP_BASE_PATH . '/vendor/autoload.php');
8   -require_once(YII_APP_BASE_PATH . '/vendor/yiisoft/yii2/Yii.php');
9   -require_once(YII_APP_BASE_PATH . '/common/config/bootstrap.php');
10   -require_once(YII_APP_BASE_PATH . '/console/config/bootstrap.php');
11   -
12   -// set correct script paths
13   -$_SERVER['SERVER_NAME'] = 'localhost';
14   -$_SERVER['SERVER_PORT'] = '80';
15   -
16   -Yii::setAlias('@tests', dirname(dirname(__DIR__)));
tests/codeception/console/_output/.gitignore deleted
1   -*
2   -!.gitignore
tests/codeception/console/codeception.yml deleted
1   -namespace: tests\codeception\console
2   -actor: Tester
3   -paths:
4   - tests: .
5   - log: _output
6   - data: _data
7   - helpers: _support
8   -settings:
9   - bootstrap: _bootstrap.php
10   - suite_class: \PHPUnit_Framework_TestSuite
11   - colors: true
12   - memory_limit: 1024M
13   - log: true
tests/codeception/console/unit.suite.yml deleted
1   -# Codeception Test Suite Configuration
2   -
3   -# suite for unit (internal) tests.
4   -# RUN `build` COMMAND AFTER ADDING/REMOVING MODULES.
5   -
6   -class_name: UnitTester
tests/codeception/console/unit/DbTestCase.php deleted
1   -<?php
2   -
3   -namespace tests\codeception\console\unit;
4   -
5   -/**
6   - * @inheritdoc
7   - */
8   -class DbTestCase extends \yii\codeception\DbTestCase
9   -{
10   - public $appConfig = '@tests/codeception/config/console/config.php';
11   -}
tests/codeception/console/unit/TestCase.php deleted
1   -<?php
2   -
3   -namespace tests\codeception\console\unit;
4   -
5   -/**
6   - * @inheritdoc
7   - */
8   -class TestCase extends \yii\codeception\TestCase
9   -{
10   - public $appConfig = '@tests/codeception/config/console/config.php';
11   -}
tests/codeception/console/unit/_bootstrap.php deleted
1   -<?php
2   -// Here you can initialize variables that will for your tests
tests/codeception/console/unit/fixtures/data/.gitkeep deleted
tests/codeception/frontend/.gitignore deleted
1   -# these files are auto generated by codeception build
2   -/unit/UnitTester.php
3   -/functional/FunctionalTester.php
4   -/acceptance/AcceptanceTester.php
tests/codeception/frontend/_bootstrap.php deleted
1   -<?php
2   -defined('YII_DEBUG') or define('YII_DEBUG', true);
3   -defined('YII_ENV') or define('YII_ENV', 'test');
4   -
5   -defined('YII_APP_BASE_PATH') or define('YII_APP_BASE_PATH', dirname(dirname(dirname(__DIR__))));
6   -
7   -defined('FRONTEND_ENTRY_URL') or define('FRONTEND_ENTRY_URL', parse_url(\Codeception\Configuration::config()['config']['test_entry_url'], PHP_URL_PATH));
8   -defined('FRONTEND_ENTRY_FILE') or define('FRONTEND_ENTRY_FILE', YII_APP_BASE_PATH . '/frontend/web/index-test.php');
9   -
10   -require_once(YII_APP_BASE_PATH . '/vendor/autoload.php');
11   -require_once(YII_APP_BASE_PATH . '/vendor/yiisoft/yii2/Yii.php');
12   -require_once(YII_APP_BASE_PATH . '/common/config/bootstrap.php');
13   -require_once(YII_APP_BASE_PATH . '/frontend/config/bootstrap.php');
14   -
15   -// set correct script paths
16   -
17   -// the entry script file path for functional and acceptance tests
18   -$_SERVER['SCRIPT_FILENAME'] = FRONTEND_ENTRY_FILE;
19   -$_SERVER['SCRIPT_NAME'] = FRONTEND_ENTRY_URL;
20   -$_SERVER['SERVER_NAME'] = parse_url(\Codeception\Configuration::config()['config']['test_entry_url'], PHP_URL_HOST);
21   -$_SERVER['SERVER_PORT'] = parse_url(\Codeception\Configuration::config()['config']['test_entry_url'], PHP_URL_PORT) ?: '80';
22   -
23   -Yii::setAlias('@tests', dirname(dirname(__DIR__)));
tests/codeception/frontend/_output/.gitignore deleted
1   -*
2   -!.gitignore
tests/codeception/frontend/_pages/AboutPage.php deleted
1   -<?php
2   -
3   -namespace tests\codeception\frontend\_pages;
4   -
5   -use yii\codeception\BasePage;
6   -
7   -/**
8   - * Represents about page
9   - * @property \codeception_frontend\AcceptanceTester|\codeception_frontend\FunctionalTester $actor
10   - */
11   -class AboutPage extends BasePage
12   -{
13   - public $route = 'site/about';
14   -}
tests/codeception/frontend/_pages/ContactPage.php deleted
1   -<?php
2   -
3   -namespace tests\codeception\frontend\_pages;
4   -
5   -use yii\codeception\BasePage;
6   -
7   -/**
8   - * Represents contact page
9   - * @property \codeception_frontend\AcceptanceTester|\codeception_frontend\FunctionalTester $actor
10   - */
11   -class ContactPage extends BasePage
12   -{
13   - public $route = 'site/contact';
14   -
15   - /**
16   - * @param array $contactData
17   - */
18   - public function submit(array $contactData)
19   - {
20   - foreach ($contactData as $field => $value) {
21   - $inputType = $field === 'body' ? 'textarea' : 'input';
22   - $this->actor->fillField($inputType . '[name="ContactForm[' . $field . ']"]', $value);
23   - }
24   - $this->actor->click('contact-button');
25   - }
26   -}
tests/codeception/frontend/_pages/SignupPage.php deleted
1   -<?php
2   -
3   -namespace tests\codeception\frontend\_pages;
4   -
5   -use \yii\codeception\BasePage;
6   -
7   -/**
8   - * Represents signup page
9   - * @property \codeception_frontend\AcceptanceTester|\codeception_frontend\FunctionalTester $actor
10   - */
11   -class SignupPage extends BasePage
12   -{
13   -
14   - public $route = 'site/signup';
15   -
16   - /**
17   - * @param array $signupData
18   - */
19   - public function submit(array $signupData)
20   - {
21   - foreach ($signupData as $field => $value) {
22   - $inputType = $field === 'body' ? 'textarea' : 'input';
23   - $this->actor->fillField($inputType . '[name="SignupForm[' . $field . ']"]', $value);
24   - }
25   - $this->actor->click('signup-button');
26   - }
27   -}
tests/codeception/frontend/acceptance.suite.yml deleted
1   -# Codeception Test Suite Configuration
2   -
3   -# suite for acceptance tests.
4   -# perform tests in browser using the Selenium-like tools.
5   -# powered by Mink (http://mink.behat.org).
6   -# (tip: that's what your customer will see).
7   -# (tip: test your ajax and javascript by one of Mink drivers).
8   -
9   -# RUN `build` COMMAND AFTER ADDING/REMOVING MODULES.
10   -
11   -class_name: AcceptanceTester
12   -modules:
13   - enabled:
14   - - PhpBrowser
15   - - tests\codeception\common\_support\FixtureHelper
16   -# you can use WebDriver instead of PhpBrowser to test javascript and ajax.
17   -# This will require you to install selenium. See http://codeception.com/docs/04-AcceptanceTests#Selenium
18   -# "restart" option is used by the WebDriver to start each time per test-file new session and cookies,
19   -# it is useful if you want to login in your app in each test.
20   -# - WebDriver
21   - config:
22   - PhpBrowser:
23   -# PLEASE ADJUST IT TO THE ACTUAL ENTRY POINT WITHOUT PATH INFO
24   - url: http://localhost:8080
25   -# WebDriver:
26   -# url: http://localhost:8080
27   -# browser: firefox
28   -# restart: true
tests/codeception/frontend/acceptance/AboutCept.php deleted
1   -<?php
2   -use tests\codeception\frontend\AcceptanceTester;
3   -use tests\codeception\frontend\_pages\AboutPage;
4   -
5   -/* @var $scenario Codeception\Scenario */
6   -
7   -$I = new AcceptanceTester($scenario);
8   -$I->wantTo('ensure that about works');
9   -AboutPage::openBy($I);
10   -$I->see('About', 'h1');
tests/codeception/frontend/acceptance/ContactCept.php deleted
1   -<?php
2   -use tests\codeception\frontend\AcceptanceTester;
3   -use tests\codeception\frontend\_pages\ContactPage;
4   -
5   -/* @var $scenario Codeception\Scenario */
6   -
7   -$I = new AcceptanceTester($scenario);
8   -$I->wantTo('ensure that contact works');
9   -
10   -$contactPage = ContactPage::openBy($I);
11   -
12   -$I->see('Contact', 'h1');
13   -
14   -$I->amGoingTo('submit contact form with no data');
15   -$contactPage->submit([]);
16   -if (method_exists($I, 'wait')) {
17   - $I->wait(3); // only for selenium
18   -}
19   -$I->expectTo('see validations errors');
20   -$I->see('Contact', 'h1');
21   -$I->see('Name cannot be blank', '.help-block');
22   -$I->see('Email cannot be blank', '.help-block');
23   -$I->see('Subject cannot be blank', '.help-block');
24   -$I->see('Body cannot be blank', '.help-block');
25   -$I->see('The verification code is incorrect', '.help-block');
26   -
27   -$I->amGoingTo('submit contact form with not correct email');
28   -$contactPage->submit([
29   - 'name' => 'tester',
30   - 'email' => 'tester.email',
31   - 'subject' => 'test subject',
32   - 'body' => 'test content',
33   - 'verifyCode' => 'testme',
34   -]);
35   -if (method_exists($I, 'wait')) {
36   - $I->wait(3); // only for selenium
37   -}
38   -$I->expectTo('see that email adress is wrong');
39   -$I->dontSee('Name cannot be blank', '.help-block');
40   -$I->see('Email is not a valid email address.', '.help-block');
41   -$I->dontSee('Subject cannot be blank', '.help-block');
42   -$I->dontSee('Body cannot be blank', '.help-block');
43   -$I->dontSee('The verification code is incorrect', '.help-block');
44   -
45   -$I->amGoingTo('submit contact form with correct data');
46   -$contactPage->submit([
47   - 'name' => 'tester',
48   - 'email' => 'tester@example.com',
49   - 'subject' => 'test subject',
50   - 'body' => 'test content',
51   - 'verifyCode' => 'testme',
52   -]);
53   -if (method_exists($I, 'wait')) {
54   - $I->wait(3); // only for selenium
55   -}
56   -$I->see('Thank you for contacting us. We will respond to you as soon as possible.');
tests/codeception/frontend/acceptance/HomeCept.php deleted
1   -<?php
2   -use tests\codeception\frontend\AcceptanceTester;
3   -
4   -/* @var $scenario Codeception\Scenario */
5   -
6   -$I = new AcceptanceTester($scenario);
7   -$I->wantTo('ensure that home page works');
8   -$I->amOnPage(Yii::$app->homeUrl);
9   -$I->see('My Company');
10   -$I->seeLink('About');
11   -$I->click('About');
12   -$I->see('This is the About page.');
tests/codeception/frontend/acceptance/LoginCept.php deleted
1   -<?php
2   -use tests\codeception\frontend\AcceptanceTester;
3   -use tests\codeception\common\_pages\LoginPage;
4   -
5   -/* @var $scenario Codeception\Scenario */
6   -
7   -$I = new AcceptanceTester($scenario);
8   -$I->wantTo('ensure login page works');
9   -
10   -$loginPage = LoginPage::openBy($I);
11   -
12   -$I->amGoingTo('submit login form with no data');
13   -$loginPage->login('', '');
14   -$I->expectTo('see validations errors');
15   -$I->see('Username cannot be blank.', '.help-block');
16   -$I->see('Password cannot be blank.', '.help-block');
17   -
18   -$I->amGoingTo('try to login with wrong credentials');
19   -$I->expectTo('see validations errors');
20   -$loginPage->login('admin', 'wrong');
21   -$I->expectTo('see validations errors');
22   -$I->see('Incorrect username or password.', '.help-block');
23   -
24   -$I->amGoingTo('try to login with correct credentials');
25   -$loginPage->login('erau', 'password_0');
26   -$I->expectTo('see that user is logged');
27   -$I->seeLink('Logout (erau)');
28   -$I->dontSeeLink('Login');
29   -$I->dontSeeLink('Signup');
30   -/** Uncomment if using WebDriver
31   - * $I->click('Logout (erau)');
32   - * $I->dontSeeLink('Logout (erau)');
33   - * $I->seeLink('Login');
34   - */
tests/codeception/frontend/acceptance/SignupCest.php deleted
1   -<?php
2   -
3   -namespace tests\codeception\frontend\acceptance;
4   -
5   -use tests\codeception\frontend\_pages\SignupPage;
6   -use common\models\User;
7   -
8   -class SignupCest
9   -{
10   -
11   - /**
12   - * This method is called before each cest class test method
13   - * @param \Codeception\Event\TestEvent $event
14   - */
15   - public function _before($event)
16   - {
17   - }
18   -
19   - /**
20   - * This method is called after each cest class test method, even if test failed.
21   - * @param \Codeception\Event\TestEvent $event
22   - */
23   - public function _after($event)
24   - {
25   - User::deleteAll([
26   - 'email' => 'tester.email@example.com',
27   - 'username' => 'tester',
28   - ]);
29   - }
30   -
31   - /**
32   - * This method is called when test fails.
33   - * @param \Codeception\Event\FailEvent $event
34   - */
35   - public function _fail($event)
36   - {
37   - }
38   -
39   - /**
40   - * @param \codeception_frontend\AcceptanceTester $I
41   - * @param \Codeception\Scenario $scenario
42   - */
43   - public function testUserSignup($I, $scenario)
44   - {
45   - $I->wantTo('ensure that signup works');
46   -
47   - $signupPage = SignupPage::openBy($I);
48   - $I->see('Signup', 'h1');
49   - $I->see('Please fill out the following fields to signup:');
50   -
51   - $I->amGoingTo('submit signup form with no data');
52   -
53   - $signupPage->submit([]);
54   -
55   - $I->expectTo('see validation errors');
56   - $I->see('Username cannot be blank.', '.help-block');
57   - $I->see('Email cannot be blank.', '.help-block');
58   - $I->see('Password cannot be blank.', '.help-block');
59   -
60   - $I->amGoingTo('submit signup form with not correct email');
61   - $signupPage->submit([
62   - 'username' => 'tester',
63   - 'email' => 'tester.email',
64   - 'password' => 'tester_password',
65   - ]);
66   -
67   - $I->expectTo('see that email address is wrong');
68   - $I->dontSee('Username cannot be blank.', '.help-block');
69   - $I->dontSee('Password cannot be blank.', '.help-block');
70   - $I->see('Email is not a valid email address.', '.help-block');
71   -
72   - $I->amGoingTo('submit signup form with correct email');
73   - $signupPage->submit([
74   - 'username' => 'tester',
75   - 'email' => 'tester.email@example.com',
76   - 'password' => 'tester_password',
77   - ]);
78   -
79   - $I->expectTo('see that user logged in');
80   - $I->seeLink('Logout (tester)');
81   - }
82   -}
tests/codeception/frontend/acceptance/_bootstrap.php deleted
1   -<?php
2   -new yii\web\Application(require(dirname(dirname(__DIR__)) . '/config/frontend/acceptance.php'));
tests/codeception/frontend/codeception.yml deleted
1   -namespace: tests\codeception\frontend
2   -actor: Tester
3   -paths:
4   - tests: .
5   - log: _output
6   - data: _data
7   - helpers: _support
8   -settings:
9   - bootstrap: _bootstrap.php
10   - suite_class: \PHPUnit_Framework_TestSuite
11   - colors: true
12   - memory_limit: 1024M
13   - log: true
14   -config:
15   - # the entry script URL (with host info) for functional and acceptance tests
16   - # PLEASE ADJUST IT TO THE ACTUAL ENTRY SCRIPT URL
17   - test_entry_url: http://localhost:8080/frontend/web/index-test.php
tests/codeception/frontend/functional.suite.yml deleted
1   -# Codeception Test Suite Configuration
2   -
3   -# suite for functional (integration) tests.
4   -# emulate web requests and make application process them.
5   -# (tip: better to use with frameworks).
6   -
7   -# RUN `build` COMMAND AFTER ADDING/REMOVING MODULES.
8   -#basic/web/index.php
9   -class_name: FunctionalTester
10   -modules:
11   - enabled:
12   - - Filesystem
13   - - Yii2
14   - - tests\codeception\common\_support\FixtureHelper
15   - config:
16   - Yii2:
17   - configFile: '../config/frontend/functional.php'
tests/codeception/frontend/functional/AboutCept.php deleted
1   -<?php
2   -use tests\codeception\frontend\FunctionalTester;
3   -use tests\codeception\frontend\_pages\AboutPage;
4   -
5   -/* @var $scenario Codeception\Scenario */
6   -
7   -$I = new FunctionalTester($scenario);
8   -$I->wantTo('ensure that about works');
9   -AboutPage::openBy($I);
10   -$I->see('About', 'h1');
tests/codeception/frontend/functional/ContactCept.php deleted
1   -<?php
2   -use tests\codeception\frontend\FunctionalTester;
3   -use tests\codeception\frontend\_pages\ContactPage;
4   -
5   -/* @var $scenario Codeception\Scenario */
6   -
7   -$I = new FunctionalTester($scenario);
8   -$I->wantTo('ensure that contact works');
9   -
10   -$contactPage = ContactPage::openBy($I);
11   -
12   -$I->see('Contact', 'h1');
13   -
14   -$I->amGoingTo('submit contact form with no data');
15   -$contactPage->submit([]);
16   -$I->expectTo('see validations errors');
17   -$I->see('Contact', 'h1');
18   -$I->see('Name cannot be blank', '.help-block');
19   -$I->see('Email cannot be blank', '.help-block');
20   -$I->see('Subject cannot be blank', '.help-block');
21   -$I->see('Body cannot be blank', '.help-block');
22   -$I->see('The verification code is incorrect', '.help-block');
23   -
24   -$I->amGoingTo('submit contact form with not correct email');
25   -$contactPage->submit([
26   - 'name' => 'tester',
27   - 'email' => 'tester.email',
28   - 'subject' => 'test subject',
29   - 'body' => 'test content',
30   - 'verifyCode' => 'testme',
31   -]);
32   -$I->expectTo('see that email adress is wrong');
33   -$I->dontSee('Name cannot be blank', '.help-block');
34   -$I->see('Email is not a valid email address.', '.help-block');
35   -$I->dontSee('Subject cannot be blank', '.help-block');
36   -$I->dontSee('Body cannot be blank', '.help-block');
37   -$I->dontSee('The verification code is incorrect', '.help-block');
38   -
39   -$I->amGoingTo('submit contact form with correct data');
40   -$contactPage->submit([
41   - 'name' => 'tester',
42   - 'email' => 'tester@example.com',
43   - 'subject' => 'test subject',
44   - 'body' => 'test content',
45   - 'verifyCode' => 'testme',
46   -]);
47   -$I->see('Thank you for contacting us. We will respond to you as soon as possible.');
tests/codeception/frontend/functional/HomeCept.php deleted
1   -<?php
2   -use tests\codeception\frontend\FunctionalTester;
3   -
4   -/* @var $scenario Codeception\Scenario */
5   -
6   -$I = new FunctionalTester($scenario);
7   -$I->wantTo('ensure that home page works');
8   -$I->amOnPage(Yii::$app->homeUrl);
9   -$I->see('My Company');
10   -$I->seeLink('About');
11   -$I->click('About');
12   -$I->see('This is the About page.');
tests/codeception/frontend/functional/LoginCept.php deleted
1   -<?php
2   -use tests\codeception\frontend\FunctionalTester;
3   -use tests\codeception\common\_pages\LoginPage;
4   -
5   -/* @var $scenario Codeception\Scenario */
6   -
7   -$I = new FunctionalTester($scenario);
8   -$I->wantTo('ensure login page works');
9   -
10   -$loginPage = LoginPage::openBy($I);
11   -
12   -$I->amGoingTo('submit login form with no data');
13   -$loginPage->login('', '');
14   -$I->expectTo('see validations errors');
15   -$I->see('Username cannot be blank.', '.help-block');
16   -$I->see('Password cannot be blank.', '.help-block');
17   -
18   -$I->amGoingTo('try to login with wrong credentials');
19   -$I->expectTo('see validations errors');
20   -$loginPage->login('admin', 'wrong');
21   -$I->expectTo('see validations errors');
22   -$I->see('Incorrect username or password.', '.help-block');
23   -
24   -$I->amGoingTo('try to login with correct credentials');
25   -$loginPage->login('erau', 'password_0');
26   -$I->expectTo('see that user is logged');
27   -$I->seeLink('Logout (erau)');
28   -$I->dontSeeLink('Login');
29   -$I->dontSeeLink('Signup');
tests/codeception/frontend/functional/SignupCest.php deleted
1   -<?php
2   -
3   -namespace tests\codeception\frontend\functional;
4   -
5   -use tests\codeception\frontend\_pages\SignupPage;
6   -use common\models\User;
7   -
8   -class SignupCest
9   -{
10   -
11   - /**
12   - * This method is called before each cest class test method
13   - * @param \Codeception\Event\TestEvent $event
14   - */
15   - public function _before($event)
16   - {
17   - }
18   -
19   - /**
20   - * This method is called after each cest class test method, even if test failed.
21   - * @param \Codeception\Event\TestEvent $event
22   - */
23   - public function _after($event)
24   - {
25   - User::deleteAll([
26   - 'email' => 'tester.email@example.com',
27   - 'username' => 'tester',
28   - ]);
29   - }
30   -
31   - /**
32   - * This method is called when test fails.
33   - * @param \Codeception\Event\FailEvent $event
34   - */
35   - public function _fail($event)
36   - {
37   -
38   - }
39   -
40   - /**
41   - *
42   - * @param \codeception_frontend\FunctionalTester $I
43   - * @param \Codeception\Scenario $scenario
44   - */
45   - public function testUserSignup($I, $scenario)
46   - {
47   - $I->wantTo('ensure that signup works');
48   -
49   - $signupPage = SignupPage::openBy($I);
50   - $I->see('Signup', 'h1');
51   - $I->see('Please fill out the following fields to signup:');
52   -
53   - $I->amGoingTo('submit signup form with no data');
54   -
55   - $signupPage->submit([]);
56   -
57   - $I->expectTo('see validation errors');
58   - $I->see('Username cannot be blank.', '.help-block');
59   - $I->see('Email cannot be blank.', '.help-block');
60   - $I->see('Password cannot be blank.', '.help-block');
61   -
62   - $I->amGoingTo('submit signup form with not correct email');
63   - $signupPage->submit([
64   - 'username' => 'tester',
65   - 'email' => 'tester.email',
66   - 'password' => 'tester_password',
67   - ]);
68   -
69   - $I->expectTo('see that email address is wrong');
70   - $I->dontSee('Username cannot be blank.', '.help-block');
71   - $I->dontSee('Password cannot be blank.', '.help-block');
72   - $I->see('Email is not a valid email address.', '.help-block');
73   -
74   - $I->amGoingTo('submit signup form with correct email');
75   - $signupPage->submit([
76   - 'username' => 'tester',
77   - 'email' => 'tester.email@example.com',
78   - 'password' => 'tester_password',
79   - ]);
80   -
81   - $I->expectTo('see that user is created');
82   - $I->seeRecord('common\models\User', [
83   - 'username' => 'tester',
84   - 'email' => 'tester.email@example.com',
85   - ]);
86   -
87   - $I->expectTo('see that user logged in');
88   - $I->seeLink('Logout (tester)');
89   - }
90   -}
tests/codeception/frontend/functional/_bootstrap.php deleted
1   -<?php
2   -
3   -new yii\web\Application(require(dirname(dirname(__DIR__)) . '/config/frontend/functional.php'));
tests/codeception/frontend/unit.suite.yml deleted
1   -# Codeception Test Suite Configuration
2   -
3   -# suite for unit (internal) tests.
4   -# RUN `build` COMMAND AFTER ADDING/REMOVING MODULES.
5   -
6   -class_name: UnitTester