@@ -127,29 +127,58 @@ func TestAuthSession_Do_UserAgent(t *testing.T) {
127
127
const path = "/someMethod"
128
128
const apiVersion = "/4.0"
129
129
130
- t .Run ("Do() sets User-Agent header with AgentTag option " , func (t * testing.T ) {
130
+ t .Run ("Do() sets User-Agent header with AuthSession config's AgentTag " , func (t * testing.T ) {
131
131
mux := http .NewServeMux ()
132
132
setupApi40Login (mux , foreverValidTestToken , http .StatusOK )
133
133
server := httptest .NewServer (mux )
134
134
defer server .Close ()
135
135
136
- options := ApiSettings {
136
+ mux .HandleFunc ("/api" + apiVersion + path , func (w http.ResponseWriter , r * http.Request ) {
137
+ userAgentHeader := r .Header .Get ("User-Agent" )
138
+ expectedHeader := "some-agent-tag"
139
+ if userAgentHeader != expectedHeader {
140
+ t .Errorf ("User-Agent header not correct. got=%v want=%v" , userAgentHeader , expectedHeader )
141
+ }
142
+ })
143
+
144
+ s := NewAuthSession (ApiSettings {
137
145
BaseUrl : server .URL ,
138
146
ApiVersion : apiVersion ,
139
147
AgentTag : "some-agent-tag" ,
148
+ })
149
+
150
+ var r string
151
+ err := s .Do (& r , "GET" , apiVersion , path , nil , nil , nil )
152
+
153
+ if err != nil {
154
+ t .Errorf ("Do() call failed: %v" , err )
140
155
}
156
+ })
157
+
158
+ t .Run ("Do() sets User-Agent header with Do's option's AgentTag, which will overwrite AuthSession config" , func (t * testing.T ) {
159
+ mux := http .NewServeMux ()
160
+ setupApi40Login (mux , foreverValidTestToken , http .StatusOK )
161
+ server := httptest .NewServer (mux )
162
+ defer server .Close ()
141
163
142
164
mux .HandleFunc ("/api" + apiVersion + path , func (w http.ResponseWriter , r * http.Request ) {
143
165
userAgentHeader := r .Header .Get ("User-Agent" )
144
- expectedHeader := options . AgentTag
166
+ expectedHeader := "new-agent-tag"
145
167
if userAgentHeader != expectedHeader {
146
168
t .Errorf ("User-Agent header not correct. got=%v want=%v" , userAgentHeader , expectedHeader )
147
169
}
148
170
})
149
171
150
- s := NewAuthSession (options )
172
+ s := NewAuthSession (ApiSettings {
173
+ BaseUrl : server .URL ,
174
+ ApiVersion : apiVersion ,
175
+ AgentTag : "some-agent-tag" ,
176
+ })
151
177
152
178
var r string
179
+ options := ApiSettings {
180
+ AgentTag : "new-agent-tag" ,
181
+ }
153
182
err := s .Do (& r , "GET" , apiVersion , path , nil , nil , & options )
154
183
155
184
if err != nil {
0 commit comments