/
CustomMappedDecoratorTest.php
79 lines (64 loc) · 2.43 KB
/
CustomMappedDecoratorTest.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
<?php
/*
* @copyright 2017 Mautic Contributors. All rights reserved
* @author Mautic, Inc.
*
* @link https://mautic.org
*
* @license GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
*/
namespace Mautic\LeadBundle\Tests\Segment\Decorator;
use Mautic\LeadBundle\Segment\ContactSegmentFilterCrate;
use Mautic\LeadBundle\Segment\ContactSegmentFilterOperator;
use Mautic\LeadBundle\Segment\Decorator\CustomMappedDecorator;
use Mautic\LeadBundle\Services\ContactSegmentFilterDictionary;
class CustomMappedDecoratorTest extends \PHPUnit_Framework_TestCase
{
protected function setUp()
{
parent::setUp();
defined('MAUTIC_TABLE_PREFIX') or define('MAUTIC_TABLE_PREFIX', '');
}
/**
* @covers \Mautic\LeadBundle\Segment\Decorator\CustomMappedDecorator::getField
*/
public function testGetField()
{
$customMappedDecorator = $this->getDecorator();
$contactSegmentFilterCrate = new ContactSegmentFilterCrate([
'field' => 'lead_email_read_count',
]);
$this->assertSame('open_count', $customMappedDecorator->getField($contactSegmentFilterCrate));
}
/**
* @covers \Mautic\LeadBundle\Segment\Decorator\CustomMappedDecorator::getTable
*/
public function testGetTable()
{
$customMappedDecorator = $this->getDecorator();
$contactSegmentFilterCrate = new ContactSegmentFilterCrate([
'field' => 'lead_email_read_count',
]);
$this->assertSame(MAUTIC_TABLE_PREFIX.'email_stats', $customMappedDecorator->getTable($contactSegmentFilterCrate));
}
/**
* @covers \Mautic\LeadBundle\Segment\Decorator\CustomMappedDecorator::getQueryType
*/
public function testGetQueryType()
{
$customMappedDecorator = $this->getDecorator();
$contactSegmentFilterCrate = new ContactSegmentFilterCrate([
'field' => 'dnc_bounced',
]);
$this->assertSame('mautic.lead.query.builder.special.dnc', $customMappedDecorator->getQueryType($contactSegmentFilterCrate));
}
/**
* @return CustomMappedDecorator
*/
private function getDecorator()
{
$contactSegmentFilterOperator = $this->createMock(ContactSegmentFilterOperator::class);
$contactSegmentFilterDictionary = new ContactSegmentFilterDictionary();
return new CustomMappedDecorator($contactSegmentFilterOperator, $contactSegmentFilterDictionary);
}
}