@@ -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