Skip to content

Commit ad9c81e

Browse files
authored
Merge pull request #3034 from lifenjoiner/test
ci-test.sh: show line number where failed
2 parents f899945 + 1cce853 commit ad9c81e

1 file changed

Lines changed: 65 additions & 65 deletions

File tree

.ci/ci-test.sh

Lines changed: 65 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ t() {
1313
}
1414

1515
fail() (
16-
echo "*** Test #${TEST_COUNT} FAILED ***" >&2
16+
echo "*** Test #${TEST_COUNT} FAILED, line: $1 ***" >&2
1717
)
1818

1919
section() {
@@ -26,20 +26,20 @@ t || (
2626
cd ../dnscrypt-proxy
2727
go test -mod vendor
2828
go build -mod vendor -race
29-
) || fail
29+
) || fail $LINENO
3030

3131
section
3232
sed -e "s/127.0.0.1:53/127.0.0.1:${DNS_PORT}/g" -e "s/# server_names =.*/server_names = ['scaleway-fr']/" ../dnscrypt-proxy/example-dnscrypt-proxy.toml >test-dnscrypt-proxy.toml
3333
../dnscrypt-proxy/dnscrypt-proxy -loglevel 3 -config test-dnscrypt-proxy.toml -pidfile /tmp/dnscrypt-proxy.pidfile &
3434
sleep 5
3535

3636
t ||
37-
dig -p${DNS_PORT} . @127.0.0.1 | grep -Fq 'root-servers.net.' || fail
38-
t || dig -p${DNS_PORT} +dnssec . @127.0.0.1 | grep -Fq 'root-servers.net.' || fail
39-
t || dig -p${DNS_PORT} +dnssec . @127.0.0.1 | grep -Fq 'flags: do;' || fail
40-
t || dig -p${DNS_PORT} +short one.one.one.one @127.0.0.1 | grep -Fq '1.1.1.1' || fail
41-
t || dig -p${DNS_PORT} +dnssec dnscrypt.info @127.0.0.1 | grep -Fq 'flags: qr rd ra ad' || fail
42-
t || dig -p${DNS_PORT} +dnssec dnscrypt.info @127.0.0.1 | grep -Fq 'flags: do;' || fail
37+
dig -p${DNS_PORT} . @127.0.0.1 | grep -Fq 'root-servers.net.' || fail $LINENO
38+
t || dig -p${DNS_PORT} +dnssec . @127.0.0.1 | grep -Fq 'root-servers.net.' || fail $LINENO
39+
t || dig -p${DNS_PORT} +dnssec . @127.0.0.1 | grep -Fq 'flags: do;' || fail $LINENO
40+
t || dig -p${DNS_PORT} +short one.one.one.one @127.0.0.1 | grep -Fq '1.1.1.1' || fail $LINENO
41+
t || dig -p${DNS_PORT} +dnssec dnscrypt.info @127.0.0.1 | grep -Fq 'flags: qr rd ra ad' || fail $LINENO
42+
t || dig -p${DNS_PORT} +dnssec dnscrypt.info @127.0.0.1 | grep -Fq 'flags: do;' || fail $LINENO
4343

4444
kill $(cat /tmp/dnscrypt-proxy.pidfile)
4545
sleep 5
@@ -49,102 +49,102 @@ section
4949
sleep 5
5050

5151
section
52-
t || dig -p${DNS_PORT} A microsoft.com @127.0.0.1 | grep -Fq "NOERROR" || fail
53-
t || dig -p${DNS_PORT} A MICROSOFT.COM @127.0.0.1 | grep -Fq "NOERROR" || fail
52+
t || dig -p${DNS_PORT} A microsoft.com @127.0.0.1 | grep -Fq "NOERROR" || fail $LINENO
53+
t || dig -p${DNS_PORT} A MICROSOFT.COM @127.0.0.1 | grep -Fq "NOERROR" || fail $LINENO
5454

5555
section
56-
t || dig -p${DNS_PORT} AAAA ipv6.google.com @127.0.0.1 | grep -Fq 'locally blocked' || fail
56+
t || dig -p${DNS_PORT} AAAA ipv6.google.com @127.0.0.1 | grep -Fq 'locally blocked' || fail $LINENO
5757

