@@ -6,68 +6,69 @@ import (
66 "strings"
77 "testing"
88
9+ "github.com/bitrise-io/go-utils/v2/log"
910 "github.com/stretchr/testify/require"
1011)
1112
1213func TestGetAppleDeveloperConnection (t * testing.T ) {
1314 tests := []struct {
1415 name string
1516
16- response * http. Response
17- err error
17+ responseContent string
18+ err error
1819
1920 want * AppleDeveloperConnection
2021 wantErr bool
2122 }{
2223 {
23- name : "No Apple Developer Connection set for the build" ,
24- response : & http.Response {
25- StatusCode : 200 ,
26- Body : io .NopCloser (strings .NewReader ("{}" )),
27- },
28- want : & AppleDeveloperConnection {},
29- wantErr : false ,
24+ name : "No Apple Developer Connection set for the build" ,
25+ responseContent : "{}" ,
26+ want : & AppleDeveloperConnection {},
27+ wantErr : false ,
3028 },
3129 {
32- name : "No Apple Developer Connection set for the build, test devices available" ,
33- response : & http.Response {
34- StatusCode : 200 ,
35- Body : io .NopCloser (strings .NewReader (testDevicesResponseBody )),
36- },
37- want : & testConnectionOnlyDevices ,
38- wantErr : false ,
30+ name : "No Apple Developer Connection set for the build, test devices available" ,
31+ responseContent : testDevicesResponseBody ,
32+ want : & testConnectionOnlyDevices ,
33+ wantErr : false ,
3934 },
4035 {
41- name : "Apple ID-based Apple Developer Connection set for the build" ,
42- response : & http.Response {
43- StatusCode : 200 ,
44- Body : io .NopCloser (strings .NewReader (testAppleIDConnectionResponseBody )),
45- },
46- want : & testConnectionWithAppleIDConnection ,
47- wantErr : false ,
36+ name : "Apple ID-based Apple Developer Connection set for the build" ,
37+ responseContent : testAppleIDConnectionResponseBody ,
38+ want : & testConnectionWithAppleIDConnection ,
39+ wantErr : false ,
4840 },
4941 {
50- name : "API key Apple Developer Connection set for the build" ,
51- response : & http.Response {
52- StatusCode : 200 ,
53- Body : io .NopCloser (strings .NewReader (testAPIKeyConnectionResponseBody )),
54- },
55- want : & testConnectionWithAPIKeyConnection ,
56- wantErr : false ,
42+ name : "API key Apple Developer Connection set for the build" ,
43+ responseContent : testAPIKeyConnectionResponseBody ,
44+ want : & testConnectionWithAPIKeyConnection ,
45+ wantErr : false ,
5746 },
5847 {
59- name : "Apple ID-based and API key Apple Developer Connection set for the build, test device available" ,
60- response : & http.Response {
61- StatusCode : 200 ,
62- Body : io .NopCloser (strings .NewReader (testAppleIDAndAPIKeyConnectionResponseBody )),
63- },
64- want : & testConnectionWithAppleIDAndAPIKeyConnection ,
65- wantErr : false ,
48+ name : "Apple ID-based and API key Apple Developer Connection set for the build, test device available" ,
49+ responseContent : testAppleIDAndAPIKeyConnectionResponseBody ,
50+ want : & testConnectionWithAppleIDAndAPIKeyConnection ,
51+ wantErr : false ,
6652 },
6753 }
54+
55+ logger := log .NewLogger ()
6856 for _ , tt := range tests {
69- t .Run (tt .name , func (t * testing.T ) {
70- c := NewBitriseClient (newMockHTTPClient (tt .response , nil ), "dummy url" , "dummy token" )
57+ t .Run (tt .name + "_http" , func (t * testing.T ) {
58+ response :=
59+ & http.Response {
60+ StatusCode : 200 ,
61+ Body : io .NopCloser (strings .NewReader (tt .responseContent )),
62+ }
63+
64+ c := NewBitriseClient (logger , nil , newMockHTTPClient (response , nil ), "dummy url" , "dummy token" )
65+ got , err := c .GetAppleDeveloperConnection ()
66+ require .NoError (t , err )
67+ require .Equal (t , tt .want , got )
68+ })
69+
70+ t .Run (tt .name + "_file" , func (t * testing.T ) {
71+ c := NewBitriseClient (logger , newMockFileReader (tt .responseContent ), nil , "file://dummy url" , "dummy token" )
7172 got , err := c .GetAppleDeveloperConnection ()
7273 require .NoError (t , err )
7374 require .Equal (t , tt .want , got )
@@ -104,9 +105,11 @@ func TestFastlaneLoginSession(t *testing.T) {
104105 wantErr : false ,
105106 },
106107 }
108+
109+ logger := log .NewLogger ()
107110 for _ , tt := range tests {
108111 t .Run (tt .name , func (t * testing.T ) {
109- c := NewBitriseClient (newMockHTTPClient (tt .response , nil ), "dummy url" , "dummy token" )
112+ c := NewBitriseClient (logger , nil , newMockHTTPClient (tt .response , nil ), "dummy url" , "dummy token" )
110113 conn , err := c .GetAppleDeveloperConnection ()
111114 require .NoError (t , err )
112115
0 commit comments