Skip to content

Commit ce3cc88

Browse files
committed
update fixtures and users schema
1 parent 4e1b7d8 commit ce3cc88

File tree

2 files changed

+219
-109
lines changed

2 files changed

+219
-109
lines changed

tests/Fixture/UsersFixture.php

Lines changed: 215 additions & 105 deletions
Original file line numberDiff line numberDiff line change
@@ -1,129 +1,239 @@
11
<?php
2+
declare(strict_types=1);
23
/**
3-
* Copyright 2016 - 2019, Cake Development Corporation (http://cakedc.com)
4+
* Copyright 2010 - 2019, Cake Development Corporation (https://www.cakedc.com)
45
*
56
* Licensed under The MIT License
67
* Redistributions of files must retain the above copyright notice.
78
*
8-
* @copyright Copyright 2016 - 2019, Cake Development Corporation (http://cakedc.com)
9+
* @copyright Copyright 2010 - 2019, Cake Development Corporation (https://www.cakedc.com)
910
* @license MIT License (http://www.opensource.org/licenses/mit-license.php)
1011
*/
1112

1213
namespace CakeDC\Api\Test\Fixture;
1314

14-
use Authentication\PasswordHasher\DefaultPasswordHasher;
15-
use Authentication\PasswordHasher\PasswordHasherFactory;
1615
use Cake\TestSuite\Fixture\TestFixture;
16+
use CakeDC\Users\Webauthn\Base64Utility;
1717