5858
section
59-
t || dig -p${DNS_PORT} invalid. @127.0.0.1 | grep -Fq NXDOMAIN || fail
60-
t || dig -p${DNS_PORT} +dnssec invalid. @127.0.0.1 | grep -Fq 'flags: do;' || fail
61-
t || dig -p${DNS_PORT} PTR 168.192.in-addr.arpa @127.0.0.1 | grep -Fq 'NXDOMAIN' || fail
62-
t || dig -p${DNS_PORT} +dnssec PTR 168.192.in-addr.arpa @127.0.0.1 | grep -Fq 'flags: do;' || fail
59+
t || dig -p${DNS_PORT} invalid. @127.0.0.1 | grep -Fq NXDOMAIN || fail $LINENO
60+
t || dig -p${DNS_PORT} +dnssec invalid. @127.0.0.1 | grep -Fq 'flags: do;' || fail $LINENO
61+
t || dig -p${DNS_PORT} PTR 168.192.in-addr.arpa @127.0.0.1 | grep -Fq 'NXDOMAIN' || fail $LINENO
62+
t || dig -p${DNS_PORT} +dnssec PTR 168.192.in-addr.arpa @127.0.0.1 | grep -Fq 'flags: do;' || fail $LINENO
6363

6464
section
65-
t || dig -p${DNS_PORT} +dnssec darpa.mil @127.0.0.1 2>&1 | grep -Fvq 'RRSIG' || fail
66-
t || dig -p${DNS_PORT} +dnssec www.darpa.mil @127.0.0.1 2>&1 | grep -Fvq 'RRSIG' || fail
67-
t || dig -p${DNS_PORT} A download.windowsupdate.com @127.0.0.1 | grep -Fq "NOERROR" || fail
65+
t || dig -p${DNS_PORT} +dnssec darpa.mil @127.0.0.1 2>&1 | grep -Fvq 'RRSIG' || fail $LINENO
66+
t || dig -p${DNS_PORT} +dnssec www.darpa.mil @127.0.0.1 2>&1 | grep -Fvq 'RRSIG' || fail $LINENO
67+
t || dig -p${DNS_PORT} A download.windowsupdate.com @127.0.0.1 | grep -Fq "NOERROR" || fail $LINENO
6868

6969
section
70-
t || dig -p${DNS_PORT} +short cloakedunregistered.com @127.0.0.1 | grep -Eq '1.1.1.1|1.0.0.1' || fail
71-
t || dig -p${DNS_PORT} +short MX cloakedunregistered.com @127.0.0.1 | grep -Fq 'locally blocked' || fail
72-
t || dig -p${DNS_PORT} +short MX example.com @127.0.0.1 | grep -Fvq 'locally blocked' || fail
73-
t || dig -p${DNS_PORT} NS cloakedunregistered.com @127.0.0.1 | grep -Fiq 'gtld-servers.net' || fail
74-
t || dig -p${DNS_PORT} +short www.cloakedunregistered2.com @127.0.0.1 | grep -Eq '1.1.1.1|1.0.0.1' || fail
75-
t || dig -p${DNS_PORT} +short www.dnscrypt-test @127.0.0.1 | grep -Fq '192.168.100.100' || fail
76-
t || dig -p${DNS_PORT} a.www.dnscrypt-test @127.0.0.1 | grep -Fq 'NXDOMAIN' || fail
77-
t || dig -p${DNS_PORT} +short ptr 101.100.168.192.in-addr.arpa. @127.0.0.1 | grep -Eq 'www.dnscrypt-test.com' || fail
78-
t || dig -p${DNS_PORT} +short ptr 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.d.f.ip6.arpa. @127.0.0.1 | grep -Eq 'ipv6.dnscrypt-test.com' || fail
70+
t || dig -p${DNS_PORT} +short cloakedunregistered.com @127.0.0.1 | grep -Eq '1.1.1.1|1.0.0.1' || fail $LINENO
71+
t || dig -p${DNS_PORT} +short MX cloakedunregistered.com @127.0.0.1 | grep -Fq 'locally blocked' || fail $LINENO
72+
t || dig -p${DNS_PORT} +short MX example.com @127.0.0.1 | grep -Fvq 'locally blocked' || fail $LINENO
73+
t || dig -p${DNS_PORT} NS cloakedunregistered.com @127.0.0.1 | grep -Fiq 'gtld-servers.net' || fail $LINENO
74+
t || dig -p${DNS_PORT} +short www.cloakedunregistered2.com @127.0.0.1 | grep -Eq '1.1.1.1|1.0.0.1' || fail $LINENO
75+
t || dig -p${DNS_PORT} +short www.dnscrypt-test @127.0.0.1 | grep -Fq '192.168.100.100' || fail $LINENO
76+
t || dig -p${DNS_PORT} a.www.dnscrypt-test @127.0.0.1 | grep -Fq 'NXDOMAIN' || fail $LINENO
77+
t || dig -p${DNS_PORT} +short ptr 101.100.168.192.in-addr.arpa. @127.0.0.1 | grep -Eq 'www.dnscrypt-test.com' || fail $LINENO
78+
t || dig -p${DNS_PORT} +short ptr 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.d.f.ip6.arpa. @127.0.0.1 | grep -Eq 'ipv6.dnscrypt-test.com' || fail $LINENO
7979

