ILIAS  trunk Revision v12.0_alpha-1221-g4e438232683
ilMailTemplateContextTest Class Reference
+ Inheritance diagram for ilMailTemplateContextTest:
+ Collaboration diagram for ilMailTemplateContextTest:

Public Member Functions

 getAnonymousTemplateContext (OrgUnitUserService $org_unit_user_service, ilMailEnvironmentHelper $il_mail_environment_helper, ilMailUserHelper $mail_user_helper, ilMailLanguageHelper $language_helper)
 

Static Public Member Functions

static userProvider ()
 

Private Member Functions

 generateOrgUnitUsers (Closure $mock_builder, int $amount)
 

Additional Inherited Members

- Protected Member Functions inherited from ilMailBaseTestCase
 brutallyTrimHTML (string $html)
 
 setUp ()
 
 tearDown ()
 
 setGlobalVariable (string $name, $value)
 

Detailed Description

Definition at line 28 of file ilMailTemplateContextTest.php.

Member Function Documentation

◆ generateOrgUnitUsers()

ilMailTemplateContextTest::generateOrgUnitUsers ( Closure  $mock_builder,
int  $amount 
)
private
Parameters
Closure()MockBuilder<ilOrgUnitUser> $mock_builder
Returns
array<int, ilOrgUnitUser&MockObject>

Definition at line 72 of file ilMailTemplateContextTest.php.

72 : array
73 {
74 $users = [];
75
76 for ($i = 1; $i <= $amount; $i++) {
77 $user = $mock_builder()
78 ->disableOriginalConstructor()
79 ->onlyMethods(['getUserId',])
80 ->getMock();
81 $user->expects($this->atLeastOnce())->method('getUserId')->willReturn($i);
82
83 $users[$i] = $user;
84 }
85
86 return $users;
87 }

◆ getAnonymousTemplateContext()

ilMailTemplateContextTest::getAnonymousTemplateContext ( OrgUnitUserService  $org_unit_user_service,
ilMailEnvironmentHelper  $il_mail_environment_helper,
ilMailUserHelper  $mail_user_helper,
ilMailLanguageHelper  $language_helper 
)

Definition at line 30 of file ilMailTemplateContextTest.php.

36 return new class ($org_unit_user_service, $il_mail_environment_helper, $mail_user_helper, $language_helper) extends
38 public function getId(): string
39 {
40 return 'phpunuit';
41 }
42
43 public function getTitle(): string
44 {
45 return 'phpunuit';
46 }
47
48 public function getDescription(): string
49 {
50 return 'phpunuit';
51 }
52
53 public function getSpecificPlaceholders(): array
54 {
55 return [];
56 }
57
58 public function resolveSpecificPlaceholder(
59 string $placeholder_id,
60 array $context_parameters,
61 ?ilObjUser $recipient = null
62 ): string {
63 return '';
64 }
65 };
66 }
User class.
return['delivery_method'=> 'php',]
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...

◆ userProvider()

static ilMailTemplateContextTest::userProvider ( )
static
Returns
array<string, array{0: Closure(Closure(): MockBuilder<ilObjUser>): ilObjUser, 1: Closure(Closure(): MockBuilder<ilOrgUnitUser>): array{0: ilOrgUnitUser, 1: list<ilOrgUnitUser>}}>
Parameters
Closure()MockBuilder<ilObjUser> $mock_builder $mock_builder
Closure()MockBuilder<ilOrgUnitUser> $mock_builder
Returns
array{0: ilOrgUnitUser&MockObject, 1: list<ilOrgUnitUser&MockObject>}

Definition at line 92 of file ilMailTemplateContextTest.php.

92 : array
93 {
94 $test_users = [];
95
96 foreach (
97 [
98 ['gender' => 'm', 'num_superiors' => 2,],
99 ['gender' => 'n', 'num_superiors' => 1,],
100 ['gender' => 'f', 'num_superiors' => 0,],
101 ['gender' => '', 'num_superiors' => 3,],
102 ] as $definition
103 ) {
107 $user_callable = function (Closure $mock_builder) use ($definition): ilObjUser&MockObject {
108 $user = $mock_builder()
109 ->disableOriginalConstructor()
110 ->onlyMethods([
111 'getLanguage',
112 'getUTitle',
113 'getLogin',
114 'getLastname',
115 'getFirstname',
116 'getGender',
117 'getId',
118 ])
119 ->getMock();
120
121 $user->expects($this->atLeastOnce())->method('getLanguage')->willReturn('de');
122 $user->expects($this->atLeastOnce())->method('getUTitle')->willReturn('###Dr. Ing###');
123 $user->expects($this->atLeastOnce())->method('getLogin')->willReturn('###phpunit###');
124 $user->expects($this->atLeastOnce())->method('getLastname')->willReturn('###Unit###');
125 $user->expects($this->atLeastOnce())->method('getFirstname')->willReturn('###PHP###');
126 $user->expects($this->atLeastOnce())->method('getGender')->willReturn($definition['gender']);
127 $user->expects($this->atLeastOnce())->method('getId')->willReturn(4711);
128
129 return $user;
130 };
131
136 $ou_user_callable = function (Closure $mock_builder) use ($definition): array {
137 $ou_user = $mock_builder()
138 ->disableOriginalConstructor()
139 ->onlyMethods(['getSuperiors',])
140 ->getMock();
141
142 $superiors = $this->generateOrgUnitUsers($mock_builder, $definition['num_superiors']);
143 $ou_user->expects($this->atLeastOnce())->method('getSuperiors')->willReturn($superiors);
144
145 return [$ou_user, $superiors];
146 };
147
148 $test_users[sprintf(
149 'User with gender "%s" and %s superiors',
150 $definition['gender'],
151 $definition['num_superiors']
152 )] = [$user_callable, $ou_user_callable];
153 }
154
155 return $test_users;
156 }
generateOrgUnitUsers(Closure $mock_builder, int $amount)

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