chore(models): common Server & Servers for all providers (#943)
This commit is contained in:
@@ -18,7 +18,7 @@ func Test_Windscribe_GetConnection(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
testCases := map[string]struct {
|
||||
servers []models.WindscribeServer
|
||||
servers []models.Server
|
||||
selection settings.ServerSelection
|
||||
connection models.Connection
|
||||
err error
|
||||
@@ -28,7 +28,7 @@ func Test_Windscribe_GetConnection(t *testing.T) {
|
||||
err: errors.New("no server found: for VPN openvpn; protocol udp"),
|
||||
},
|
||||
"no filter": {
|
||||
servers: []models.WindscribeServer{
|
||||
servers: []models.Server{
|
||||
{VPN: constants.OpenVPN, IPs: []net.IP{net.IPv4(1, 1, 1, 1)}},
|
||||
{VPN: constants.OpenVPN, IPs: []net.IP{net.IPv4(2, 2, 2, 2)}},
|
||||
{VPN: constants.OpenVPN, IPs: []net.IP{net.IPv4(3, 3, 3, 3)}},
|
||||
@@ -45,7 +45,7 @@ func Test_Windscribe_GetConnection(t *testing.T) {
|
||||
selection: settings.ServerSelection{
|
||||
TargetIP: net.IPv4(2, 2, 2, 2),
|
||||
}.WithDefaults(providers.Windscribe),
|
||||
servers: []models.WindscribeServer{
|
||||
servers: []models.Server{
|
||||
{VPN: constants.OpenVPN, IPs: []net.IP{net.IPv4(1, 1, 1, 1)}},
|
||||
{VPN: constants.OpenVPN, IPs: []net.IP{net.IPv4(2, 2, 2, 2)}},
|
||||
{VPN: constants.OpenVPN, IPs: []net.IP{net.IPv4(3, 3, 3, 3)}},
|
||||
@@ -61,7 +61,7 @@ func Test_Windscribe_GetConnection(t *testing.T) {
|
||||
selection: settings.ServerSelection{
|
||||
Hostnames: []string{"b"},
|
||||
}.WithDefaults(providers.Windscribe),
|
||||
servers: []models.WindscribeServer{
|
||||
servers: []models.Server{
|
||||
{VPN: constants.OpenVPN, Hostname: "a", IPs: []net.IP{net.IPv4(1, 1, 1, 1)}},
|
||||
{VPN: constants.OpenVPN, Hostname: "b", IPs: []net.IP{net.IPv4(2, 2, 2, 2)}},
|
||||
{VPN: constants.OpenVPN, Hostname: "a", IPs: []net.IP{net.IPv4(3, 3, 3, 3)}},
|
||||
|
||||
@@ -7,7 +7,7 @@ import (
|
||||
)
|
||||
|
||||
func (w *Windscribe) filterServers(selection settings.ServerSelection) (
|
||||
servers []models.WindscribeServer, err error) {
|
||||
servers []models.Server, err error) {
|
||||
for _, server := range w.servers {
|
||||
switch {
|
||||
case
|
||||
|
||||
@@ -17,9 +17,9 @@ func Test_Windscribe_filterServers(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
testCases := map[string]struct {
|
||||
servers []models.WindscribeServer
|
||||
servers []models.Server
|
||||
selection settings.ServerSelection
|
||||
filtered []models.WindscribeServer
|
||||
filtered []models.Server
|
||||
err error
|
||||
}{
|
||||
"no server available": {
|
||||
@@ -27,13 +27,13 @@ func Test_Windscribe_filterServers(t *testing.T) {
|
||||
err: errors.New("no server found: for VPN openvpn; protocol udp"),
|
||||
},
|
||||
"no filter": {
|
||||
servers: []models.WindscribeServer{
|
||||
servers: []models.Server{
|
||||
{VPN: constants.OpenVPN, Hostname: "a"},
|
||||
{VPN: constants.OpenVPN, Hostname: "b"},
|
||||
{VPN: constants.OpenVPN, Hostname: "c"},
|
||||
},
|
||||
selection: settings.ServerSelection{}.WithDefaults(providers.Windscribe),
|
||||
filtered: []models.WindscribeServer{
|
||||
filtered: []models.Server{
|
||||
{VPN: constants.OpenVPN, Hostname: "a"},
|
||||
{VPN: constants.OpenVPN, Hostname: "b"},
|
||||
{VPN: constants.OpenVPN, Hostname: "c"},
|
||||
@@ -43,12 +43,12 @@ func Test_Windscribe_filterServers(t *testing.T) {
|
||||
selection: settings.ServerSelection{
|
||||
VPN: constants.Wireguard,
|
||||
}.WithDefaults(providers.Windscribe),
|
||||
servers: []models.WindscribeServer{
|
||||
servers: []models.Server{
|
||||
{VPN: constants.OpenVPN, Hostname: "a"},
|
||||
{VPN: constants.Wireguard, Hostname: "b"},
|
||||
{VPN: constants.OpenVPN, Hostname: "c"},
|
||||
},
|
||||
filtered: []models.WindscribeServer{
|
||||
filtered: []models.Server{
|
||||
{VPN: constants.Wireguard, Hostname: "b"},
|
||||
},
|
||||
},
|
||||
@@ -56,12 +56,12 @@ func Test_Windscribe_filterServers(t *testing.T) {
|
||||
selection: settings.ServerSelection{
|
||||
Regions: []string{"b"},
|
||||
}.WithDefaults(providers.Windscribe),
|
||||
servers: []models.WindscribeServer{
|
||||
servers: []models.Server{
|
||||
{VPN: constants.OpenVPN, Region: "a"},
|
||||
{VPN: constants.OpenVPN, Region: "b"},
|
||||
{VPN: constants.OpenVPN, Region: "c"},
|
||||
},
|
||||
filtered: []models.WindscribeServer{
|
||||
filtered: []models.Server{
|
||||
{VPN: constants.OpenVPN, Region: "b"},
|
||||
},
|
||||
},
|
||||
@@ -69,12 +69,12 @@ func Test_Windscribe_filterServers(t *testing.T) {
|
||||
selection: settings.ServerSelection{
|
||||
Cities: []string{"b"},
|
||||
}.WithDefaults(providers.Windscribe),
|
||||
servers: []models.WindscribeServer{
|
||||
servers: []models.Server{
|
||||
{VPN: constants.OpenVPN, City: "a"},
|
||||
{VPN: constants.OpenVPN, City: "b"},
|
||||
{VPN: constants.OpenVPN, City: "c"},
|
||||
},
|
||||
filtered: []models.WindscribeServer{
|
||||
filtered: []models.Server{
|
||||
{VPN: constants.OpenVPN, City: "b"},
|
||||
},
|
||||
},
|
||||
@@ -82,12 +82,12 @@ func Test_Windscribe_filterServers(t *testing.T) {
|
||||
selection: settings.ServerSelection{
|
||||
Hostnames: []string{"b"},
|
||||
}.WithDefaults(providers.Windscribe),
|
||||
servers: []models.WindscribeServer{
|
||||
servers: []models.Server{
|
||||
{VPN: constants.OpenVPN, Hostname: "a"},
|
||||
{VPN: constants.OpenVPN, Hostname: "b"},
|
||||
{VPN: constants.OpenVPN, Hostname: "c"},
|
||||
},
|
||||
filtered: []models.WindscribeServer{
|
||||
filtered: []models.Server{
|
||||
{VPN: constants.OpenVPN, Hostname: "b"},
|
||||
},
|
||||
},
|
||||
|
||||
@@ -9,12 +9,12 @@ import (
|
||||
)
|
||||
|
||||
type Windscribe struct {
|
||||
servers []models.WindscribeServer
|
||||
servers []models.Server
|
||||
randSource rand.Source
|
||||
utils.NoPortForwarder
|
||||
}
|
||||
|
||||
func New(servers []models.WindscribeServer, randSource rand.Source) *Windscribe {
|
||||
func New(servers []models.Server, randSource rand.Source) *Windscribe {
|
||||
return &Windscribe{
|
||||
servers: servers,
|
||||
randSource: randSource,
|
||||
|
||||
Reference in New Issue
Block a user