Skip to content

Commit dc6a5cd

Browse files
committed
updated tests
- thanks @Hanmac
1 parent b13ea95 commit dc6a5cd

File tree

5 files changed

+58
-126
lines changed

5 files changed

+58
-126
lines changed

tests/unit/Mage/Admin/Model/UserTest.php

Lines changed: 46 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -42,25 +42,17 @@ public static function setUpBeforeClass(): void
4242
*/
4343
public function testAuthenticate(bool|string $expectedResult, array $methods): void
4444
{
45+
$defaultMethods = ['loadByUsername' => null];
46+
$methods = array_merge($defaultMethods, $methods);
47+
4548
$mock = $this->getMockBuilder(Subject::class)
46-
->setMethods([
47-
'loadByUsername',
48-
'getId',
49-
'getUsername',
50-
'getPassword',
51-
'getIsActive',
52-
'validatePasswordHash',
53-
'hasAssigned2Role',
54-
])
49+
->setMethods(array_keys($methods))
5550
->getMock();
5651

5752
$mock->method('loadByUsername')->willReturnSelf();
58-
$mock->method('getId')->willReturn($methods['getId']);
59-
// $mock->expects($this->any())->method('getUsername')->willReturn($methods['getUsername']);
60-
$mock->method('getPassword')->willReturn($methods['getPassword']);
61-
$mock->method('validatePasswordHash')->willReturn($methods['validatePasswordHash']);
62-
$mock->method('getIsActive')->willReturn($methods['getIsActive']);
63-
$mock->method('hasAssigned2Role')->willReturn($methods['hasAssigned2Role']);
53+
foreach ($methods as $key => $value) {
54+
$mock->method($key)->willReturn($value);
55+
}
6456

6557
try {
6658
static::assertSame($expectedResult, $mock->authenticate($methods['getUsername'], $methods['getPassword']));
@@ -71,49 +63,46 @@ public function testAuthenticate(bool|string $expectedResult, array $methods): v
7163

7264
public function provideAuthenticateData(): Generator
7365
{
66+
$validData = [
67+
'getId' => '999',
68+
'getUsername' => 'new',
69+
'getPassword' => 'veryl0ngpassw0rd',
70+
'getIsActive' => '1',
71+
'validatePasswordHash' => true,
72+
'hasAssigned2Role' => true,
73+
];
74+
7475
yield 'pass' => [
7576
true,
76-
[
77-
'getId' => '1',
78-
'getUsername' => 'admin',
79-
'getPassword' => 'veryl0ngpassw0rd',
80-
'getIsActive' => '1',
81-
'validatePasswordHash' => true,
82-
'hasAssigned2Role' => true,
83-
],
77+
$validData,
8478
];
79+
80+
$data = $validData;
81+
$data['getUsername'] = 'admin';
82+
yield 'fail #0 account exists' => [
83+
'User Name already exists.',
84+
$data,
85+
];
86+
87+
$data = $validData;
88+
$data['getIsActive'] = '0';
8589
yield 'fail #1 inactive' => [
8690
'This account is inactive.',
87-
[
88-
'getId' => '1',
89-
'getUsername' => 'admin',
90-
'getPassword' => 'veryl0ngpassw0rd',
91-
'getIsActive' => '0',
92-
'validatePasswordHash' => true,
93-
'hasAssigned2Role' => true,
94-
],
91+
$data,
9592
];
93+
94+
$data = $validData;
95+
$data['validatePasswordHash'] = false;
9696
yield 'fail #2 invalid hash' => [
9797
false,
98-
[
99-
'getId' => '1',
100-
'getUsername' => 'admin',
101-
'getPassword' => 'veryl0ngpassw0rd',
102-
'getIsActive' => '1',
103-
'validatePasswordHash' => false,
104-
'hasAssigned2Role' => true,
105-
],
98+
$data,
10699
];
100+
101+
$data = $validData;
102+
$data['hasAssigned2Role'] = false;
107103
yield 'fail #3 no role assigned' => [
108104
'Access denied.',
109-
[
110-
'getId' => '1',
111-
'getUsername' => 'admin',
112-
'getPassword' => 'veryl0ngpassw0rd',
113-
'getIsActive' => '1',
114-
'validatePasswordHash' => true,
115-
'hasAssigned2Role' => false,
116-
],
105+
$data,
117106
];
118107
}
119108

@@ -126,18 +115,13 @@ public function provideAuthenticateData(): Generator
126115
public function testValidate($expectedResult, array $methods): void
127116
{
128117
$mock = $this->getMockBuilder(Subject::class)
129-
->setMethods([
130-
'hasNewPassword',
131-
'getNewPassword',
132-
'hasPassword',
133-
'getPassword',
134-
])
118+
->setMethods(array_keys($methods))
135119
->getMock();
136120

137-
$mock->method('hasNewPassword')->willReturn($methods['hasNewPassword']);
138-
$mock->method('getNewPassword')->willReturn($methods['getNewPassword']);
139-
$mock->method('hasPassword')->willReturn($methods['hasPassword']);
140-
$mock->method('getPassword')->willReturn($methods['getPassword']);
121+
foreach ($methods as $key => $value) {
122+
$mock->method($key)->willReturn($value);
123+
}
124+
141125
static::assertSame($expectedResult, $mock->validate());
142126
}
143127

@@ -222,14 +206,13 @@ public function testChangeResetPasswordLinkToken(): void
222206
public function testIsResetPasswordLinkTokenExpired(bool $expectedResult, array $methods): void
223207
{
224208
$mock = $this->getMockBuilder(Subject::class)
225-
->setMethods([
226-
'getRpToken',
227-
'getRpTokenCreatedAt',
228-
])
209+
->setMethods(array_keys($methods))
229210
->getMock();
230211

231-
$mock->method('getRpToken')->willReturn($methods['getRpToken']);
232-
$mock->method('getRpTokenCreatedAt')->willReturn($methods['getRpTokenCreatedAt']);
212+
foreach ($methods as $key => $value) {
213+
$mock->method($key)->willReturn($value);
214+
}
215+
233216
static::assertSame($expectedResult, $mock->isResetPasswordLinkTokenExpired());
234217
}
235218

tests/unit/Mage/Adminhtml/Block/Customer/Edit/Tab/NewsletterTest.php

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,6 @@ public function testInitForm(): void
4646

4747
$mock
4848
->method('getRegistryCurrentCustomer')
49-
// phpcs:ignore Ecg.Classes.ObjectInstantiation.DirectInstantiation
5049
->willReturn(new Mage_Customer_Model_Customer());
5150

5251
static::assertInstanceOf(Subject::class, $mock->initForm());

tests/unit/Mage/Api/Model/UserTest.php

Lines changed: 4 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -42,32 +42,12 @@ public static function setUpBeforeClass(): void
4242
public function testValidate($expectedResult, array $methods): void
4343
{
4444
$mock = $this->getMockBuilder(Subject::class)
45-
->setMethods([
46-
'getUsername',
47-
'getFirstname',
48-
'getLastname',
49-
'getEmail',
50-
'hasNewApiKey',
51-
'getNewApiKey',
52-
'hasApiKey',
53-
'getApiKey',
54-
'hasApiKeyConfirmation',
55-
'getApiKeyConfirmation',
56-
'userExists',
57-
])
45+
->setMethods(array_keys($methods))
5846
->getMock();
5947

60-
$mock->method('getUsername')->willReturn($methods['getUsername']);
61-
$mock->method('getFirstname')->willReturn($methods['getFirstname']);
62-
$mock->method('getLastname')->willReturn($methods['getLastname']);
63-
$mock->method('getEmail')->willReturn($methods['getEmail']);
64-
$mock->method('hasNewApiKey')->willReturn($methods['hasNewApiKey']);
65-
$mock->method('getNewApiKey')->willReturn($methods['getNewApiKey']);
66-
$mock->method('hasApiKey')->willReturn($methods['hasApiKey']);
67-
$mock->method('getApiKey')->willReturn($methods['getApiKey']);
68-
$mock->method('hasApiKeyConfirmation')->willReturn($methods['hasApiKeyConfirmation']);
69-
$mock->method('getApiKeyConfirmation')->willReturn($methods['getApiKeyConfirmation']);
70-
$mock->method('userExists')->willReturn($methods['userExists']);
48+
foreach ($methods as $key => $value) {
49+
$mock->method($key)->willReturn($value);
50+
}
7151

7252
static::assertSame($expectedResult, $mock->validate());
7353
}

tests/unit/Mage/Customer/Model/CustomerTest.php

Lines changed: 4 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -41,32 +41,12 @@ public static function setUpBeforeClass(): void
4141
public function testValidate($expectedResult, array $methods): void
4242
{
4343
$mock = $this->getMockBuilder(Subject::class)
44-
->setMethods([
45-
'getFirstname',
46-
'getLastname',
47-
'getEmail',
48-
'getPassword',
49-
'getPasswordConfirmation',
50-
'getDob',
51-
'getTaxvat',
52-
'getGender',
53-
'shouldValidateDob',
54-
'shouldValidateTaxvat',
55-
'shouldValidateGender',
56-
])
44+
->setMethods(array_keys($methods))
5745
->getMock();
5846

59-
$mock->method('getFirstname')->willReturn($methods['getFirstname']);
60-
$mock->method('getLastname')->willReturn($methods['getLastname']);
61-
$mock->method('getEmail')->willReturn($methods['getEmail']);
62-
$mock->method('getPassword')->willReturn($methods['getPassword']);
63-
$mock->method('getPasswordConfirmation')->willReturn($methods['getPasswordConfirmation']);
64-
$mock->method('getDob')->willReturn($methods['getDob']);
65-
$mock->method('getTaxvat')->willReturn($methods['getTaxvat']);
66-
$mock->method('getGender')->willReturn($methods['getGender']);
67-
$mock->method('shouldValidateDob')->willReturn($methods['shouldValidateDob']);
68-
$mock->method('shouldValidateTaxvat')->willReturn($methods['shouldValidateTaxvat']);
69-
$mock->method('shouldValidateGender')->willReturn($methods['shouldValidateGender']);
47+
foreach ($methods as $key => $value) {
48+
$mock->method($key)->willReturn($value);
49+
}
7050

7151
static::assertSame($expectedResult, $mock->validate());
7252
}

tests/unit/Mage/Review/Model/ReviewTest.php

Lines changed: 4 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -41,22 +41,12 @@ public static function setUpBeforeClass(): void
4141
public function testValidate($expectedResult, array $methods): void
4242
{
4343
$mock = $this->getMockBuilder(Subject::class)
44-
->setMethods([
45-
'getTitle',
46-
'getDetail',
47-
'getNickname',
48-
'getCustomerId',
49-
'getEntityId',
50-
'getStoreId',
51-
])
44+
->setMethods(array_keys($methods))
5245
->getMock();
5346

54-
$mock->method('getTitle')->willReturn($methods['getTitle']);
55-
$mock->method('getDetail')->willReturn($methods['getDetail']);
56-
$mock->method('getNickname')->willReturn($methods['getNickname']);
57-
$mock->method('getCustomerId')->willReturn($methods['getCustomerId']);
58-
$mock->method('getEntityId')->willReturn($methods['getEntityId']);
59-
$mock->method('getStoreId')->willReturn($methods['getStoreId']);
47+
foreach ($methods as $key => $value) {
48+
$mock->method($key)->willReturn($value);
49+
}
6050

6151
static::assertSame($expectedResult, $mock->validate());
6252
}

0 commit comments

Comments
 (0)