testing

package
v0.13.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 12, 2021 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Overview

Package testing is a generated GoMock package.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type MockClient

type MockClient struct {
	// contains filtered or unexported fields
}

MockClient is a mock of Client interface

func NewMockClient

func NewMockClient(ctrl *gomock.Controller) *MockClient

NewMockClient creates a new mock instance

func (*MockClient) AddPolicyRuleAddress

func (m *MockClient) AddPolicyRuleAddress(arg0 uint32, arg1 types.AddressType, arg2 []types.Address, arg3 *uint16) error

AddPolicyRuleAddress mocks base method

func (*MockClient) BatchInstallPolicyRuleFlows added in v0.9.0

func (m *MockClient) BatchInstallPolicyRuleFlows(arg0 []*types.PolicyRule) error

BatchInstallPolicyRuleFlows mocks base method

func (*MockClient) DeletePolicyRuleAddress

func (m *MockClient) DeletePolicyRuleAddress(arg0 uint32, arg1 types.AddressType, arg2 []types.Address, arg3 *uint16) error

DeletePolicyRuleAddress mocks base method

func (*MockClient) DeleteStaleFlows added in v0.3.0

func (m *MockClient) DeleteStaleFlows() error

DeleteStaleFlows mocks base method

func (*MockClient) Disconnect

func (m *MockClient) Disconnect() error

Disconnect mocks base method

func (*MockClient) EXPECT

func (m *MockClient) EXPECT() *MockClientMockRecorder

EXPECT returns an object that allows the caller to indicate expected use

func (*MockClient) GetFlowTableStatus

func (m *MockClient) GetFlowTableStatus() []openflow.TableStatus

GetFlowTableStatus mocks base method

func (*MockClient) GetNetworkPolicyFlowKeys added in v0.6.0

func (m *MockClient) GetNetworkPolicyFlowKeys(arg0, arg1 string) []string

GetNetworkPolicyFlowKeys mocks base method

func (*MockClient) GetPodFlowKeys added in v0.6.0

func (m *MockClient) GetPodFlowKeys(arg0 string) []string

GetPodFlowKeys mocks base method

func (*MockClient) GetPolicyInfoFromConjunction added in v0.11.0

func (m *MockClient) GetPolicyInfoFromConjunction(arg0 uint32) (string, string)

GetPolicyInfoFromConjunction mocks base method

func (*MockClient) GetTunnelVirtualMAC added in v0.7.0

func (m *MockClient) GetTunnelVirtualMAC() net.HardwareAddr

GetTunnelVirtualMAC mocks base method

func (*MockClient) InitialTLVMap added in v0.8.0

func (m *MockClient) InitialTLVMap() error

InitialTLVMap mocks base method

func (*MockClient) Initialize

func (m *MockClient) Initialize(arg0 types.RoundInfo, arg1 *config.NodeConfig, arg2 config.TrafficEncapModeType) (<-chan struct{}, error)

Initialize mocks base method

func (*MockClient) InstallBridgeUplinkFlows added in v0.7.0

func (m *MockClient) InstallBridgeUplinkFlows() error

InstallBridgeUplinkFlows mocks base method

func (*MockClient) InstallClusterServiceCIDRFlows

func (m *MockClient) InstallClusterServiceCIDRFlows(arg0 []*net.IPNet) error

InstallClusterServiceCIDRFlows mocks base method

func (*MockClient) InstallClusterServiceFlows added in v0.8.0

func (m *MockClient) InstallClusterServiceFlows() error

InstallClusterServiceFlows mocks base method

func (*MockClient) InstallDefaultTunnelFlows added in v0.3.0

func (m *MockClient) InstallDefaultTunnelFlows() error

InstallDefaultTunnelFlows mocks base method

func (*MockClient) InstallEndpointFlows added in v0.8.0

func (m *MockClient) InstallEndpointFlows(arg0 openflow.Protocol, arg1 []proxy.Endpoint, arg2 bool) error

InstallEndpointFlows mocks base method

func (*MockClient) InstallExternalFlows added in v0.7.0

func (m *MockClient) InstallExternalFlows() error

InstallExternalFlows mocks base method

func (*MockClient) InstallGatewayFlows

func (m *MockClient) InstallGatewayFlows() error

