@@ -32,70 +32,70 @@ protected function createForge(): void
3232 $ this ->forge = Database::forge ($ this ->db );
3333 }
3434
35- public function testGetFieldData (): void
35+ public function testGetFieldDataDefault (): void
3636 {
37+ $ this ->createTableForDefault ();
38+
3739 $ fields = $ this ->db ->getFieldData ('test1 ' );
3840
39- $ this ->assertJsonStringEqualsJsonString (
40- json_encode ([
41- (object ) [
42- 'name ' => 'id ' ,
43- 'type ' => 'integer ' ,
44- 'max_length ' => '32 ' ,
45- 'default ' => "nextval('db_test1_id_seq'::regclass) " , // The default value is not defined.
46- // 'primary_key' => 1,
47- 'nullable ' => false ,
48- ],
49- (object ) [
50- 'name ' => 'text_not_null ' ,
51- 'type ' => 'character varying ' ,
52- 'max_length ' => '64 ' ,
53- 'default ' => null , // The default value is not defined.
54- // 'primary_key' => 0,
55- 'nullable ' => false ,
56- ],
57- (object ) [
58- 'name ' => 'text_null ' ,
59- 'type ' => 'character varying ' ,
60- 'max_length ' => '64 ' ,
61- 'default ' => null , // The default value is not defined.
62- // 'primary_key' => 0,
63- 'nullable ' => true ,
64- ],
65- (object ) [
66- 'name ' => 'int_default_0 ' ,
67- 'type ' => 'integer ' ,
68- 'max_length ' => '32 ' ,
69- 'default ' => '0 ' , // int 0
70- // 'primary_key' => 0,
71- 'nullable ' => false ,
72- ],
73- (object ) [
74- 'name ' => 'text_default_null ' ,
75- 'type ' => 'character varying ' ,
76- 'max_length ' => '64 ' ,
77- 'default ' => 'NULL::character varying ' , // NULL value
78- // 'primary_key' => 0,
79- 'nullable ' => true ,
80- ],
81- (object ) [
82- 'name ' => 'text_default_text_null ' ,
83- 'type ' => 'character varying ' ,
84- 'max_length ' => '64 ' ,
85- 'default ' => "'null'::character varying " , // string "null"
86- // 'primary_key' => 0,
87- 'nullable ' => false ,
88- ],
89- (object ) [
90- 'name ' => 'text_default_abc ' ,
91- 'type ' => 'character varying ' ,
92- 'max_length ' => '64 ' ,
93- 'default ' => "'abc'::character varying " , // string "abc"
94- // 'primary_key' => 0,
95- 'nullable ' => false ,
96- ],
97- ]),
98- json_encode ($ fields )
99- );
41+ $ expected = [
42+ (object ) [
43+ 'name ' => 'id ' ,
44+ 'type ' => 'integer ' ,
45+ 'max_length ' => '32 ' ,
46+ 'nullable ' => false ,
47+ // 'primary_key' => 1,
48+ 'default ' => "nextval('db_test1_id_seq'::regclass) " , // The default value is not defined.
49+ ],
50+ (object ) [
51+ 'name ' => 'text_not_null ' ,
52+ 'type ' => 'character varying ' ,
53+ 'max_length ' => '64 ' ,
54+ 'nullable ' => false ,
55+ // 'primary_key' => 0,
56+ 'default ' => null , // The default value is not defined.
57+ ],
58+ (object ) [
59+ 'name ' => 'text_null ' ,
60+ 'type ' => 'character varying ' ,
61+ 'max_length ' => '64 ' ,
62+ 'nullable ' => true ,
63+ // 'primary_key' => 0,
64+ 'default ' => null , // The default value is not defined.
65+ ],
66+ (object ) [
67+ 'name ' => 'int_default_0 ' ,
68+ 'type ' => 'integer ' ,
69+ 'max_length ' => '32 ' ,
70+ 'nullable ' => false ,
71+ // 'primary_key' => 0,
72+ 'default ' => '0 ' , // int 0
73+ ],
74+ (object ) [
75+ 'name ' => 'text_default_null ' ,
76+ 'type ' => 'character varying ' ,
77+ 'max_length ' => '64 ' ,
78+ 'nullable ' => true ,
79+ // 'primary_key' => 0,
80+ 'default ' => 'NULL::character varying ' , // NULL value
81+ ],
82+ (object ) [
83+ 'name ' => 'text_default_text_null ' ,
84+ 'type ' => 'character varying ' ,
85+ 'max_length ' => '64 ' ,
86+ 'nullable ' => false ,
87+ // 'primary_key' => 0,
88+ 'default ' => "'null'::character varying " , // string "null"
89+ ],
90+ (object ) [
91+ 'name ' => 'text_default_abc ' ,
92+ 'type ' => 'character varying ' ,
93+ 'max_length ' => '64 ' ,
94+ 'nullable ' => false ,
95+ // 'primary_key' => 0,
96+ 'default ' => "'abc'::character varying " , // string "abc"
97+ ],
98+ ];
99+ $ this ->assertSameFieldData ($ expected , $ fields );
100100 }
101101}
0 commit comments