varnishtest "Lua: txn:get_priv() scope"
#REQUIRE_OPTIONS=LUA,OPENSSL
#REQUIRE_VERSION=2.4
#REGTEST_TYPE=bug

feature ignore_unknown_macro

haproxy h1 -conf {
    global
        # WT: limit false-positives causing "HTTP header incomplete" due to
        # idle server connections being randomly used and randomly expiring
        # under us.
        tune.idle-pool.shared off

        tune.lua.bool-sample-conversion normal

        lua-load-per-thread ${testdir}/txn_get_priv.lua
        lua-load-per-thread ${testdir}/txn_get_priv-print_r.lua

    defaults
        timeout client 30s
        timeout server 30s
        timeout connect 30s

    frontend fe1
        mode http
        bind "fd@${fe1}"
        default_backend b1

    frontend fe2
        mode http
        bind ":8443" ssl crt ${testdir}/common.pem
        stats enable
        stats uri /

    backend b1
        mode http
        http-request use-service lua.fakeserv
} -start

client c0 -repeat 4 -connect ${h1_fe1_sock} {
    txreq -url "/0"
    rxresp
    expect resp.status == 200
    txreq -url "/0"
    rxresp
    expect resp.status == 200
} -run

client c1 -repeat 4 -connect ${h1_fe1_sock} {
    txreq -url "/1"
    rxresp
    expect resp.status == 200
    txreq -url "/1"
    rxresp
    expect resp.status == 200
} -run

client c2 -repeat 4 -connect ${h1_fe1_sock} {
    txreq -url "/2"
    rxresp
    expect resp.status == 200
    txreq -url "/2"
    rxresp
    expect resp.status == 200
} -run

client c3 -repeat 4 -connect ${h1_fe1_sock} {
    txreq -url "/3"
    rxresp
    expect resp.status == 200
    txreq -url "/3"
    rxresp
    expect resp.status == 200
} -run