InstallGatewayFlows mocks base method

func (*MockClient) InstallLoadBalancerServiceFromOutsideFlows added in v0.9.0

func (m *MockClient) InstallLoadBalancerServiceFromOutsideFlows(arg0 net.IP, arg1 uint16, arg2 openflow.Protocol) error

InstallLoadBalancerServiceFromOutsideFlows mocks base method

func (*MockClient) InstallNodeFlows

func (m *MockClient) InstallNodeFlows(arg0 string, arg1 map[*net.IPNet]net.IP, arg2 net.IP, arg3 uint32) error

InstallNodeFlows mocks base method

func (*MockClient) InstallPodFlows

func (m *MockClient) InstallPodFlows(arg0 string, arg1 []net.IP, arg2 net.HardwareAddr, arg3 uint32) error

InstallPodFlows mocks base method

func (*MockClient) InstallPolicyRuleFlows

func (m *MockClient) InstallPolicyRuleFlows(arg0 *types.PolicyRule) error

InstallPolicyRuleFlows mocks base method

func (*MockClient) InstallServiceFlows added in v0.8.0

func (m *MockClient) InstallServiceFlows(arg0 openflow.GroupIDType, arg1 net.IP, arg2 uint16, arg3 openflow.Protocol, arg4 uint16) error

InstallServiceFlows mocks base method

func (*MockClient) InstallServiceGroup added in v0.8.0

func (m *MockClient) InstallServiceGroup(arg0 openflow.GroupIDType, arg1 bool, arg2 []proxy.Endpoint) error

InstallServiceGroup mocks base method

func (*MockClient) InstallTraceflowFlows added in v0.8.0

func (m *MockClient) InstallTraceflowFlows(arg0 byte) error

InstallTraceflowFlows mocks base method

func (*MockClient) IsConnected added in v0.3.0

func (m *MockClient) IsConnected() bool

IsConnected mocks base method

func (*MockClient) IsIPv4Enabled added in v0.11.0

func (m *MockClient) IsIPv4Enabled() bool

IsIPv4Enabled mocks base method

func (*MockClient) IsIPv6Enabled added in v0.11.0

func (m *MockClient) IsIPv6Enabled() bool

IsIPv6Enabled mocks base method

func (*MockClient) NetworkPolicyMetrics added in v0.10.0

func (m *MockClient) NetworkPolicyMetrics() map[uint32]*types.RuleMetric

NetworkPolicyMetrics mocks base method

func (*MockClient) ReassignFlowPriorities added in v0.8.0

func (m *MockClient) ReassignFlowPriorities(arg0 map[uint16]uint16, arg1 openflow.TableIDType) error

ReassignFlowPriorities mocks base method

func (*MockClient) RegisterPacketInHandler added in v0.8.0

func (m *MockClient) RegisterPacketInHandler(arg0 byte, arg1 string, arg2 interface{})

RegisterPacketInHandler mocks base method

func (*MockClient) ReplayFlows added in v0.3.0

func (m *MockClient) ReplayFlows()

ReplayFlows mocks base method

func (*MockClient) SendTraceflowPacket added in v0.8.0

func (m *MockClient) SendTraceflowPacket(arg0 byte, arg1, arg2, arg3, arg4 string, arg5, arg6 byte, arg7, arg8, arg9 uint16, arg10 byte, arg11, arg12 uint16, arg13, arg14 byte, arg15, arg16 uint16, arg17 uint32, arg18 int32) error

SendTraceflowPacket mocks base method

func (*MockClient) StartPacketInHandler added in v0.8.0

func (m *MockClient) StartPacketInHandler(arg0 []byte, arg1 <-chan struct{})

StartPacketInHandler mocks base method

func (*MockClient) SubscribePacketIn added in v0.8.0

func (m *MockClient) SubscribePacketIn(arg0 byte, arg1 chan *ofctrl.PacketIn) error

SubscribePacketIn mocks base method

func (*MockClient) UninstallEndpointFlows added in v0.8.0

func (m *MockClient) UninstallEndpointFlows(arg0 openflow.Protocol, arg1 proxy.Endpoint) error

UninstallEndpointFlows mocks base method

func (*MockClient) UninstallLoadBalancerServiceFromOutsideFlows added in v0.11.1

