/
session.go
85 lines (61 loc) · 1.53 KB
/
session.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
package webconnectivityqa
import (
"github.com/ooni/probe-engine/pkg/mocks"
"github.com/ooni/probe-engine/pkg/model"
"github.com/ooni/probe-engine/pkg/netemx"
)
// newSession creates a new [model.ExperimentSession].
func newSession(client model.HTTPClient, logger model.Logger) model.ExperimentSession {
return &mocks.Session{
MockGetTestHelpersByName: func(name string) ([]model.OOAPIService, bool) {
output := []model.OOAPIService{{
Address: "https://0.th.ooni.org/",
Type: "https",
Front: "",
}, {
Address: "https://1.th.ooni.org/",
Type: "https",
Front: "",
}, {
Address: "https://2.th.ooni.org/",
Type: "https",
Front: "",
}, {
Address: "https://3.th.ooni.org/",
Type: "https",
Front: "",
}}
return output, true
},
MockDefaultHTTPClient: func() model.HTTPClient {
return client
},
MockFetchPsiphonConfig: nil,
MockFetchTorTargets: nil,
MockKeyValueStore: nil,
MockLogger: func() model.Logger {
return logger
},
MockMaybeResolverIP: nil,
MockProbeASNString: nil,
MockProbeCC: nil,
MockProbeIP: nil,
MockProbeNetworkName: nil,
MockProxyURL: nil,
MockResolverIP: func() string {
return netemx.ISPResolverAddress
},
MockSoftwareName: nil,
MockSoftwareVersion: nil,
MockTempDir: nil,
MockTorArgs: nil,
MockTorBinary: nil,
MockTunnelDir: nil,
MockUserAgent: func() string {
return model.HTTPHeaderUserAgent
},
MockNewExperimentBuilder: nil,
MockNewSubmitter: nil,
MockCheckIn: nil,
}
}