Skip to content

Commit d4ff824

Browse files
committed
Merge branch 'master' of github.com:Codeception/codeception.github.com
2 parents fa345e9 + 3835c4d commit d4ff824

File tree

14 files changed

+235
-66
lines changed

14 files changed

+235
-66
lines changed

builds.markdown

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@ title: Codeception Builds
77
## 2.2
88
*Requires: PHP 5.4 and higher + CURL*
99

10-
* **[Download Latest 2.2 Release](http://codeception.com/releases/2.2.3/codecept.phar)**
10+
* **[Download Latest 2.2 Release](http://codeception.com/releases/2.2.4/codecept.phar)**
11+
* [2.2.4](http://codeception.com/releases/2.2.4/codecept.phar), [for PHP 5.4 or 5.5](http://codeception.com/releases/2.2.4/php54/codecept.phar)
1112
* [2.2.3](http://codeception.com/releases/2.2.3/codecept.phar), [for PHP 5.4 or 5.5](http://codeception.com/releases/2.2.3/php54/codecept.phar)
1213
* [2.2.2](http://codeception.com/releases/2.2.2/codecept.phar), [for PHP 5.4 or 5.5](http://codeception.com/releases/2.2.2/php54/codecept.phar)
1314
* [2.2.1](http://codeception.com/releases/2.2.1/codecept.phar), [for PHP 5.4 or 5.5](http://codeception.com/releases/2.2.1/php54/codecept.phar)

changelog.markdown

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,25 @@ title: Codeception Changelog
77

88
# Changelog
99

10+
#### 2.2.4
11+
12+
* Improved using complex params, nested params can be set using dot (`.`). See [#3339](https://github.com/Codeception/Codeception/issues/3339)
13+
* **[Yii2]** Mailer mock is now configured with options that make sense for it. Fixes [#3382](https://github.com/Codeception/Codeception/issues/3382)
14+
* **[Yii2]** Fixed creating `@webroot` directory on running functional tests. See [#3387](https://github.com/Codeception/Codeception/issues/3387)
15+
* **[Yii2]** Fixed regression in Yii 2 connector not allowing to work with output of error pages in functional tests. Fixes [#3332](https://github.com/Codeception/Codeception/issues/3332)
16+
* **[Mongo]** support of standard mongodump/mongorestore tools to populate mongo db database. Thanks **[GSokol](https://github.com/GSokol)**. Fixes [#3427](https://github.com/Codeception/Codeception/issues/3427)
17+
* **[REST]** `seeResponseIsJson` fails when response is empty. See [#3401](https://github.com/Codeception/Codeception/issues/3401), closes [#3400](https://github.com/Codeception/Codeception/issues/3400)
18+
* **[AMQP]** Added `purgeQueue` and `purgeAllQueues` actions. By **[niclopez](https://github.com/niclopez)**
19+
* **[DataFactory]** `haveMultiple` fixed; corrected the order of arguments in `FactoryMuffin->seed`. See [#3413](https://github.com/Codeception/Codeception/issues/3413) by **[buffcode](https://github.com/buffcode)**
20+
* **[SOAP]** Improved error reporting by **[eXorus](https://github.com/eXorus)** See [#3426](https://github.com/Codeception/Codeception/issues/3426) [#3422](https://github.com/Codeception/Codeception/issues/3422)
21+
* **[SOAP]** Added `SOAPAction` config param to unset `SOAPAction` header in SOAP >= 1.2. See [#3396](https://github.com/Codeception/Codeception/issues/3396)
22+
* **[REST]** fixed digest authentication. See [#3416](https://github.com/Codeception/Codeception/issues/3416)
23+
* **[Laravel5]** Fixed an issue with error handling for Laravel 5.3. See [#3420](https://github.com/Codeception/Codeception/issues/3420). By **[bonsi](https://github.com/bonsi)**.
24+
* **[Laravel5]** Fixed an issue with uploaded files. See [#3417](https://github.com/Codeception/Codeception/issues/3417). By **[torkiljohnsen](https://github.com/torkiljohnsen)**.
25+
* **[ZF2]** Support for zend-mvc 3.0
26+
* **[Db]** Error is thrown if SQLite memory is used. [#3319](https://github.com/Codeception/Codeception/issues/3319)
27+
* **[Frameworks]** `REQUEST_TIME` server variable to be set on request. By **[gimler](https://github.com/gimler)**. Fixes [#3374](https://github.com/Codeception/Codeception/issues/3374)
28+
1029
#### 2.2.3
1130

1231
* **[Yii2]** Improvements:
@@ -20,6 +39,7 @@ title: Codeception Changelog
2039
* added `seeEmailIsSent`, `grabLastSentEmail`, etc and email part.
2140
* assetManager disabled for unit/functional tests.
2241
* Fixed `@example` to `@group` defined in group files. By **[eXorus](https://github.com/eXorus)**. Fixes [#3278](https://github.com/Codeception/Codeception/issues/3278)
42+
* Added `ReqiuiresPackage` interface to set external dependencies for modules.
2343
* Fixed timing values in output. Closes [#3331](https://github.com/Codeception/Codeception/issues/3331)
2444
* Fixed merging module configs. Closes [#3292](https://github.com/Codeception/Codeception/issues/3292)
2545
* [Recorder Extension] Fixes saving of files on windows and with using examples.

codecept.phar

18.5 KB
Binary file not shown.

docs/modules/AMQP.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,32 @@ $message = $I->grabMessageFromQueue('queue.emails');
6868
* `return` AMQPMessage
6969

7070

71+
#### purgeAllQueues
72+
73+
Purge all queues defined in config.
74+
75+
{% highlight php %}
76+
77+
<?php
78+
$I->purgeAllQueues();
79+
?>
80+
81+
{% endhighlight %}
82+
83+
84+
#### purgeQueue
85+
86+
Purge a specific queue defined in config.
87+
88+
{% highlight php %}
89+
90+
<?php
91+
$I->purgeQueue('queue.emails');
92+
?>
93+
94+
{% endhighlight %}
95+
96+
7197
#### pushToExchange
7298

7399
Sends message to exchange by sending exchange name, message

docs/modules/MongoDb.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,13 @@ To have your database properly cleaned you should configure it to access the dat
1717

1818
In order to have your database populated with data you need a valid js file with data (of the same style which can be fed up to mongo binary)
1919
File can be generated by RockMongo export command
20+
You can also use directoy, generated by {% highlight yaml %}
21+
mongodump
22+
{% endhighlight %} tool or it's {% highlight yaml %}
23+
.tar.gz
24+
{% endhighlight %} archive (not available for Windows systems), generated by {% highlight yaml %}
25+
tar -czf <archve_file_name>.tar.gz <path_to dump directory>
26+
{% endhighlight %}.
2027
Just put it in {% highlight yaml %}
2128
tests/_data
2229
{% endhighlight %} dir (by default) and specify path to it in config.
@@ -41,6 +48,9 @@ Check out the driver if you get problems loading dumps and cleaning databases.
4148
* dsn *required* - MongoDb DSN with the db name specified at the end of the host after slash
4249
* user *required* - user to access database
4350
* password *required* - password
51+
* dump_type *required* - type of dump.
52+
One of 'js' (MongoDb::DUMP_TYPE_JS), 'mongodump' (MongoDb::DUMP_TYPE_MONGODUMP) or 'mongodump-tar-gz' (MongoDb::DUMP_TYPE_MONGODUMP_TAR_GZ).
53+
default: MongoDb::DUMP_TYPE_JS).
4454
* dump - path to database dump
4555
* populate: true - should the dump be loaded before test suite is started.
4656
* cleanup: true - should the dump be reloaded after each test

docs/modules/Redis.md

Lines changed: 100 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -21,13 +21,27 @@ to interact with a Redis server.
2121

2222
* **`host`** (`string`, default `'127.0.0.1'`) - The Redis host
2323
* **`port`** (`int`, default `6379`) - The Redis port
24-
* **`database`** (`int`, no default) - The Redis database. Needs to be explicitely specified.
24+
* **`database`** (`int`, no default) - The Redis database. Needs to be explicitly specified.
2525
* **`cleanupBefore`**: (`string`, default `'suite'`) - Whether/when to flush the database:
2626
* `suite`: at the beginning of every suite
2727
* `test`: at the beginning of every test
2828
* Any other value: never
2929

30+
#### Example (`unit.suite.yml`)
31+
32+
{% highlight yaml %}
33+
34+
modules:
35+
- Redis:
36+
host: '127.0.0.1'
37+
port: 6379
38+
database: 0
39+
cleanupBefore: 'test'
40+
41+
{% endhighlight %}
42+
3043
### Public Properties
44+
3145
* **driver** - Contains the Predis client/driver
3246

3347
@author Marc Verney <marc@marcverney.net>
@@ -50,19 +64,25 @@ provided $value
5064
Examples:
5165

5266
{% highlight php %}
53-
?start_inline=1
67+
68+
<?php
5469
// With only one argument, only checks the key does not exist
5570
$I->dontSeeInRedis('example:string');
71+
5672
// Checks a String does not exist or its value is not the one provided
5773
$I->dontSeeInRedis('example:string', 'life');
74+
5875
// Checks a List does not exist or its value is not the one provided (order of elements is compared).
59-
$I->dontSeeInRedis('example:list', ['riri', 'fifi', 'loulou'])
76+
$I->dontSeeInRedis('example:list', ['riri', 'fifi', 'loulou']);
77+
6078
// Checks a Set does not exist or its value is not the one provided (order of members is ignored).
61-
$I->dontSeeInRedis('example:set', ['riri', 'fifi', 'loulou'])
79+
$I->dontSeeInRedis('example:set', ['riri', 'fifi', 'loulou']);
80+
6281
// Checks a ZSet does not exist or its value is not the one provided (scores are required, order of members is compared)
63-
$I->dontSeeInRedis('example:zset', ['riri' => 1, 'fifi' => 2, 'loulou' => 3])
82+
$I->dontSeeInRedis('example:zset', ['riri' => 1, 'fifi' => 2, 'loulou' => 3]);
83+
6484
// Checks a Hash does not exist or its value is not the one provided (order of members is ignored).
65-
$I->dontSeeInRedis('example:hash', ['riri' => true, 'fifi' => 'Dewey', 'loulou' => 2])
85+
$I->dontSeeInRedis('example:hash', ['riri' => true, 'fifi' => 'Dewey', 'loulou' => 2]);
6686

6787
{% endhighlight %}
6888

@@ -78,21 +98,28 @@ Asserts that a given key does not contain a given item
7898
Examples:
7999

80100
{% highlight php %}
81-
?start_inline=1
101+
102+
<?php
82103
// Strings: performs a substring search
83-
$I->dontSeeRedisKeyContains('example:string', 'bar') // true for foobar
104+
$I->dontSeeRedisKeyContains('string', 'bar');
105+
84106
// Lists
85-
$I->dontSeeRedisKeyContains('example:list', 'poney')
107+
$I->dontSeeRedisKeyContains('example:list', 'poney');
108+
86109
// Sets
87-
$I->dontSeeRedisKeyContains('example:set', 'cat')
110+
$I->dontSeeRedisKeyContains('example:set', 'cat');
111+
88112
// ZSets: check whether the zset has this member
89-
$I->dontSeeRedisKeyContains('example:zset', 'jordan')
113+
$I->dontSeeRedisKeyContains('example:zset', 'jordan');
114+
90115
// ZSets: check whether the zset has this member with this score
91-
$I->dontSeeRedisKeyContains('example:zset', 'jordan', 23)
116+
$I->dontSeeRedisKeyContains('example:zset', 'jordan', 23);
117+
92118
// Hashes: check whether the hash has this field
93-
$I->dontSeeRedisKeyContains('example:hash', 'magic')
119+
$I->dontSeeRedisKeyContains('example:hash', 'magic');
120+
94121
// Hashes: check whether the hash has this field with this value
95-
$I->dontSeeRedisKeyContains('example:hash', 'magic', 32)
122+
$I->dontSeeRedisKeyContains('example:hash', 'magic', 32);
96123

97124
{% endhighlight %}
98125

@@ -111,25 +138,34 @@ Returns the value of a given key
111138
Examples:
112139

113140
{% highlight php %}
114-
?start_inline=1
141+
142+
<?php
115143
// Strings
116-
$I->grabFromRedis('example:string')
144+
$I->grabFromRedis('string');
145+
117146
// Lists: get all members
118-
$I->grabFromRedis('example:list')
147+
$I->grabFromRedis('example:list');
148+
119149
// Lists: get a specific member
120-
$I->grabFromRedis('example:list', 2)
150+
$I->grabFromRedis('example:list', 2);
151+
121152
// Lists: get a range of elements
122-
$I->grabFromRedis('example:list', 2, 4)
153+
$I->grabFromRedis('example:list', 2, 4);
154+
123155
// Sets: get all members
124-
$I->grabFromRedis('example:set')
156+
$I->grabFromRedis('example:set');
157+
125158
// ZSets: get all members
126-
$I->grabFromRedis('example:zset')
159+
$I->grabFromRedis('example:zset');
160+
127161
// ZSets: get a range of members
128-
$I->grabFromRedis('example:zset', 3, 12)
162+
$I->grabFromRedis('example:zset', 3, 12);
163+
129164
// Hashes: get all fields of a key
130-
$I->grabFromRedis('example:hash')
165+
$I->grabFromRedis('example:hash');
166+
131167
// Hashes: get a specific field of a key
132-
$I->grabFromRedis('example:hash', 'foo')
168+
$I->grabFromRedis('example:hash', 'foo');
133169

134170
{% endhighlight %}
135171

@@ -151,17 +187,22 @@ If $key already exists:
151187
Examples:
152188

153189
{% highlight php %}
154-
?start_inline=1
190+
191+
<?php
155192
// Strings: $value must be a scalar
156-
$I->haveInRedis('example:string', 'Obladi Oblada')
193+
$I->haveInRedis('string', 'Obladi Oblada');
194+
157195
// Lists: $value can be a scalar or an array
158-
$I->haveInRedis('example:list', ['riri', 'fifi', 'loulou'])
196+
$I->haveInRedis('list', ['riri', 'fifi', 'loulou']);
197+
159198
// Sets: $value can be a scalar or an array
160-
$I->haveInRedis('example:set', ['riri', 'fifi', 'loulou'])
199+
$I->haveInRedis('set', ['riri', 'fifi', 'loulou']);
200+
161201
// ZSets: $value must be an associative array with scores
162-
$I->haveInRedis('example:set', ['riri' => 1, 'fifi' => 2, 'loulou' => 3])
202+
$I->haveInRedis('set', ['riri' => 1, 'fifi' => 2, 'loulou' => 3]);
203+
163204
// Hashes: $value must be an associative array
164-
$I->haveInRedis('example:hash', ['obladi' => 'oblada'])
205+
$I->haveInRedis('hash', ['obladi' => 'oblada']);
165206

166207
{% endhighlight %}
167208

@@ -174,24 +215,30 @@ $I->haveInRedis('example:hash', ['obladi' => 'oblada'])
174215

175216
#### seeInRedis
176217

177-
Asserts that a key exists, and optionaly that it has the provided $value
218+
Asserts that a key exists, and optionally that it has the provided $value
178219

179220
Examples:
180221

181222
{% highlight php %}
182-
?start_inline=1
223+
224+
<?php
183225
// With only one argument, only checks the key exists
184226
$I->seeInRedis('example:string');
227+
185228
// Checks a String exists and has the value "life"
186229
$I->seeInRedis('example:string', 'life');
230+
187231
// Checks the value of a List. Order of elements is compared.
188-
$I->seeInRedis('example:list', ['riri', 'fifi', 'loulou'])
232+
$I->seeInRedis('example:list', ['riri', 'fifi', 'loulou']);
233+
189234
// Checks the value of a Set. Order of members is ignored.
190-
$I->seeInRedis('example:set', ['riri', 'fifi', 'loulou'])
235+
$I->seeInRedis('example:set', ['riri', 'fifi', 'loulou']);
236+
191237
// Checks the value of a ZSet. Scores are required. Order of members is compared.
192-
$I->seeInRedis('example:zset', ['riri' => 1, 'fifi' => 2, 'loulou' => 3])
238+
$I->seeInRedis('example:zset', ['riri' => 1, 'fifi' => 2, 'loulou' => 3]);
239+
193240
// Checks the value of a Hash. Order of members is ignored.
194-
$I->seeInRedis('example:hash', ['riri' => true, 'fifi' => 'Dewey', 'loulou' => 2])
241+
$I->seeInRedis('example:hash', ['riri' => true, 'fifi' => 'Dewey', 'loulou' => 2]);
195242

196243
{% endhighlight %}
197244

@@ -207,21 +254,28 @@ Asserts that a given key contains a given item
207254
Examples:
208255

209256
{% highlight php %}
210-
?start_inline=1
257+
258+
<?php
211259
// Strings: performs a substring search
212-
$I->seeRedisKeyContains('example:string', 'bar') // true for foobar
260+
$I->seeRedisKeyContains('example:string', 'bar');
261+
213262
// Lists
214-
$I->seeRedisKeyContains('example:list', 'poney')
263+
$I->seeRedisKeyContains('example:list', 'poney');
264+
215265
// Sets
216-
$I->seeRedisKeyContains('example:set', 'cat')
266+
$I->seeRedisKeyContains('example:set', 'cat');
267+
217268
// ZSets: check whether the zset has this member
218-
$I->seeRedisKeyContains('example:zset', 'jordan')
269+
$I->seeRedisKeyContains('example:zset', 'jordan');
270+
219271
// ZSets: check whether the zset has this member with this score
220-
$I->seeRedisKeyContains('example:zset', 'jordan', 23)
272+
$I->seeRedisKeyContains('example:zset', 'jordan', 23);
273+
221274
// Hashes: check whether the hash has this field
222-
$I->seeRedisKeyContains('example:hash', 'magic')
275+
$I->seeRedisKeyContains('example:hash', 'magic');
276+
223277
// Hashes: check whether the hash has this field with this value
224-
$I->seeRedisKeyContains('example:hash', 'magic', 32)
278+
$I->seeRedisKeyContains('example:hash', 'magic', 32);
225279

226280
{% endhighlight %}
227281

@@ -242,7 +296,8 @@ Every argument that follows the $command name will be passed to it.
242296
Examples:
243297

244298
{% highlight php %}
245-
?start_inline=1
299+
300+
<?php
246301
$I->sendCommandToRedis('incr', 'example:string');
247302
$I->sendCommandToRedis('strLen', 'example:string');
248303
$I->sendCommandToRedis('lPop', 'example:list');

docs/modules/SOAP.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ If you use PHP SoapServer with framework, try to block call to this method in te
3232
### Configuration
3333

3434
* endpoint *required* - soap wsdl endpoint
35+
* SOAPAction - replace SOAPAction HTTP header (Set to '' to SOAP 1.2)
3536

3637
### Public Properties
3738

docs/modules/ZF2.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,12 @@ This module allows you to run tests inside Zend Framework 2.
1515
File `init_autoloader` in project's root is required.
1616
Uses `tests/application.config.php` config file by default.
1717

18+
Note: services part and Doctrine integration is not compatible with ZF3 yet
19+
1820
### Status
1921

20-
* Maintainer: **bladeofsteel**
21-
* Stability: **alpha**
22-
* Contact: https://github.com/bladeofsteel
22+
* Maintainer: **Naktibalda**
23+
* Stability: **stable**
2324

2425
### Config
2526

@@ -33,7 +34,7 @@ Uses `tests/application.config.php` config file by default.
3334

3435
### Parts
3536

36-
* services - allows to use grabServiceFromContainer with WebDriver or PhpBrowser modules.
37+
* services - allows to use grabServiceFromContainer and addServiceToContainer with WebDriver or PhpBrowser modules.
3738

3839
Usage example:
3940

0 commit comments

Comments
 (0)