@@ -40,14 +40,15 @@ func TestExtendStruct(t *testing.T) {
4040t .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 {
4545t .Error (`TestExtendStruct - expected to have field "Field"` )
4646}
4747
4848expected := & fieldConfigImpl {
49- typ : 0 ,
50- tag : `key:"value"` ,
49+ name : "Field" ,
50+ typ : 0 ,
51+ tag : `key:"value"` ,
5152}
5253
5354if ! reflect .DeepEqual (field , expected ) {
@@ -78,28 +79,30 @@ func TestMergeStructs(t *testing.T) {
7879t .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 {
8384t .Error (`TestMergeStructs - expected to have field "FieldOne"` )
8485}
8586
8687expectedOne := & fieldConfigImpl {
87- typ : 0 ,
88- tag : `keyOne:"valueOne"` ,
88+ name : "FieldOne" ,
89+ typ : 0 ,
90+ tag : `keyOne:"valueOne"` ,
8991}
9092
9193if ! reflect .DeepEqual (fieldOne , expectedOne ) {
9294t .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 {
9799t .Error (`TestMergeStructs - expected to have field "FieldTwo"` )
98100}
99101
100102expectedTwo := & fieldConfigImpl {
101- typ : "" ,
102- tag : `keyTwo:"valueTwo"` ,
103+ name : "FieldTwo" ,
104+ typ : "" ,
105+ tag : `keyTwo:"valueTwo"` ,
103106}
104107
105108if ! reflect .DeepEqual (fieldTwo , expectedTwo ) {
@@ -109,19 +112,20 @@ func TestMergeStructs(t *testing.T) {
109112
110113func TestBuilderImpl_AddField (t * testing.T ) {
111114builder := & builderImpl {
112- fields : map [ string ]* fieldConfigImpl {},
115+ fields : [ ]* fieldConfigImpl {},
113116}
114117
115118builder .AddField ("Field" , 1 , `key:"value"` )
116119
117- field , ok := builder .fields [ "Field" ]
118- if ! ok {
120+ field := builder .GetField ( "Field" )
121+ if field == nil {
119122t .Error (`TestBuilder_AddField - expected to have field "Field"` )
120123}
121124
122125expected := & fieldConfigImpl {
123- typ : 1 ,
124- tag : `key:"value"` ,
126+ name : "Field" ,
127+ typ : 1 ,
128+ tag : `key:"value"` ,
125129}
126130
127131if ! reflect .DeepEqual (field , expected ) {
@@ -131,50 +135,53 @@ func TestBuilderImpl_AddField(t *testing.T) {
131135
132136func TestBuilderImpl_RemoveField (t * testing.T ) {
133137builder := & 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
142147builder .RemoveField ("Field" )
143148
144- if _ , ok := builder .fields [ "Field" ] ; ok {
149+ if ok := builder .HasField ( "Field" ) ; ok {
145150t .Error (`TestBuilder_RemoveField - expected not to have field "Field"` )
146151}
147152}
148153
149154func TestBuilderImpl_HasField (t * testing.T ) {
150155builder := & builderImpl {
151- fields : map [ string ]* fieldConfigImpl {},
156+ fields : [ ]* fieldConfigImpl {},
152157}
153158
154- if builder .HasField ("Field" ) {
159+ if ok := builder .HasField ("Field" ); ok {
155160t .Error (`TestBuilder_HasField - expected not to have field "Field"` )
156161}
157162
158163builder = & 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 {
168174t .Error (`TestBuilder_HasField - expected to have field "Field"` )
169175}
170176}
171177
172178func TestBuilderImpl_GetField (t * testing.T ) {
173179builder := & 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
189196expected := & fieldConfigImpl {
190- typ : 1 ,
191- tag : `key:"value"` ,
197+ name : "Field" ,
198+ typ : 1 ,
199+ tag : `key:"value"` ,
192200}
193201
194202if ! reflect .DeepEqual (field , expected ) {
0 commit comments