// Package mocks contains mocks for tunnel. package mocks import ( "net/url" "time" "github.com/ooni/probe-cli/v3/internal/tunnel" ) // Tunnel allows mocking a tunnel. type Tunnel struct { // MockBootstrapTime allows to mock BootstrapTime. MockBootstrapTime func() time.Duration // MockSOCKS5ProxyURL allows to mock Socks5ProxyURL. MockSOCKS5ProxyURL func() *url.URL // MockStop allows to mock Stop. MockStop func() } func (t *Tunnel) BootstrapTime() time.Duration { return t.MockBootstrapTime() } // SOCKS5ProxyURL implements Tunnel.SOCKS5ProxyURL. func (t *Tunnel) SOCKS5ProxyURL() *url.URL { return t.MockSOCKS5ProxyURL() } // Stop implements Tunnel.Stop. func (t *Tunnel) Stop() { t.MockStop() } var _ tunnel.Tunnel = &Tunnel{}