diffrent fix for runtest --host --port

This commit is contained in:
Oran Agra 2020-04-06 09:41:14 +03:00
parent b0bbfed238
commit cf3789f045
2 changed files with 13 additions and 13 deletions

View File

@ -159,12 +159,9 @@ proc start_server {options {code undefined}} {
if {$::external} { if {$::external} {
if {[llength $::servers] == 0} { if {[llength $::servers] == 0} {
set srv {} set srv {}
# In test_server_main(tests/test_helper.tcl:215~218), increase the value of start_port
# and assign it to ::port through the `--port` option, so we need to reduce it.
set baseport [expr {$::port-100}]
dict set srv "host" $::host dict set srv "host" $::host
dict set srv "port" $baseport dict set srv "port" $::port
set client [redis $::host $baseport 0 $::tls] set client [redis $::host $::port 0 $::tls]
dict set srv "client" $client dict set srv "client" $client
$client select 9 $client select 9

View File

@ -212,13 +212,19 @@ proc test_server_main {} {
# Start the client instances # Start the client instances
set ::clients_pids {} set ::clients_pids {}
set start_port [expr {$::port+100}] if {$::external} {
for {set j 0} {$j < $::numclients} {incr j} {
set start_port [find_available_port $start_port]
set p [exec $tclsh [info script] {*}$::argv \ set p [exec $tclsh [info script] {*}$::argv \
--client $port --port $start_port &] --client $port --port $::port &]
lappend ::clients_pids $p lappend ::clients_pids $p
incr start_port 10 } else {
set start_port [expr {$::port+100}]
for {set j 0} {$j < $::numclients} {incr j} {
set start_port [find_available_port $start_port]
set p [exec $tclsh [info script] {*}$::argv \
--client $port --port $start_port &]
lappend ::clients_pids $p
incr start_port 10
}
} }
# Setup global state for the test server # Setup global state for the test server
@ -506,9 +512,6 @@ for {set j 0} {$j < [llength $argv]} {incr j} {
} elseif {$opt eq {--host}} { } elseif {$opt eq {--host}} {
set ::external 1 set ::external 1
set ::host $arg set ::host $arg
# If we use an external server, we can only set numclients to 1,
# otherwise the port will be miscalculated.
set ::numclients 1
incr j incr j
} elseif {$opt eq {--port}} { } elseif {$opt eq {--port}} {
set ::port $arg set ::port $arg