-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathconstants_test.go
More file actions
92 lines (79 loc) · 2.17 KB
/
Copy pathconstants_test.go
File metadata and controls
92 lines (79 loc) · 2.17 KB
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
86
87
88
89
90
91
92
package zlib
import (
"net/http"
"net/url"
"testing"
)
func TestExtensionString(t *testing.T) {
tests := []struct {
ext Extension
want string
}{
{ExtPDF, "PDF"},
{ExtEPUB, "EPUB"},
{ExtDJVU, "DJVU"},
}
for _, tt := range tests {
if got := tt.ext.String(); got != tt.want {
t.Errorf("Extension.String() = %q, want %q", got, tt.want)
}
}
}
func TestOrderOptionString(t *testing.T) {
tests := []struct {
opt OrderOption
want string
}{
{OrderPopular, "popular"},
{OrderNewest, "date_created"},
{OrderRecent, "date_updated"},
}
for _, tt := range tests {
if got := tt.opt.String(); got != tt.want {
t.Errorf("OrderOption.String() = %q, want %q", got, tt.want)
}
}
}
func TestSetDefaultDomain(t *testing.T) {
original := CurrentDefaultDomain()
t.Cleanup(func() {
SetDefaultDomain(original)
})
SetDefaultDomain("https://example.com")
if got := CurrentDefaultDomain(); got != "https://example.com" {
t.Fatalf("CurrentDefaultDomain() = %q, want %q", got, "https://example.com")
}
SetDefaultDomain("")
if got := CurrentDefaultDomain(); got != DefaultDomain {
t.Fatalf("CurrentDefaultDomain() = %q, want %q", got, DefaultDomain)
}
}
func TestSetDefaultDomainTrimsTrailingSlash(t *testing.T) {
original := CurrentDefaultDomain()
t.Cleanup(func() {
SetDefaultDomain(original)
})
SetDefaultDomain("https://z-lib.sk/")
if got := CurrentDefaultDomain(); got != "https://z-lib.sk" {
t.Fatalf("CurrentDefaultDomain() = %q, want %q", got, "https://z-lib.sk")
}
}
func TestNewClientAppliesProxyFromEnv(t *testing.T) {
t.Setenv(EnvProxy, "http://127.0.0.1:7890")
client := NewClient()
transport, ok := client.httpClient.Transport.(*http.Transport)
if !ok || transport == nil {
t.Fatal("expected http transport to be configured from proxy env")
}
reqURL, err := url.Parse("https://example.com")
if err != nil {
t.Fatalf("failed to parse request url: %v", err)
}
proxyURL, err := transport.Proxy(&http.Request{URL: reqURL})
if err != nil {
t.Fatalf("proxy func returned error: %v", err)
}
if proxyURL == nil || proxyURL.String() != "http://127.0.0.1:7890" {
t.Fatalf("proxy url = %v, want %q", proxyURL, "http://127.0.0.1:7890")
}
}