func (m *MockClient) UninstallLoadBalancerServiceFromOutsideFlows(arg0 net.IP, arg1 uint16, arg2 openflow.Protocol) error

UninstallLoadBalancerServiceFromOutsideFlows mocks base method

func (*MockClient) UninstallNodeFlows

func (m *MockClient) UninstallNodeFlows(arg0 string) error

UninstallNodeFlows mocks base method

func (*MockClient) UninstallPodFlows

func (m *MockClient) UninstallPodFlows(arg0 string) error

UninstallPodFlows mocks base method

func (*MockClient) UninstallPolicyRuleFlows

func (m *MockClient) UninstallPolicyRuleFlows(arg0 uint32) ([]string, error)

UninstallPolicyRuleFlows mocks base method

func (*MockClient) UninstallServiceFlows added in v0.8.0

func (m *MockClient) UninstallServiceFlows(arg0 net.IP, arg1 uint16, arg2 openflow.Protocol) error

UninstallServiceFlows mocks base method

func (*MockClient) UninstallServiceGroup added in v0.8.0

func (m *MockClient) UninstallServiceGroup(arg0 openflow.GroupIDType) error

UninstallServiceGroup mocks base method

type MockClientMockRecorder

type MockClientMockRecorder struct {
	// contains filtered or unexported fields
}

MockClientMockRecorder is the mock recorder for MockClient

func (*MockClientMockRecorder) AddPolicyRuleAddress

func (mr *MockClientMockRecorder) AddPolicyRuleAddress(arg0, arg1, arg2, arg3 interface{}) *gomock.Call

AddPolicyRuleAddress indicates an expected call of AddPolicyRuleAddress

func (*MockClientMockRecorder) BatchInstallPolicyRuleFlows added in v0.9.0

func (mr *MockClientMockRecorder) BatchInstallPolicyRuleFlows(arg0 interface{}) *gomock.Call

BatchInstallPolicyRuleFlows indicates an expected call of BatchInstallPolicyRuleFlows

func (*MockClientMockRecorder) DeletePolicyRuleAddress

func (mr *MockClientMockRecorder) DeletePolicyRuleAddress(arg0, arg1, arg2, arg3 interface{}) *gomock.Call

DeletePolicyRuleAddress indicates an expected call of DeletePolicyRuleAddress

func (*MockClientMockRecorder) DeleteStaleFlows added in v0.3.0

func (mr *MockClientMockRecorder) DeleteStaleFlows() *gomock.Call

DeleteStaleFlows indicates an expected call of DeleteStaleFlows

func (*MockClientMockRecorder) Disconnect

func (mr *MockClientMockRecorder) Disconnect() *gomock.Call

Disconnect indicates an expected call of Disconnect

func (*MockClientMockRecorder) GetFlowTableStatus

func (mr *MockClientMockRecorder) GetFlowTableStatus() *gomock.Call

GetFlowTableStatus indicates an expected call of GetFlowTableStatus

func (*MockClientMockRecorder) GetNetworkPolicyFlowKeys added in v0.6.0

func (mr *MockClientMockRecorder) GetNetworkPolicyFlowKeys(arg0, arg1 interface{}) *gomock.Call

GetNetworkPolicyFlowKeys indicates an expected call of GetNetworkPolicyFlowKeys

func (*MockClientMockRecorder) GetPodFlowKeys added in v0.6.0

func (mr *MockClientMockRecorder) GetPodFlowKeys(arg0 interface{}) *gomock.Call

GetPodFlowKeys indicates an expected call of GetPodFlowKeys

func (*MockClientMockRecorder) GetPolicyInfoFromConjunction added in v0.11.0

func (mr *MockClientMockRecorder) GetPolicyInfoFromConjunction(arg0 interface{}) *gomock.Call

GetPolicyInfoFromConjunction indicates an expected call of GetPolicyInfoFromConjunction

func (*MockClientMockRecorder) GetTunnelVirtualMAC added in v0.7.0

func (mr *MockClientMockRecorder) GetTunnelVirtualMAC() *gomock.Call

GetTunnelVirtualMAC indicates an expected call of GetTunnelVirtualMAC

func (*MockClientMockRecorder) InitialTLVMap added in v0.8.0

