@@ -40,14 +40,15 @@ func TestExtendStruct(t *testing.T) {
4040 t .Errorf (`TestExtendStruct - expected length of fields map to be 1 got %d` , len (builder .fields ))
4141 }
4242
43- field , ok := builder .fields [ "Field" ]
44- if ! ok {
43+ field := builder .GetField ( "Field" )
44+ if field == nil {
4545 t .Error (`TestExtendStruct - expected to have field "Field"` )
4646 }
4747
4848 expected := & fieldConfigImpl {
49- typ : 0 ,
50- tag : `key:"value"` ,
49+ name : "Field" ,
50+ typ : 0 ,
51+ tag : `key:"value"` ,
5152 }
5253
5354 if ! reflect .DeepEqual (field , expected ) {
@@ -78,28 +79,30 @@ func TestMergeStructs(t *testing.T) {
7879 t .Errorf (`TestMergeStructs - expected length of fields map to be 1 got %d` , len (builder .fields ))
7980 }
8081
81- fieldOne , ok := builder .fields [ "FieldOne" ]
82- if ! ok {
82+ fieldOne := builder .GetField ( "FieldOne" )
83+ if fieldOne == nil {
8384 t .Error (`TestMergeStructs - expected to have field "FieldOne"` )
8485 }
8586
8687 expectedOne := & fieldConfigImpl {
87- typ : 0 ,
88- tag : `keyOne:"valueOne"` ,
88+ name : "FieldOne" ,
89+ typ : 0 ,
90+ tag : `keyOne:"valueOne"` ,
8991 }
9092
9193 if ! reflect .DeepEqual (fieldOne , expectedOne ) {
9294 t .Errorf (`TestMergeStructs - expected field "FieldOne" to be %#v got %#v` , expectedOne , fieldOne )
9395 }
9496
95- fieldTwo , ok := builder .fields [ "FieldTwo" ]
96- if ! ok {
97+ fieldTwo := builder .GetField ( "FieldTwo" )
98+ if fieldTwo == nil {
9799 t .Error (`TestMergeStructs - expected to have field "FieldTwo"` )
98100 }
99101
100102 expectedTwo := & fieldConfigImpl {
101- typ : "" ,
102- tag : `keyTwo:"valueTwo"` ,
103+ name : "FieldTwo" ,
104+ typ : "" ,
105+ tag : `keyTwo:"valueTwo"` ,
103106 }
104107
105108 if ! reflect .DeepEqual (fieldTwo , expectedTwo ) {
@@ -109,19 +112,20 @@ func TestMergeStructs(t *testing.T) {
109112
110113func TestBuilderImpl_AddField (t * testing.T ) {
111114 builder := & builderImpl {
112- fields : map [ string ]* fieldConfigImpl {},
115+ fields : [ ]* fieldConfigImpl {},
113116 }
114117
115118 builder .AddField ("Field" , 1 , `key:"value"` )
116119
117- field , ok := builder .fields [ "Field" ]
118- if ! ok {
120+ field := builder .GetField ( "Field" )
121+ if field == nil {
119122 t .Error (`TestBuilder_AddField - expected to have field "Field"` )
120123 }
121124
122125 expected := & fieldConfigImpl {
123- typ : 1 ,
124- tag : `key:"value"` ,
126+ name : "Field" ,
127+ typ : 1 ,
128+ tag : `key:"value"` ,
125129 }
126130
127131 if ! reflect .DeepEqual (field , expected ) {
@@ -131,50 +135,53 @@ func TestBuilderImpl_AddField(t *testing.T) {
131135
132136func TestBuilderImpl_RemoveField (t * testing.T ) {
133137 builder := & builderImpl {
134- fields : map [string ]* fieldConfigImpl {
135- "Field" : {
136- tag : `key:"value"` ,
137- typ : 1 ,
138+ fields : []* fieldConfigImpl {
139+ {
140+ name : "Field" ,
141+ tag : `key:"value"` ,
142+ typ : 1 ,
138143 },
139144 },
140145 }
141146
142147 builder .RemoveField ("Field" )
143148
144- if _ , ok := builder .fields [ "Field" ] ; ok {
149+ if ok := builder .HasField ( "Field" ) ; ok {
145150 t .Error (`TestBuilder_RemoveField - expected not to have field "Field"` )
146151 }
147152}
148153
149154func TestBuilderImpl_HasField (t * testing.T ) {
150155 builder := & builderImpl {
151- fields : map [ string ]* fieldConfigImpl {},
156+ fields : [ ]* fieldConfigImpl {},
152157 }
153158
154- if builder .HasField ("Field" ) {
159+ if ok := builder .HasField ("Field" ); ok {
155160 t .Error (`TestBuilder_HasField - expected not to have field "Field"` )
156161 }
157162
158163 builder = & builderImpl {
159- fields : map [string ]* fieldConfigImpl {
160- "Field" : {
161- tag : `key:"value"` ,
162- typ : 1 ,
164+ fields : []* fieldConfigImpl {
165+ {
166+ name : "Field" ,
167+ tag : `key:"value"` ,
168+ typ : 1 ,
163169 },
164170 },
165171 }
166172
167- if ! builder .HasField ("Field" ) {
173+ if ok := builder .HasField ("Field" ); ! ok {
168174 t .Error (`TestBuilder_HasField - expected to have field "Field"` )
169175 }
170176}
171177
172178func TestBuilderImpl_GetField (t * testing.T ) {
173179 builder := & builderImpl {
174- fields : map [string ]* fieldConfigImpl {
175- "Field" : {
176- tag : `key:"value"` ,
177- typ : 1 ,
180+ fields : []* fieldConfigImpl {
181+ {
182+ name : "Field" ,
183+ tag : `key:"value"` ,
184+ typ : 1 ,
178185 },
179186 },
180187 }
@@ -187,8 +194,9 @@ func TestBuilderImpl_GetField(t *testing.T) {
187194 }
188195
189196 expected := & fieldConfigImpl {
190- typ : 1 ,
191- tag : `key:"value"` ,
197+ name : "Field" ,
198+ typ : 1 ,
199+ tag : `key:"value"` ,
192200 }
193201
194202 if ! reflect .DeepEqual (field , expected ) {
0 commit comments