1package nettests
2
3// Group is a group of nettests
4type Group struct {
5	Label        string
6	Nettests     []Nettest
7	UnattendedOK bool
8}
9
10// All contains all the nettests that can be run by the user
11var All = map[string]Group{
12	"websites": {
13		Label: "Websites",
14		Nettests: []Nettest{
15			WebConnectivity{},
16		},
17		UnattendedOK: true,
18	},
19	"performance": {
20		Label: "Performance",
21		Nettests: []Nettest{
22			Dash{},
23			NDT{},
24		},
25	},
26	"middlebox": {
27		Label: "Middleboxes",
28		Nettests: []Nettest{
29			HTTPInvalidRequestLine{},
30			HTTPHeaderFieldManipulation{},
31		},
32		UnattendedOK: true,
33	},
34	"im": {
35		Label: "Instant Messaging",
36		Nettests: []Nettest{
37			FacebookMessenger{},
38			Telegram{},
39			WhatsApp{},
40			Signal{},
41		},
42		UnattendedOK: true,
43	},
44	"circumvention": {
45		Label: "Circumvention Tools",
46		Nettests: []Nettest{
47			Psiphon{},
48			RiseupVPN{},
49			Tor{},
50		},
51		UnattendedOK: true,
52	},
53	"experimental": {
54		Label: "Experimental Nettests",
55		Nettests: []Nettest{
56			DNSCheck{},
57			STUNReachability{},
58		},
59	},
60}
61