func (mr *MockClientMockRecorder) InitialTLVMap() *gomock.Call

InitialTLVMap indicates an expected call of InitialTLVMap

func (*MockClientMockRecorder) Initialize

func (mr *MockClientMockRecorder) Initialize(arg0, arg1, arg2 interface{}) *gomock.Call

Initialize indicates an expected call of Initialize

func (*MockClientMockRecorder) InstallBridgeUplinkFlows added in v0.7.0

func (mr *MockClientMockRecorder) InstallBridgeUplinkFlows() *gomock.Call

InstallBridgeUplinkFlows indicates an expected call of InstallBridgeUplinkFlows

func (*MockClientMockRecorder) InstallClusterServiceCIDRFlows

func (mr *MockClientMockRecorder) InstallClusterServiceCIDRFlows(arg0 interface{}) *gomock.Call

InstallClusterServiceCIDRFlows indicates an expected call of InstallClusterServiceCIDRFlows

func (*MockClientMockRecorder) InstallClusterServiceFlows added in v0.8.0

func (mr *MockClientMockRecorder) InstallClusterServiceFlows() *gomock.Call

InstallClusterServiceFlows indicates an expected call of InstallClusterServiceFlows

func (*MockClientMockRecorder) InstallDefaultTunnelFlows added in v0.3.0

func (mr *MockClientMockRecorder) InstallDefaultTunnelFlows() *gomock.Call

InstallDefaultTunnelFlows indicates an expected call of InstallDefaultTunnelFlows

func (*MockClientMockRecorder) InstallEndpointFlows added in v0.8.0

func (mr *MockClientMockRecorder) InstallEndpointFlows(arg0, arg1, arg2 interface{}) *gomock.Call

InstallEndpointFlows indicates an expected call of InstallEndpointFlows

func (*MockClientMockRecorder) InstallExternalFlows added in v0.7.0

func (mr *MockClientMockRecorder) InstallExternalFlows() *gomock.Call

InstallExternalFlows indicates an expected call of InstallExternalFlows

func (*MockClientMockRecorder) InstallGatewayFlows

func (mr *MockClientMockRecorder) InstallGatewayFlows() *gomock.Call

InstallGatewayFlows indicates an expected call of InstallGatewayFlows

func (*MockClientMockRecorder) InstallLoadBalancerServiceFromOutsideFlows added in v0.9.0

func (mr *MockClientMockRecorder) InstallLoadBalancerServiceFromOutsideFlows(arg0, arg1, arg2 interface{}) *gomock.Call

InstallLoadBalancerServiceFromOutsideFlows indicates an expected call of InstallLoadBalancerServiceFromOutsideFlows

func (*MockClientMockRecorder) InstallNodeFlows

func (mr *MockClientMockRecorder) InstallNodeFlows(arg0, arg1, arg2, arg3 interface{}) *gomock.Call

InstallNodeFlows indicates an expected call of InstallNodeFlows

func (*MockClientMockRecorder) InstallPodFlows

func (mr *MockClientMockRecorder) InstallPodFlows(arg0, arg1, arg2, arg3 interface{}) *gomock.Call

InstallPodFlows indicates an expected call of InstallPodFlows

func (*MockClientMockRecorder) InstallPolicyRuleFlows

func (mr *MockClientMockRecorder) InstallPolicyRuleFlows(arg0 interface{}) *gomock.Call

InstallPolicyRuleFlows indicates an expected call of InstallPolicyRuleFlows

func (*MockClientMockRecorder) InstallServiceFlows added in v0.8.0

func (mr *MockClientMockRecorder) InstallServiceFlows(arg0, arg1, arg2, arg3, arg4 interface{}) *gomock.Call

InstallServiceFlows indicates an expected call of InstallServiceFlows

func (*MockClientMockRecorder) InstallServiceGroup added in v0.8.0

func (mr *MockClientMockRecorder) InstallServiceGroup(arg0, arg1, arg2 interface{}) *gomock.Call

InstallServiceGroup indicates an expected call of InstallServiceGroup

func (*MockClientMockRecorder) InstallTraceflowFlows added in v0.8.0

func (mr *MockClientMockRecorder) InstallTraceflowFlows(arg0 interface{}) *gomock.Call