8080
section
81-
t || dig -p${DNS_PORT} telemetry.example @127.0.0.1 | grep -Fq 'locally blocked' || fail
81+
t || dig -p${DNS_PORT} telemetry.example @127.0.0.1 | grep -Fq 'locally blocked' || fail $LINENO
8282

8383
section
84-
t || dig -p${DNS_PORT} dns.google @127.0.0.1 | grep -Fq 'locally blocked' || fail
84+
t || dig -p${DNS_PORT} dns.google @127.0.0.1 | grep -Fq 'locally blocked' || fail $LINENO
8585

8686
section
87-
t || dig -p${DNS_PORT} tracker.xdebian.org @127.0.0.1 | grep -Fq 'locally blocked' || fail
88-
t || dig -p${DNS_PORT} tracker.debian.org @127.0.0.1 | grep -Fqv 'locally blocked' || fail
87+
t || dig -p${DNS_PORT} tracker.xdebian.org @127.0.0.1 | grep -Fq 'locally blocked' || fail $LINENO
88+
t || dig -p${DNS_PORT} tracker.debian.org @127.0.0.1 | grep -Fqv 'locally blocked' || fail $LINENO
8989

9090
section
91-
t || curl --insecure -siL https://127.0.0.1:${HTTP_PORT}/ | grep -Fq 'HTTP/2 404' || fail
92-
t || curl --insecure -sL https://127.0.0.1:${HTTP_PORT}/dns-query | grep -Fq 'dnscrypt-proxy local DoH server' || fail
91+
t || curl --insecure -siL https://127.0.0.1:${HTTP_PORT}/ | grep -Fq 'HTTP/2 404' || fail $LINENO
92+
t || curl --insecure -sL https://127.0.0.1:${HTTP_PORT}/dns-query | grep -Fq 'dnscrypt-proxy local DoH server' || fail $LINENO
9393
t ||
9494
echo yv4BAAABAAAAAAABAAACAAEAACkQAAAAgAAAAA== | base64 -d |
9595
curl -H'Content-Type: application/dns-message' -H'Accept: application/dns-message' --data-binary @- -D - --insecure https://127.0.0.1:${HTTP_PORT}/dns-query 2>/dev/null |
96-
grep -Fq application/dns-message || fail
96+
grep -Fq application/dns-message || fail $LINENO
9797

9898
kill $(cat /tmp/dnscrypt-proxy.pidfile)
9999

100100
sleep 5
101101

102102
section
103-
t || grep -Fq 'telemetry.example' blocked-names.log || fail
104-
t || grep -Fq 'telemetry.*' blocked-names.log || fail
105-
t || grep -Fq 'tracker.xdebian.org' blocked-names.log || fail
106-
t || grep -Fq 'tracker.*' blocked-names.log || fail
103+
t || grep -Fq 'telemetry.example' blocked-names.log || fail $LINENO
104+
t || grep -Fq 'telemetry.*' blocked-names.log || fail $LINENO
105+
t || grep -Fq 'tracker.xdebian.org' blocked-names.log || fail $LINENO
106+
t || grep -Fq 'tracker.*' blocked-names.log || fail $LINENO
107107

108108
section
109-
t || grep -Fq 'dns.google' blocked-ips.log || fail
110-
t || grep -Fq '8.8.8.8' blocked-ips.log || fail
109+
t || grep -Fq 'dns.google' blocked-ips.log || fail $LINENO
110+
t || grep -Fq '8.8.8.8' blocked-ips.log || fail $LINENO
111111

112112
section
113-
t || grep -Fq 'a.www.dnscrypt-test' nx.log || fail
113+
t || grep -Fq 'a.www.dnscrypt-test' nx.log || fail $LINENO
114114

115115
section
116-
t || grep -Fq 'a.www.dnscrypt-test' nx.log || fail
116+
t || grep -Fq 'a.www.dnscrypt-test' nx.log || fail $LINENO
117117

