This repository has been archived by the owner on Jun 1, 2021. It is now read-only.
/
non-failed.classification.domain-scope.coverage.sh
executable file
·55 lines (47 loc) · 2.27 KB
/
non-failed.classification.domain-scope.coverage.sh
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
#!/usr/bin/env bash
set -e
aggregatesAnalysisJson="aggregates.analysis.json"
read -d '' getNonFailedClassificationDomainScope <<-'EOF' || true
{
path: $path,
"non-failed-domains": .successfulOrigin.origin.counts.count,
"is-same-domain": .successfulOrigin.unfilteredUrls.requestedUrlsDistinct.coverage.classification."is-same-domain",
"is-subdomain": .successfulOrigin.unfilteredUrls.requestedUrlsDistinct.coverage.classification."is-subdomain",
"is-superdomain": .successfulOrigin.unfilteredUrls.requestedUrlsDistinct.coverage.classification."is-superdomain",
"is-internal-domain": .successfulOrigin.unfilteredUrls.requestedUrlsDistinct.coverage.classification."is-internal-domain",
"is-external-domain": .successfulOrigin.unfilteredUrls.requestedUrlsDistinct.coverage.classification."is-external-domain",
}
EOF
read -d '' mapData <<-'EOF' || true
{
dataset: (.path | split("/")[-1:][0]),
"non-failed-domains",
requests,
"is-same-domain",
"is-subdomain",
"is-superdomain",
"is-internal-domain",
"is-external-domain",
"is-mixed-domain": (1 - ."is-internal-domain" - ."is-external-domain"),
}
EOF
read -d '' renameForTsvColumnOrdering <<-'EOF' || true
map(
{
"01--Dataset": .dataset,
"02--Domains": ."non-failed-domains",
"03--Same domain": ."is-same-domain",
"04--Subdomain": ."is-subdomain",
"05--Superdomain": ."is-superdomain",
"06--Internal domain": ."is-internal-domain",
"07--External domain": ."is-external-domain",
"08--Mixed": ."is-mixed-domain",
}
)
EOF
read -d '' sortObjects <<-'EOF' || true
sort_by(.dataset)
EOF
"${BASH_SOURCE%/*}/../util/dataset-query.sh" "$@" -- test -e "$aggregatesAnalysisJson" '&&' cat "$aggregatesAnalysisJson" '|' jq --arg path '"$PWD"' "'$getNonFailedClassificationDomainScope'" >"datasets.non-failed.classification.domain-scope.coverage.json"
<"datasets.non-failed.classification.domain-scope.coverage.json" jq "$mapData" | "${BASH_SOURCE%/*}/../util/to-array.sh" | jq "$sortObjects" >"datasets.non-failed.classification.domain-scope.coverage.sorted.json"
<"datasets.non-failed.classification.domain-scope.coverage.sorted.json" jq "$renameForTsvColumnOrdering" | "${BASH_SOURCE%/*}/../util/array-of-objects-to-tsv.sh" | "${BASH_SOURCE%/*}/../util/clean-tsv-sorted-header.sh" >"datasets.non-failed.classification.domain-scope.coverage.sorted.tsv"