InstallTraceflowFlows indicates an expected call of InstallTraceflowFlows

func (*MockClientMockRecorder) IsConnected added in v0.3.0

func (mr *MockClientMockRecorder) IsConnected() *gomock.Call

IsConnected indicates an expected call of IsConnected

func (*MockClientMockRecorder) IsIPv4Enabled added in v0.11.0

func (mr *MockClientMockRecorder) IsIPv4Enabled() *gomock.Call

IsIPv4Enabled indicates an expected call of IsIPv4Enabled

func (*MockClientMockRecorder) IsIPv6Enabled added in v0.11.0

func (mr *MockClientMockRecorder) IsIPv6Enabled() *gomock.Call

IsIPv6Enabled indicates an expected call of IsIPv6Enabled

func (*MockClientMockRecorder) NetworkPolicyMetrics added in v0.10.0

func (mr *MockClientMockRecorder) NetworkPolicyMetrics() *gomock.Call

NetworkPolicyMetrics indicates an expected call of NetworkPolicyMetrics

func (*MockClientMockRecorder) ReassignFlowPriorities added in v0.8.0

func (mr *MockClientMockRecorder) ReassignFlowPriorities(arg0, arg1 interface{}) *gomock.Call

ReassignFlowPriorities indicates an expected call of ReassignFlowPriorities

func (*MockClientMockRecorder) RegisterPacketInHandler added in v0.8.0

func (mr *MockClientMockRecorder) RegisterPacketInHandler(arg0, arg1, arg2 interface{}) *gomock.Call

RegisterPacketInHandler indicates an expected call of RegisterPacketInHandler

func (*MockClientMockRecorder) ReplayFlows added in v0.3.0

func (mr *MockClientMockRecorder) ReplayFlows() *gomock.Call

ReplayFlows indicates an expected call of ReplayFlows

func (*MockClientMockRecorder) SendTraceflowPacket added in v0.8.0

func (mr *MockClientMockRecorder) SendTraceflowPacket(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13, arg14, arg15, arg16, arg17, arg18 interface{}) *gomock.Call

SendTraceflowPacket indicates an expected call of SendTraceflowPacket

func (*MockClientMockRecorder) StartPacketInHandler added in v0.8.0

func (mr *MockClientMockRecorder) StartPacketInHandler(arg0, arg1 interface{}) *gomock.Call

StartPacketInHandler indicates an expected call of StartPacketInHandler

func (*MockClientMockRecorder) SubscribePacketIn added in v0.8.0

func (mr *MockClientMockRecorder) SubscribePacketIn(arg0, arg1 interface{}) *gomock.Call

SubscribePacketIn indicates an expected call of SubscribePacketIn

func (*MockClientMockRecorder) UninstallEndpointFlows added in v0.8.0

func (mr *MockClientMockRecorder) UninstallEndpointFlows(arg0, arg1 interface{}) *gomock.Call

UninstallEndpointFlows indicates an expected call of UninstallEndpointFlows

func (*MockClientMockRecorder) UninstallLoadBalancerServiceFromOutsideFlows added in v0.11.1

func (mr *MockClientMockRecorder) UninstallLoadBalancerServiceFromOutsideFlows(arg0, arg1, arg2 interface{}) *gomock.Call

UninstallLoadBalancerServiceFromOutsideFlows indicates an expected call of UninstallLoadBalancerServiceFromOutsideFlows

func (*MockClientMockRecorder) UninstallNodeFlows

func (mr *MockClientMockRecorder) UninstallNodeFlows(arg0 interface{}) *gomock.Call

UninstallNodeFlows indicates an expected call of UninstallNodeFlows

func (*MockClientMockRecorder) UninstallPodFlows

func (mr *MockClientMockRecorder) UninstallPodFlows(arg0 interface{}) *gomock.Call

UninstallPodFlows indicates an expected call of UninstallPodFlows

func (*MockClientMockRecorder) UninstallPolicyRuleFlows

func (mr *MockClientMockRecorder) UninstallPolicyRuleFlows(arg0 interface{}) *gomock.Call

UninstallPolicyRuleFlows indicates an expected call of UninstallPolicyRuleFlows

func (*MockClientMockRecorder) UninstallServiceFlows added in v0.8.0

func (mr *MockClientMockRecorder) UninstallServiceFlows(arg0, arg1, arg2 interface{}) *gomock.Call

UninstallServiceFlows indicates an expected call of UninstallServiceFlows

func (*MockClientMockRecorder) UninstallServiceGroup added in v0.8.0

func (mr *MockClientMockRecorder) UninstallServiceGroup(arg0 interface{}) *gomock.Call

UninstallServiceGroup indicates an expected call of UninstallServiceGroup

type MockOFEntryOperations added in v0.6.0

type MockOFEntryOperations struct {
	// contains filtered or unexported fields
}

MockOFEntryOperations is a mock of OFEntryOperations interface

func NewMockOFEntryOperations added in v0.6.0

func NewMockOFEntryOperations(ctrl *gomock.Controller) *MockOFEntryOperations

NewMockOFEntryOperations creates a new mock instance

func (*MockOFEntryOperations) Add added in v0.6.0

Add mocks base method

func (*MockOFEntryOperations) AddAll added in v0.6.0

func (m *MockOFEntryOperations) AddAll(arg0 []openflow.Flow) error

AddAll mocks base method

func (*MockOFEntryOperations) AddOFEntries added in v0.6.0

func (m *MockOFEntryOperations) AddOFEntries(arg0 []openflow.OFEntry) error

AddOFEntries mocks base method

func (*MockOFEntryOperations) Delete added in v0.6.0

func (m *MockOFEntryOperations) Delete(arg0 openflow.Flow) error

Delete mocks base method

func (*MockOFEntryOperations) DeleteAll added in v0.6.0

func (m *MockOFEntryOperations) DeleteAll(arg0 []openflow.Flow) error

DeleteAll mocks base method

func (*MockOFEntryOperations) DeleteOFEntries added in v0.6.0

func (m *MockOFEntryOperations) DeleteOFEntries(arg0 []openflow.OFEntry) error

DeleteOFEntries mocks base method

func (*MockOFEntryOperations) EXPECT added in v0.6.0

EXPECT returns an object that allows the caller to indicate expected use

func (*MockOFEntryOperations) Modify added in v0.6.0

func (m *MockOFEntryOperations) Modify(arg0 openflow.Flow) error

Modify mocks base method

type MockOFEntryOperationsMockRecorder added in v0.6.0

type MockOFEntryOperationsMockRecorder struct {
	// contains filtered or unexported fields
}

MockOFEntryOperationsMockRecorder is the mock recorder for MockOFEntryOperations

func (*MockOFEntryOperationsMockRecorder) Add added in v0.6.0

func (mr *MockOFEntryOperationsMockRecorder) Add(arg0 interface{}) *gomock.Call

Add indicates an expected call of Add

func (*MockOFEntryOperationsMockRecorder) AddAll added in v0.6.0

func (mr *MockOFEntryOperationsMockRecorder) AddAll(arg0 interface{}) *gomock.Call

AddAll indicates an expected call of AddAll

func (*MockOFEntryOperationsMockRecorder) AddOFEntries added in v0.6.0

func (mr *MockOFEntryOperationsMockRecorder) AddOFEntries(arg0 interface{}) *gomock.Call

AddOFEntries indicates an expected call of AddOFEntries

func (*MockOFEntryOperationsMockRecorder) Delete added in v0.6.0

func (mr *MockOFEntryOperationsMockRecorder) Delete(arg0 interface{}) *gomock.Call

Delete indicates an expected call of Delete

func (*MockOFEntryOperationsMockRecorder) DeleteAll added in v0.6.0

func (mr *MockOFEntryOperationsMockRecorder) DeleteAll(arg0 interface{}) *gomock.Call

DeleteAll indicates an expected call of DeleteAll

func (*MockOFEntryOperationsMockRecorder) DeleteOFEntries added in v0.6.0

func (mr *MockOFEntryOperationsMockRecorder) DeleteOFEntries(arg0 interface{}) *gomock.Call

DeleteOFEntries indicates an expected call of DeleteOFEntries

func (*MockOFEntryOperationsMockRecorder) Modify added in v0.6.0

func (mr *MockOFEntryOperationsMockRecorder) Modify(arg0 interface{}) *gomock.Call

Modify indicates an expected call of Modify

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL