Skip to content

Commit c12aa14

Browse files
committed
test: sort field data
1 parent 61bff7e commit c12aa14

1 file changed

Lines changed: 66 additions & 61 deletions

File tree

tests/system/Database/Live/OCI8/GetFieldDataTest.php

Lines changed: 66 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -45,66 +45,71 @@ public function testGetFieldData(): void
4545
$idDefault = $data['id']->default;
4646
$this->assertMatchesRegularExpression('/"ORACLE"."ISEQ\$\$_[0-9]+".nextval/', $idDefault);
4747

48-
$this->assertJsonStringEqualsJsonString(
49-
json_encode([
50-
(object) [
51-
'name' => 'id',
52-
'type' => 'NUMBER',
53-
'max_length' => '11',
54-
'default' => $idDefault, // The default value is not defined.
55-
// 'primary_key' => 1,
56-
'nullable' => false,
57-
],
58-
(object) [
59-
'name' => 'text_not_null',
60-
'type' => 'VARCHAR2',
61-
'max_length' => '64',
62-
'default' => null, // The default value is not defined.
63-
// 'primary_key' => 0,
64-
'nullable' => false,
65-
],
66-
(object) [
67-
'name' => 'text_null',
68-
'type' => 'VARCHAR2',
69-
'max_length' => '64',
70-
'default' => null, // The default value is not defined.
71-
// 'primary_key' => 0,
72-
'nullable' => true,
73-
],
74-
(object) [
75-
'name' => 'int_default_0',
76-
'type' => 'NUMBER',
77-
'max_length' => '11',
78-
'default' => '0 ', // int 0
79-
// 'primary_key' => 0,
80-
'nullable' => false,
81-
],
82-
(object) [
83-
'name' => 'text_default_null',
84-
'type' => 'VARCHAR2',
85-
'max_length' => '64',
86-
'default' => 'NULL ', // NULL value
87-
// 'primary_key' => 0,
88-
'nullable' => true,
89-
],
90-
(object) [
91-
'name' => 'text_default_text_null',
92-
'type' => 'VARCHAR2',
93-
'max_length' => '64',
94-
'default' => "'null' ", // string "null"
95-
// 'primary_key' => 0,
96-
'nullable' => false,
97-
],
98-
(object) [
99-
'name' => 'text_default_abc',
100-
'type' => 'VARCHAR2',
101-
'max_length' => '64',
102-
'default' => "'abc' ", // string "abc"
103-
// 'primary_key' => 0,
104-
'nullable' => false,
105-
],
106-
]),
107-
json_encode($fields)
108-
);
48+
$expected = json_decode(json_encode([
49+
(object) [
50+
'name' => 'id',
51+
'type' => 'NUMBER',
52+
'max_length' => '11',
53+
'default' => $idDefault, // The default value is not defined.
54+
// 'primary_key' => 1,
55+
'nullable' => false,
56+
],
57+
(object) [
58+
'name' => 'text_not_null',
59+
'type' => 'VARCHAR2',
60+
'max_length' => '64',
61+
'default' => null, // The default value is not defined.
62+
// 'primary_key' => 0,
63+
'nullable' => false,
64+
],
65+
(object) [
66+
'name' => 'text_null',
67+
'type' => 'VARCHAR2',
68+
'max_length' => '64',
69+
'default' => null, // The default value is not defined.
70+
// 'primary_key' => 0,
71+
'nullable' => true,
72+
],
73+
(object) [
74+
'name' => 'int_default_0',
75+
'type' => 'NUMBER',
76+
'max_length' => '11',
77+
'default' => '0 ', // int 0
78+
// 'primary_key' => 0,
79+
'nullable' => false,
80+
],
81+
(object) [
82+
'name' => 'text_default_null',
83+
'type' => 'VARCHAR2',
84+
'max_length' => '64',
85+
'default' => 'NULL ', // NULL value
86+
// 'primary_key' => 0,
87+
'nullable' => true,
88+
],
89+
(object) [
90+
'name' => 'text_default_text_null',
91+
'type' => 'VARCHAR2',
92+
'max_length' => '64',
93+
'default' => "'null' ", // string "null"
94+
// 'primary_key' => 0,
95+
'nullable' => false,
96+
],
97+
(object) [
98+
'name' => 'text_default_abc',
99+
'type' => 'VARCHAR2',
100+
'max_length' => '64',
101+
'default' => "'abc' ", // string "abc"
102+
// 'primary_key' => 0,
103+
'nullable' => false,
104+
],
105+
]), true);
106+
$names = array_column($expected, 'name');
107+
array_multisort($names, SORT_ASC, $expected);
108+
109+
$fields = json_decode(json_encode($fields), true);
110+
$names = array_column($fields, 'name');
111+
array_multisort($names, SORT_ASC, $fields);
112+
113+
$this->assertSame($expected, $fields);
109114
}
110115
}

0 commit comments

Comments
 (0)