testutils

package
v0.1.1 Latest Latest
Warning

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

Go to latest
Published: May 17, 2026 License: MIT Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func FormatBytes

func FormatBytes(data []byte) string

FormatBytes 格式化请求/响应内容,用于调试输出 可打印字符直接显示,不可打印字符转换为\xxx格式

Types

type PrefixMatcher

type PrefixMatcher struct {
	Prefix []byte
}

PrefixMatcher 实现了基于前缀的请求匹配

func (*PrefixMatcher) Match

func (m *PrefixMatcher) Match(data []byte) bool

Match 检查请求数据是否以指定前缀开始

type RealHTTPSServer

type RealHTTPSServer struct {
	Server   *http.Server
	Listener net.Listener
	Address  string
}

RealHTTPSServer 创建一个真实的HTTPS服务器

func RealTLSServer

func RealTLSServer() (*RealHTTPSServer, error)

RealTLSServer 创建一个真实的TLS服务器,使用标准库的HTTPS实现

func (*RealHTTPSServer) GetAddress

func (s *RealHTTPSServer) GetAddress() string

GetAddress 返回HTTPS服务器的地址

func (*RealHTTPSServer) Stop

func (s *RealHTTPSServer) Stop() error

Stop 停止HTTPS服务器

type RegexMatcher

type RegexMatcher struct {
	Pattern *regexp.Regexp
}

RegexMatcher 实现了基于正则表达式的请求匹配

func (*RegexMatcher) Match

func (m *RegexMatcher) Match(data []byte) bool

Match 检查请求数据是否匹配正则表达式

type RequestMatcher

type RequestMatcher interface {
	// Match 检查请求数据是否匹配
	Match(data []byte) bool
}

RequestMatcher 定义了请求匹配器接口

func NewEmptyRequestMatcher

func NewEmptyRequestMatcher() RequestMatcher

NewEmptyRequestMatcher 创建一个匹配空请求的匹配器

func NewPrefixRequestMatcher

func NewPrefixRequestMatcher(prefix []byte) RequestMatcher

NewPrefixRequestMatcher 创建一个匹配前缀的匹配器

type RequestResponseRule

type RequestResponseRule struct {
	Matcher  RequestMatcher
	Handler  ResponseHandler
	Priority int // 优先级,数字越大优先级越高
}

RequestResponseRule 定义了请求-响应规则

type ResponseHandler

type ResponseHandler interface {
	// Handle 处理请求并返回响应
	Handle(request []byte) []byte
}

ResponseHandler 定义了响应处理器接口

func NewStaticResponseHandler

func NewStaticResponseHandler(response []byte) ResponseHandler

NewStaticResponseHandler 创建一个静态响应处理器

type SimpleTLSServer

type SimpleTLSServer struct {
	Listener net.Listener
	Address  string
	Stopped  bool
	// contains filtered or unexported fields
}

SimpleTLSServer 类型定义,用于管理简单的TLS服务器

func NewSimpleTLSServer

func NewSimpleTLSServer() (*SimpleTLSServer, error)

NewSimpleTLSServer 创建一个简单的TLS服务器,保持连接活跃

func (*SimpleTLSServer) GetAddress

func (s *SimpleTLSServer) GetAddress() string

GetAddress 返回TLS服务器的地址

func (*SimpleTLSServer) Start

func (s *SimpleTLSServer) Start() error

Start 启动TLS服务器

func (*SimpleTLSServer) Stop

func (s *SimpleTLSServer) Stop() error

Stop 停止TLS服务器

type StaticResponseHandler

type StaticResponseHandler struct {
	Response []byte
}

StaticResponseHandler 实现了静态响应处理器

func (*StaticResponseHandler) Handle

func (h *StaticResponseHandler) Handle(request []byte) []byte

Handle 返回预定义的静态响应

type StringMatcher

type StringMatcher struct {
	Pattern string
}

StringMatcher 实现了基于字符串的请求匹配

func (*StringMatcher) Match

func (m *StringMatcher) Match(data []byte) bool

Match 检查请求数据是否包含指定字符串

type TestServer

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

TestServer 测试服务器

func BACnetServer

func BACnetServer() *TestServer

BACnetServer 创建一个模拟BACnet服务器

func DNSServer

func DNSServer() *TestServer

DNSServer 创建一个模拟DNS服务器

func ElasticsearchServer

func ElasticsearchServer() *TestServer

ElasticsearchServer 创建一个模拟Elasticsearch服务器

func FTPServer

func FTPServer() *TestServer

FTPServer 创建一个模拟FTP服务器

func HTTPServer

func HTTPServer() *TestServer

HTTPServer 创建一个模拟HTTP服务器

func IMAPSServer

func IMAPSServer() (*TestServer, error)

IMAPSServer 创建一个模拟IMAP over TLS服务器

func IMAPServer

func IMAPServer() *TestServer

IMAPServer 创建一个模拟IMAP服务器

func LDAPServer

func LDAPServer() *TestServer

LDAPServer 创建一个模拟LDAP服务器

func ModbusServer

func ModbusServer() *TestServer

ModbusServer 创建一个模拟Modbus服务器

func MongoDBServer

func MongoDBServer() *TestServer

MongoDBServer 创建一个模拟MongoDB服务器

func MySQLServer

func MySQLServer() *TestServer

MySQLServer 创建一个模拟MySQL服务器

func NewTestServer

func NewTestServer(protocol string) *TestServer

NewTestServer 创建一个新的测试服务器

func POP3SServer

func POP3SServer() (*TestServer, error)

POP3SServer 创建一个模拟POP3 over TLS服务器

func POP3Server

func POP3Server() *TestServer

POP3Server 创建一个模拟POP3服务器

func PostgreSQLServer

func PostgreSQLServer() *TestServer

PostgreSQLServer 创建一个模拟PostgreSQL服务器

func RDPServer

func RDPServer() *TestServer

RDPServer 创建一个模拟RDP服务器

func RTSPServer

func RTSPServer() *TestServer

RTSPServer 创建一个模拟RTSP服务器

func RedisServer

func RedisServer() *TestServer

RedisServer 创建一个模拟Redis服务器

func SIPServer

func SIPServer() *TestServer

SIPServer 创建一个模拟SIP服务器

func SMBServer

func SMBServer() *TestServer

SMBServer 创建一个模拟SMB服务器

func SMTPSServer

func SMTPSServer() (*TestServer, error)

SMTPSServer 创建一个模拟SMTP over TLS服务器

func SMTPServer

func SMTPServer() *TestServer

SMTPServer 创建一个模拟SMTP服务器

func SNMPServer

func SNMPServer() *TestServer

SNMPServer 创建一个模拟SNMP服务器

func SSHServer

func SSHServer() *TestServer

SSHServer 创建一个模拟SSH服务器

func TLSServer

func TLSServer() (*TestServer, error)

TLSServer

func TelnetServer

func TelnetServer() *TestServer

TelnetServer 创建一个模拟Telnet服务器

func VNCServer

func VNCServer() *TestServer

VNCServer 创建一个模拟VNC服务器

func WebSocketServer

func WebSocketServer() *TestServer

WebSocketServer 创建一个模拟WebSocket服务器

func (*TestServer) AddRegexRule

func (s *TestServer) AddRegexRule(pattern string, response []byte, priority int) error

AddRegexRule 添加基于正则表达式匹配的规则

func (*TestServer) AddRule

func (s *TestServer) AddRule(matcher RequestMatcher, handler ResponseHandler, priority int)

AddRule 添加请求-响应规则

func (*TestServer) AddStringRule

func (s *TestServer) AddStringRule(pattern string, response []byte, priority int)

AddStringRule 添加基于字符串匹配的规则

func (*TestServer) GetAddress

func (s *TestServer) GetAddress() string

GetAddress 获取测试服务器的地址

func (*TestServer) GetIP

func (s *TestServer) GetIP() string

GetIP 获取测试服务器的IP

func (*TestServer) GetPort

func (s *TestServer) GetPort() int

GetPort 获取测试服务器的端口

func (*TestServer) GetProbeData

func (s *TestServer) GetProbeData() []byte

GetProbeData 获取最近接收到的探针数据

func (*TestServer) GetRequestCount

func (s *TestServer) GetRequestCount() int

GetRequestCount 获取测试服务器的请求计数

func (*TestServer) SetKeepAlive

func (s *TestServer) SetKeepAlive(keepAlive bool)

SetKeepAlive 设置是否保持连接

func (*TestServer) SetResponseDelay

func (s *TestServer) SetResponseDelay(delay time.Duration)

SetResponseDelay 设置响应延迟

func (*TestServer) Start

func (s *TestServer) Start() error

Start 启动测试服务器

func (*TestServer) StartWithListener

func (s *TestServer) StartWithListener(listener net.Listener)

func (*TestServer) Stop

func (s *TestServer) Stop() error

Stop 停止测试服务器

Jump to

Keyboard shortcuts

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