1818
/**
1919
* UsersFixture
2020
*/
2121
class UsersFixture extends TestFixture
2222
{
2323
/**
24-
* Records
24+
* Init method
2525
*
26-
* @var array
26+
* @return void
2727
*/
28-
public array $records = [
29-
[
30-
'id' => '00000000-0000-0000-0000-000000000001',
31-
'username' => 'user-1',
32-
'email' => '[email protected]',
33-
'password' => '12345',
34-
'first_name' => 'first1',
35-
'last_name' => 'last1',
36-
'token' => 'ae93ddbe32664ce7927cf0c5c5a5e59d',
37-
'token_expires' => '2035-06-24 17:33:54',
38-
'api_token' => 'yyy',
39-
'activation_date' => '2015-06-24 17:33:54',
40-
'tos_date' => '2015-06-24 17:33:54',
41-
'active' => true,
42-
'is_superuser' => true,
43-
'role' => 'admin',
44-
'created' => '2015-06-24 17:33:54',
45-
'modified' => '2015-06-24 17:33:54',
46-
],
47-
[
48-
'id' => '00000000-0000-0000-0000-000000000002',
49-
'username' => 'user-2',
50-
'email' => '[email protected]',
51-
'password' => '12345',
52-
'first_name' => 'user',
53-
'last_name' => 'second',
54-
'token' => '6614f65816754310a5f0553436dd89e9',
55-
'token_expires' => '2015-06-24 17:33:54',
56-
'api_token' => 'xxx',
57-
'activation_date' => '2015-06-24 17:33:54',
58-
'tos_date' => '2015-06-24 17:33:54',
59-
'active' => true,
60-
'is_superuser' => false,
61-
'role' => 'admin',
62-
'created' => '2015-06-24 17:33:54',
63-
'modified' => '2015-06-24 17:33:54',
64-
],
65-
[
66-
'id' => '00000000-0000-0000-0000-000000000004',
67-
'username' => 'user-4',
68-
'email' => '[email protected]',
69-
'password' => 'Lorem ipsum dolor sit amet',
70-
'first_name' => 'FirstName4',
71-
'last_name' => 'Lorem ipsum dolor sit amet',
72-
'token' => 'token-4',
73-
'token_expires' => '2030-06-24 17:33:54',
74-
'api_token' => 'zzz',
75-
'activation_date' => '2015-06-24 17:33:54',
76-
'tos_date' => '2015-06-24 17:33:54',
77-
'active' => true,
78-
'is_superuser' => false,
79-
'role' => 'Lorem ipsum dolor sit amet',
80-
'created' => '2015-06-24 17:33:54',
81-
'modified' => '2015-06-24 17:33:54',
82-
],
83-
[
84-
'id' => '00000000-0000-0000-0000-000000000005',
85-
'username' => 'user-5',
86-
'email' => '[email protected]',
87-
'password' => '12345',
88-
'first_name' => 'first-user-5',
89-
'last_name' => 'firts name 5',
90-
'token' => 'token-5',
91-
'token_expires' => '2015-06-24 17:33:54',
92-
'api_token' => '',
93-
'activation_date' => '2015-06-24 17:33:54',
94-
'tos_date' => '2015-06-24 17:33:54',
95-
'active' => true,
96-
'is_superuser' => false,
97-
'role' => 'user',
98-
'created' => '2015-06-24 17:33:54',
99-
'modified' => '2015-06-24 17:33:54',
100-
],
101-
[
102-
'id' => '00000000-0000-0000-0000-000000000006',
103-
'username' => 'user-6',
104-
'email' => '[email protected]',
105-
'password' => '12345',
106-
'first_name' => 'first-user-6',
107-
'last_name' => 'last name 6',
108-
'token' => 'token-6',
109-
'token_expires' => '2030-06-24 17:33:54',
110-
'api_token' => '',
111-
'activation_date' => null,
112-
'tos_date' => '2015-06-24 17:33:54',
113-
'active' => false,
114-
'is_superuser' => false,
115-
'role' => 'user',
116-
'created' => '2015-06-24 17:33:54',
117-
'modified' => '2015-06-24 17:33:54',
118-
],
119-
];
120-
121-
public function __construct()
28+
public function init(): void
12229
{
123-
$hasher = PasswordHasherFactory::build(DefaultPasswordHasher::class);
124-
parent::__construct();
125-
foreach ($this->records as &$record) {
126-
$record['password'] = $hasher->hash($record['password']);
127-
}
30+
$this->records = [
31+
[
32+
'id' => '00000000-0000-0000-0000-000000000001',
33+
'username' => 'user-1',
34+
'email' => '[email protected]',
35+
'password' => '12345',
36+
'first_name' => 'first1',
37+
'last_name' => 'last1',
38+
'token' => 'ae93ddbe32664ce7927cf0c5c5a5e59d',
39+
'token_expires' => '2035-06-24 17:33:54',
40+
'api_token' => 'yyy',
41+
'activation_date' => '2015-06-24 17:33:54',
42+
'secret' => 'yyy',
43+
'secret_verified' => false,
44+
'tos_date' => '2015-06-24 17:33:54',
45+
'active' => false,
46+
'is_superuser' => true,
47+
'role' => 'admin',
48+
'created' => '2015-06-24 17:33:54',
49+
'modified' => '2015-06-24 17:33:54',
50+
'additional_data' => null,
51+
'last_login' => '2015-06-24 17:33:54',
52+
],
53+
[
54+
'id' => '00000000-0000-0000-0000-000000000002',
55+
'username' => 'user-2',
56+
'email' => '[email protected]',
57+
//The password real value is 12345
58+
'password' => '$2y$10$Nvu7ipP.z8tiIl75OdUvt.86vuG6iKMoHIOc7O7mboFI85hSyTEde',
59+
'first_name' => 'user',
60+
'last_name' => 'second',
61+
'token' => '6614f65816754310a5f0553436dd89e9',
62+
'token_expires' => '2015-06-24 17:33:54',
63+
'api_token' => 'xxx',
64+
'activation_date' => '2015-06-24 17:33:54',
65+
'secret' => 'xxx',
66+
'secret_verified' => false,
67+
'tos_date' => '2015-06-24 17:33:54',
68+
'active' => true,
69+
'is_superuser' => true,
70+
'role' => 'admin',
71+
'created' => '2015-06-24 17:33:54',
72+
'modified' => '2015-06-24 17:33:54',
73+
'last_login' => '2015-06-24 17:33:54',
74+
],
75+
[
76+
'id' => '00000000-0000-0000-0000-000000000003',
77+
'username' => 'user-3',
78+
'email' => '[email protected]',
79+
'password' => '12345',
80+
'first_name' => 'user',
81+
'last_name' => 'third',
82+
'token' => 'token-3',
83+
'token_expires' => '2030-06-20 17:33:54',
84+
'api_token' => 'xxx',
85+
'activation_date' => '2015-06-24 17:33:54',
86+
'secret' => 'xxx',
87+
'secret_verified' => true,
88+
'is_superuser' => true,
89+
'tos_date' => '2015-06-24 17:33:54',
90+
'active' => false,
91+
'role' => 'admin',
92+
'created' => '2015-06-24 17:33:54',
93+
'modified' => '2015-06-24 17:33:54',
94+
],
95+
[
96+
'id' => '00000000-0000-0000-0000-000000000004',
97+
'username' => 'user-4',
98+
'email' => '[email protected]',
99+
'password' => '$2y$10$Nvu7ipP.z8tiIl75OdUvt.86vuG6iKMoHIOc7O7mboFI85hSyTEde',
100+
'first_name' => 'FirstName4',
101+
'last_name' => 'Lorem ipsum dolor sit amet',
102+
'token' => 'token-4',
103+
'token_expires' => '2030-06-24 17:33:54',
104+
'api_token' => 'Lorem ipsum dolor sit amet',
105+
'activation_date' => '2015-06-24 17:33:54',
106+
'secret' => 'Lorem ipsum dolor sit amet',
107+
'secret_verified' => true,
108+
'is_superuser' => false,
109+
'tos_date' => '2015-06-24 17:33:54',
110+
'active' => true,
111+
'role' => 'Lorem ipsum dolor sit amet',
112+
'created' => '2015-06-24 17:33:54',
113+
'modified' => '2015-06-24 17:33:54',
114+
],
115+
[
116+
'id' => '00000000-0000-0000-0000-000000000005',
117+
'username' => 'user-5',
118+
'email' => '[email protected]',
119+
'password' => '12345',
120+
'first_name' => 'first-user-5',
121+
'last_name' => 'firts name 5',
122+
'token' => 'token-5',
123+
'token_expires' => '2015-06-24 17:33:54',
124+
'api_token' => '',
125+
'activation_date' => '2015-06-24 17:33:54',
126+
'secret' => '',
127+
'secret_verified' => false,
128+
'tos_date' => '2015-06-24 17:33:54',
129+
'active' => true,
130+
'is_superuser' => false,
131+
'role' => 'user',
132+
'created' => '2015-06-24 17:33:54',
133+
'modified' => '2015-06-24 17:33:54',
134+
],
135+
[
136+
'id' => '00000000-0000-0000-0000-000000000006',
137+
'username' => 'user-6',
138+
'email' => '[email protected]',
139+
'password' => '$2y$10$IPPgJNSfvATsMBLbv/2r8OtpyTBibyM1g5GDxD4PivW9qBRwRkRbC',
140+
'first_name' => 'first-user-6',
141+
'last_name' => 'firts name 6',
142+
'token' => 'token-6',
143+
'token_expires' => '2015-06-24 17:33:54',
144+
'api_token' => '',
145+
'activation_date' => '2015-06-24 17:33:54',
146+
'secret' => '',
147+
'secret_verified' => false,
148+
'tos_date' => '2015-06-24 17:33:54',
149+
'active' => true,
150+
'is_superuser' => false,
151+
'role' => 'user',
152+
'created' => '2015-06-24 17:33:54',
153+
'modified' => '2015-06-24 17:33:54',
154+
],
155+
[
156+
'id' => '00000000-0000-0000-0000-000000000007',
157+
'username' => 'Lorem ipsum dolor sit amet',
158+
'email' => 'Lorem ipsum dolor sit amet',
159+
'password' => 'Lorem ipsum dolor sit amet',
160+
'first_name' => 'Lorem ipsum dolor sit amet',
161+
'last_name' => 'Lorem ipsum dolor sit amet',
162+
'token' => 'Lorem ipsum dolor sit amet',
163+
'token_expires' => '2015-06-24 17:33:54',
164+
'api_token' => 'Lorem ipsum dolor sit amet',
165+
'activation_date' => '2015-06-24 17:33:54',
166+
'secret' => 'Lorem ipsum dolor sit amet',
167+
'secret_verified' => false,
168+
'tos_date' => '2015-06-24 17:33:54',
169+
'active' => true,
170+
'is_superuser' => false,
171+
'role' => 'Lorem ipsum dolor sit amet',
172+
'created' => '2015-06-24 17:33:54',
173+
'modified' => '2015-06-24 17:33:54',
174+
],
175+
[
176+
'id' => '00000000-0000-0000-0000-000000000008',
177+
'username' => 'Lorem ipsum dolor sit amet',
178+
'email' => 'Lorem ipsum dolor sit amet',
179+
'password' => 'Lorem ipsum dolor sit amet',
180+
'first_name' => 'Lorem ipsum dolor sit amet',
181+
'last_name' => 'Lorem ipsum dolor sit amet',
182+
'token' => 'Lorem ipsum dolor sit amet',
183+
'token_expires' => '2015-06-24 17:33:54',
184+
'api_token' => 'Lorem ipsum dolor sit amet',
185+
'activation_date' => '2015-06-24 17:33:54',
186+
'secret' => 'Lorem ipsum dolor sit amet',
187+
'secret_verified' => false,
188+
'tos_date' => '2015-06-24 17:33:54',
189+
'active' => true,
190+
'is_superuser' => false,
191+
'role' => 'Lorem ipsum dolor sit amet',
192+
'created' => '2015-06-24 17:33:54',
193+
'modified' => '2015-06-24 17:33:54',
194+
],
195+
[
196+
'id' => '00000000-0000-0000-0000-000000000009',
197+
'username' => 'Lorem ipsum dolor sit amet',
198+
'email' => 'Lorem ipsum dolor sit amet',
199+
'password' => 'Lorem ipsum dolor sit amet',
200+
'first_name' => 'Lorem ipsum dolor sit amet',
201+
'last_name' => 'Lorem ipsum dolor sit amet',
202+
'token' => 'Lorem ipsum dolor sit amet',
203+
'token_expires' => '2015-06-24 17:33:54',
204+
'api_token' => 'Lorem ipsum dolor sit amet',
205+
'activation_date' => '2015-06-24 17:33:54',
206+
'secret' => 'Lorem ipsum dolor sit amet',
207+
'secret_verified' => false,
208+
'tos_date' => '2015-06-24 17:33:54',
209+
'active' => true,
210+
'is_superuser' => false,
211+
'role' => 'Lorem ipsum dolor sit amet',
212+
'created' => '2015-06-24 17:33:54',
213+
'modified' => '2015-06-24 17:33:54',
214+
],
215+
[
216+
'id' => '00000000-0000-0000-0000-000000000010',
217+
'username' => 'Lorem ipsum dolor sit amet',
218+
'email' => 'Lorem ipsum dolor sit amet',
219+
'password' => 'Lorem ipsum dolor sit amet',
220+
'first_name' => 'Lorem ipsum dolor sit amet',
221+
'last_name' => 'Lorem ipsum dolor sit amet',
222+
'token' => 'Lorem ipsum dolor sit amet',
223+
'token_expires' => '2015-06-24 17:33:54',
224+
'api_token' => 'Lorem ipsum dolor sit amet',
225+
'activation_date' => '2015-06-24 17:33:54',
226+
'secret' => 'Lorem ipsum dolor sit amet',
227+
'secret_verified' => false,
228+
'tos_date' => '2015-06-24 17:33:54',
229+
'active' => true,
230+
'is_superuser' => false,
231+
'role' => 'Lorem ipsum dolor sit amet',
232+
'created' => '2015-06-24 17:33:54',
233+
'modified' => '2015-06-24 17:33:54',
234+
],
235+
];
236+
237+
parent::init();
128238
}
129239
}

tests/schema.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -115,16 +115,16 @@
115115
'token_expires' => ['type' => 'datetime', 'length' => null, 'null' => true, 'default' => null, 'comment' => '', 'precision' => null],
116116
'api_token' => ['type' => 'string', 'length' => 255, 'null' => true, 'default' => null, 'comment' => '', 'precision' => null, 'fixed' => null],
117117
'activation_date' => ['type' => 'datetime', 'length' => null, 'null' => true, 'default' => null, 'comment' => '', 'precision' => null],
118-
// 'secret' => ['type' => 'string', 'length' => 255, 'null' => true, 'default' => null, 'comment' => '', 'precision' => null, 'fixed' => null],
119-
// 'secret_verified' => ['type' => 'boolean', 'length' => null, 'null' => true, 'default' => false, 'comment' => '', 'precision' => null],
118+
'secret' => ['type' => 'string', 'length' => 255, 'null' => true, 'default' => null, 'comment' => '', 'precision' => null, 'fixed' => null],
119+
'secret_verified' => ['type' => 'boolean', 'length' => null, 'null' => true, 'default' => false, 'comment' => '', 'precision' => null],
120120
'tos_date' => ['type' => 'datetime', 'length' => null, 'null' => true, 'default' => null, 'comment' => '', 'precision' => null],
121121
'active' => ['type' => 'boolean', 'length' => null, 'null' => false, 'default' => true, 'comment' => '', 'precision' => null],
122122
'is_superuser' => ['type' => 'boolean', 'length' => null, 'unsigned' => false, 'null' => false, 'default' => false, 'comment' => '', 'precision' => null, 'autoIncrement' => null],
123123
'role' => ['type' => 'string', 'length' => 255, 'null' => true, 'default' => 'user', 'comment' => '', 'precision' => null, 'fixed' => null],
124124
'created' => ['type' => 'datetime', 'length' => null, 'null' => false, 'default' => null, 'comment' => '', 'precision' => null],
125125
'modified' => ['type' => 'datetime', 'length' => null, 'null' => false, 'default' => null, 'comment' => '', 'precision' => null],
126-
// 'additional_data' => ['type' => 'text', 'length' => null, 'null' => true, 'default' => null, 'comment' => '', 'precision' => null],
127-
// 'last_login' => ['type' => 'datetime', 'length' => null, 'null' => true, 'default' => null, 'comment' => '', 'precision' => null],
126+
'additional_data' => ['type' => 'text', 'length' => null, 'null' => true, 'default' => null, 'comment' => '', 'precision' => null],
127+
'last_login' => ['type' => 'datetime', 'length' => null, 'null' => true, 'default' => null, 'comment' => '', 'precision' => null],
128128
],
129129
'constraints' => [
130130
'primary' => [

0 commit comments

Comments
 (0)