118118
section
119-
t || grep -Eq 'microsoft.com.*PASS.*[^-]$' query.log || fail
120-
t || grep -Eq 'microsoft.com.*PASS.*-$' query.log || fail
121-
t || grep -Eq 'ipv6.google.com.*SYNTH' query.log || fail
122-
t || grep -Eq 'invalid.*SYNTH' query.log || fail
123-
t || grep -Eq '168.192.in-addr.arpa.*SYNTH' query.log || fail
124-
t || grep -Eq 'darpa.mil.*FORWARD' query.log || fail
125-
t || grep -Eq 'www.darpa.mil.*FORWARD' query.log || fail
126-
t || grep -Eq 'download.windowsupdate.com.*FORWARD' query.log || fail
127-
t || grep -Eq 'cloakedunregistered.com.*CLOAK' query.log || fail
128-
t || grep -Eq 'www.cloakedunregistered2.com.*CLOAK' query.log || fail
129-
t || grep -Eq 'www.dnscrypt-test.*CLOAK' query.log || fail
130-
t || grep -Eq 'a.www.dnscrypt-test.*NXDOMAIN' query.log || fail
131-
t || grep -Eq 'telemetry.example.*REJECT' query.log || fail
132-
t || grep -Eq 'dns.google.*REJECT' query.log || fail
133-
t || grep -Eq 'tracker.xdebian.org.*REJECT' query.log || fail
134-
t || grep -Eq 'tracker.debian.org.*PASS' query.log || fail
135-
t || grep -Eq '[.].*NS.*PASS' query.log || fail
119+
t || grep -Eq 'microsoft.com.*PASS.*[^-]$' query.log || fail $LINENO
120+
t || grep -Eq 'microsoft.com.*PASS.*-$' query.log || fail $LINENO
121+
t || grep -Eq 'ipv6.google.com.*SYNTH' query.log || fail $LINENO
122+
t || grep -Eq 'invalid.*SYNTH' query.log || fail $LINENO
123+
t || grep -Eq '168.192.in-addr.arpa.*SYNTH' query.log || fail $LINENO
124+
t || grep -Eq 'darpa.mil.*FORWARD' query.log || fail $LINENO
125+
t || grep -Eq 'www.darpa.mil.*FORWARD' query.log || fail $LINENO
126+
t || grep -Eq 'download.windowsupdate.com.*FORWARD' query.log || fail $LINENO
127+
t || grep -Eq 'cloakedunregistered.com.*CLOAK' query.log || fail $LINENO
128+
t || grep -Eq 'www.cloakedunregistered2.com.*CLOAK' query.log || fail $LINENO
129+
t || grep -Eq 'www.dnscrypt-test.*CLOAK' query.log || fail $LINENO
130+
t || grep -Eq 'a.www.dnscrypt-test.*NXDOMAIN' query.log || fail $LINENO
131+
t || grep -Eq 'telemetry.example.*REJECT' query.log || fail $LINENO
132+
t || grep -Eq 'dns.google.*REJECT' query.log || fail $LINENO
133+
t || grep -Eq 'tracker.xdebian.org.*REJECT' query.log || fail $LINENO
134+
t || grep -Eq 'tracker.debian.org.*PASS' query.log || fail $LINENO
135+
t || grep -Eq '[.].*NS.*PASS' query.log || fail $LINENO
136136

137137
section
138-
t || grep -Fq 'tracker.debian.org' allowed-names.log || fail
139-
t || grep -Fq '*.tracker.debian' allowed-names.log || fail
138+
t || grep -Fq 'tracker.debian.org' allowed-names.log || fail $LINENO
139+
t || grep -Fq '*.tracker.debian' allowed-names.log || fail $LINENO
140140

141141
section
142142
../dnscrypt-proxy/dnscrypt-proxy -loglevel 3 -config test3-dnscrypt-proxy.toml -pidfile /tmp/dnscrypt-proxy.pidfile &
143143
sleep 5
144144

145145
section
146-
t || dig -p${DNS_PORT} A microsoft.com @127.0.0.1 | grep -Fq "NOERROR" || fail
147-
t || dig -p${DNS_PORT} A MICROSOFT.COM @127.0.0.1 | grep -Fq "NOERROR" || fail
146+
t || dig -p${DNS_PORT} A microsoft.com @127.0.0.1 | grep -Fq "NOERROR" || fail $LINENO
147+
t || dig -p${DNS_PORT} A MICROSOFT.COM @127.0.0.1 | grep -Fq "NOERROR" || fail $LINENO
148148

149149
kill $(cat /tmp/dnscrypt-proxy.pidfile)
150150
sleep 5
@@ -154,8 +154,8 @@ section
154154
sleep 5
155155

156156
section
157-
t || dig -p${DNS_PORT} A microsoft.com @127.0.0.1 | grep -Fq "NOERROR" || fail
158-
t || dig -p${DNS_PORT} A cloudflare.com @127.0.0.1 | grep -Fq "NOERROR" || fail
157+
t || dig -p${DNS_PORT} A microsoft.com @127.0.0.1 | grep -Fq "NOERROR" || fail $LINENO
158+
t || dig -p${DNS_PORT} A cloudflare.com @127.0.0.1 | grep -Fq "NOERROR" || fail $LINENO
159159

160160
kill $(cat /tmp/odoh-proxied.pidfile)
161161
sleep 5

0 commit comments

Comments
 (0)