ILIAS  release_7 Revision v7.30-3-g800a261c036
ilMailMimeSubjectBuilderTest Class Reference
+ Inheritance diagram for ilMailMimeSubjectBuilderTest:
+ Collaboration diagram for ilMailMimeSubjectBuilderTest:

Public Member Functions

 globalSubjectPrefixOnlyProvider ()
 
 subjectPrefixesProvider ()
 
 testSubjectMustNotBeChangedWhenNotPrefixShouldBeAdded ()
 
 testGlobalPrefixMustBePrependedWhenDefinedAndPrefixShouldBeAppended (string $globalPrefix, string $expectedSubject)
 @dataProvider globalSubjectPrefixOnlyProvider More...
 
 testDefaultPrefixMustBePrependedWhenNoGlobalPrefixIsDefinedAndPrefixShouldBeAppended ()
 
 testContextPrefixMustBePrependedWhenGivenAndPrefixShouldBeAppended ( $globalPrefix, string $contextPrefix, string $expectedSubject)
 @dataProvider subjectPrefixesProvider More...
 

Private Attributes

const DEFAULT_PREFIX = 'docu default'
 

Additional Inherited Members

- Protected Member Functions inherited from ilMailBaseTest
 setUp ()
 
 setGlobalVariable (string $name, $value)
 

Detailed Description

Author
Michael Jansen mjans.nosp@m.en@d.nosp@m.ataba.nosp@m.y.de

Definition at line 7 of file ilMailMimeSubjectBuilderTest.php.

Member Function Documentation

◆ globalSubjectPrefixOnlyProvider()

ilMailMimeSubjectBuilderTest::globalSubjectPrefixOnlyProvider ( )
Returns
array<string, array<int, string>>

Definition at line 14 of file ilMailMimeSubjectBuilderTest.php.

14 : array
15 {
16 return [
17 'Global Prefix without Brackets' => ['docu', 'docu %s'],
18 'Global Prefix with Brackets' => ['[docu]', '[docu] %s'],
19 ];
20 }

◆ subjectPrefixesProvider()

ilMailMimeSubjectBuilderTest::subjectPrefixesProvider ( )
Returns
array<string, array<int, string|false>>

Definition at line 25 of file ilMailMimeSubjectBuilderTest.php.

25 : array
26 {
27 return [
28 'Global Prefix without Brackets and Additional Context Prefix' => ['docu', 'Course', '[docu : Course] %s'],
29 'Global Prefix with Brackets and Additional Context Prefix' => ['[docu]', 'Course', '[docu : Course] %s'],
30 'Empty Global Prefix with Brackets and Additional Context Prefix' => [
31 '', // The administrator saved the global email settings form with an empty global subject prefix
32 'Course',
33 '[Course] %s'
34 ],
35 'Absent Global Prefix with Brackets and Additional Context Prefix' => [
36 false, // The administrator did not save the global email settings form, yet
37 'Course',
38 '[' . self::DEFAULT_PREFIX . ' : Course] %s'
39 ],
40 ];
41 }

◆ testContextPrefixMustBePrependedWhenGivenAndPrefixShouldBeAppended()

ilMailMimeSubjectBuilderTest::testContextPrefixMustBePrependedWhenGivenAndPrefixShouldBeAppended (   $globalPrefix,
string  $contextPrefix,
string  $expectedSubject 
)

@dataProvider subjectPrefixesProvider

Parameters
string | false$globalPrefix
string$contextPrefix
string$expectedSubject

Definition at line 90 of file ilMailMimeSubjectBuilderTest.php.

94 : void {
95 $settings = $this->getMockBuilder(ilSetting::class)->onlyMethods(['get'])->disableOriginalConstructor()->getMock();
96 $settings->expects($this->once())->method('get')->with('mail_subject_prefix')->willReturn($globalPrefix);
97
98 $subjectBuilder = new ilMailMimeSubjectBuilder($settings, self::DEFAULT_PREFIX);
99
100 $subject = 'phpunit';
101 $expectedSubject = sprintf($expectedSubject, $subject);
102 $this->assertEquals($expectedSubject, $subjectBuilder->subject($subject, true, $contextPrefix));
103 }
Class ilMailMimeSubjectBuilder.

◆ testDefaultPrefixMustBePrependedWhenNoGlobalPrefixIsDefinedAndPrefixShouldBeAppended()

ilMailMimeSubjectBuilderTest::testDefaultPrefixMustBePrependedWhenNoGlobalPrefixIsDefinedAndPrefixShouldBeAppended ( )

Definition at line 72 of file ilMailMimeSubjectBuilderTest.php.

72 : void
73 {
74 $settings = $this->getMockBuilder(ilSetting::class)->onlyMethods(['get'])->disableOriginalConstructor()->getMock();
75 $settings->expects($this->once())->method('get')->with('mail_subject_prefix')->willReturn(false);
76
77 $subjectBuilder = new ilMailMimeSubjectBuilder($settings, self::DEFAULT_PREFIX);
78
79 $subject = 'phpunit';
80 $expectedSubject = self::DEFAULT_PREFIX . ' ' . $subject;
81 $this->assertEquals($expectedSubject, $subjectBuilder->subject($subject, true));
82 }

◆ testGlobalPrefixMustBePrependedWhenDefinedAndPrefixShouldBeAppended()

ilMailMimeSubjectBuilderTest::testGlobalPrefixMustBePrependedWhenDefinedAndPrefixShouldBeAppended ( string  $globalPrefix,
string  $expectedSubject 
)

@dataProvider globalSubjectPrefixOnlyProvider

Parameters
string$globalPrefix
string$expectedSubject

Definition at line 58 of file ilMailMimeSubjectBuilderTest.php.

61 : void {
62 $settings = $this->getMockBuilder(ilSetting::class)->onlyMethods(['get'])->disableOriginalConstructor()->getMock();
63 $settings->expects($this->once())->method('get')->with('mail_subject_prefix')->willReturn($globalPrefix);
64
65 $subjectBuilder = new ilMailMimeSubjectBuilder($settings, self::DEFAULT_PREFIX);
66
67 $subject = 'phpunit';
68 $expectedSubject = sprintf($expectedSubject, $subject);
69 $this->assertEquals($expectedSubject, $subjectBuilder->subject($subject, true));
70 }

◆ testSubjectMustNotBeChangedWhenNotPrefixShouldBeAdded()

ilMailMimeSubjectBuilderTest::testSubjectMustNotBeChangedWhenNotPrefixShouldBeAdded ( )

Definition at line 43 of file ilMailMimeSubjectBuilderTest.php.

43 : void
44 {
45 $settings = $this->getMockBuilder(ilSetting::class)->onlyMethods(['get'])->disableOriginalConstructor()->getMock();
46 $subjectBuilder = new ilMailMimeSubjectBuilder($settings, self::DEFAULT_PREFIX);
47
48 $subject = 'phpunit';
49 $this->assertEquals($subject, $subjectBuilder->subject($subject, false));
50 $this->assertEquals($subject, $subjectBuilder->subject($subject, false, 'Course'));
51 }

Field Documentation

◆ DEFAULT_PREFIX

const ilMailMimeSubjectBuilderTest::DEFAULT_PREFIX = 'docu default'
private

Definition at line 9 of file ilMailMimeSubjectBuilderTest.php.


The documentation for this class was generated from the following file: