...
This commit is contained in:
@@ -6,6 +6,7 @@ import (
|
||||
"fmt"
|
||||
"log"
|
||||
"os"
|
||||
"strconv"
|
||||
"strings"
|
||||
"sync"
|
||||
"time"
|
||||
@@ -16,7 +17,7 @@ import (
|
||||
|
||||
func main() {
|
||||
// Parse command line flags
|
||||
tcpPort := flag.String("tcp-port", "7777", "Redis server TCP port")
|
||||
tcpPortStr := flag.String("tcp-port", "7777", "Redis server TCP port")
|
||||
unixSocket := flag.String("unix-socket", "/tmp/redis-test.sock", "Redis server Unix domain socket path")
|
||||
username := flag.String("user", "jan", "Username to check")
|
||||
mailbox := flag.String("mailbox", "inbox", "Mailbox to check")
|
||||
@@ -24,8 +25,13 @@ func main() {
|
||||
dbNum := flag.Int("db", 0, "Redis database number")
|
||||
flag.Parse()
|
||||
|
||||
tcpPort, err := strconv.Atoi(*tcpPortStr)
|
||||
if err != nil {
|
||||
log.Fatalf("Invalid TCP port: %v", err)
|
||||
}
|
||||
|
||||
// Start Redis server in a goroutine
|
||||
log.Printf("Starting Redis server on TCP port %s and Unix socket %s", *tcpPort, *unixSocket)
|
||||
log.Printf("Starting Redis server on TCP port %d and Unix socket %s", tcpPort, *unixSocket)
|
||||
|
||||
// Create a wait group to ensure the server is started before testing
|
||||
var wg sync.WaitGroup
|
||||
@@ -44,7 +50,7 @@ func main() {
|
||||
// Start the Redis server in a goroutine
|
||||
go func() {
|
||||
// Create a new server instance
|
||||
_ = redisserver.NewServer(redisserver.ServerConfig{TCPPort: *tcpPort, UnixSocketPath: *unixSocket})
|
||||
_ = redisserver.NewServer(redisserver.ServerConfig{TCPPort: tcpPort, UnixSocketPath: *unixSocket})
|
||||
|
||||
// Signal that the server is ready
|
||||
wg.Done()
|
||||
@@ -61,7 +67,7 @@ func main() {
|
||||
|
||||
// Test TCP connection
|
||||
log.Println("Testing TCP connection")
|
||||
tcpAddr := fmt.Sprintf("localhost:%s", *tcpPort)
|
||||
tcpAddr := fmt.Sprintf("localhost:%d", tcpPort)
|
||||
testRedisConnection(tcpAddr, username, mailbox, debug, dbNum)
|
||||
|
||||
// Test Unix socket connection if supported
|
||||
|
@@ -62,14 +62,19 @@ func (ts *TestSuite) PrintResults() {
|
||||
|
||||
func main() {
|
||||
// Parse command line flags
|
||||
tcpPort := flag.String("tcp-port", "7777", "Redis server TCP port")
|
||||
tcpPortStr := flag.String("tcp-port", "7777", "Redis server TCP port")
|
||||
unixSocket := flag.String("unix-socket", "/tmp/redis-test.sock", "Redis server Unix domain socket path")
|
||||
debug := flag.Bool("debug", false, "Enable debug output")
|
||||
dbNum := flag.Int("db", 0, "Redis database number")
|
||||
flag.Parse()
|
||||
|
||||
tcpPortInt, err := strconv.Atoi(*tcpPortStr)
|
||||
if err != nil {
|
||||
log.Fatalf("Invalid TCP port: %v", err)
|
||||
}
|
||||
|
||||
// Start Redis server in a goroutine
|
||||
log.Printf("Starting Redis server on TCP port %s and Unix socket %s", *tcpPort, *unixSocket)
|
||||
log.Printf("Starting Redis server on TCP port %d and Unix socket %s", tcpPortInt, *unixSocket)
|
||||
|
||||
// Create a wait group to ensure the server is started before testing
|
||||
var wg sync.WaitGroup
|
||||
@@ -88,7 +93,7 @@ func main() {
|
||||
// Start the Redis server in a goroutine
|
||||
go func() {
|
||||
// Create a new server instance
|
||||
_ = redisserver.NewServer(redisserver.ServerConfig{TCPPort: *tcpPort, UnixSocketPath: *unixSocket})
|
||||
_ = redisserver.NewServer(redisserver.ServerConfig{TCPPort: tcpPortInt, UnixSocketPath: *unixSocket})
|
||||
|
||||
// Signal that the server is ready
|
||||
wg.Done()
|
||||
@@ -105,7 +110,7 @@ func main() {
|
||||
|
||||
// Test TCP connection
|
||||
log.Println("Testing TCP connection")
|
||||
tcpAddr := fmt.Sprintf("localhost:%s", *tcpPort)
|
||||
tcpAddr := fmt.Sprintf("localhost:%d", tcpPortInt)
|
||||
runTests(tcpAddr, *debug, *dbNum)
|
||||
|
||||
// Test Unix socket connection if supported
|
||||
|
@@ -1,6 +1,7 @@
|
||||
package redisserver
|
||||
|
||||
import (
|
||||
"strconv"
|
||||
"sync"
|
||||
"time"
|
||||
)
|
||||
@@ -20,7 +21,7 @@ type Server struct {
|
||||
}
|
||||
|
||||
type ServerConfig struct {
|
||||
TCPPort string
|
||||
TCPPort int
|
||||
UnixSocketPath string
|
||||
}
|
||||
|
||||
@@ -38,8 +39,8 @@ func NewServer(config ServerConfig) *Server {
|
||||
go s.cleanupExpiredKeys()
|
||||
|
||||
// Start TCP server if port is provided
|
||||
if config.TCPPort != "" {
|
||||
tcpAddr := ":" + config.TCPPort
|
||||
if config.TCPPort != 0 {
|
||||
tcpAddr := ":" + strconv.Itoa(config.TCPPort)
|
||||
go s.startRedisServer(tcpAddr, "")
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user