Completed
Pull Request — master (#22)
by Sergey
15:20 queued 20s
created

EventsTest   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 42
Duplicated Lines 0 %

Coupling/Cohesion

Components 2
Dependencies 4

Importance

Changes 0
Metric Value
wmc 4
lcom 2
cbo 4
dl 0
loc 42
rs 10
c 0
b 0
f 0

4 Methods

Rating   Name   Duplication   Size   Complexity  
A setUpBeforeClass() 0 5 1
A testSavingAndSaved() 0 12 1
A testDeletingAndDelete() 0 15 1
A testTearDown() 0 4 1
1
<?php
2
3
namespace Isswp101\Persimmon\Test;
4
5
use Isswp101\Persimmon\Test\Models\EventableModel;
6
7
class EventsTest extends BaseTestCase
8
{
9
    public static function setUpBeforeClass()
10
    {
11
        $hash = time();
12
        EventableModel::$_index = 'travis_ci_test_events' . $hash;
13
    }
14
15
    public function testSavingAndSaved()
16
    {
17
        $model = new EventableModel();
18
        $model->id = 1;
19
        $model->save();
20
21
        $path = $model->getPath()->toArray();
22
        $res = $this->es->get($path);
23
24
        $this->assertEquals(100500, $res['_source']['price']);
25
        $this->assertEquals(1050, $model->price);
26
    }
27
28
    public function testDeletingAndDelete()
29
    {
30
        $model = new EventableModel();
31
        $model->id = 2;
32
        $model->save();
33
34
        $model->delete();
35
        $this->assertTrue($model->_exist);
36
37
        $model->price = 100;
38
39
        $model->delete();
40
        $this->assertFalse($model->_exist);
41
        $this->assertEquals(1, $model->price);
42
    }
43
44
    public function testTearDown()
45
    {
46
        $this->deleteIndex(EventableModel::$_index);
47
    }
48
}
49