66 lines
2.3 KiB
Python
66 lines
2.3 KiB
Python
import pytest
|
|
import os
|
|
|
|
from .env import H2Conf, H2TestEnv
|
|
|
|
|
|
@pytest.mark.skipif(condition=H2TestEnv.is_unsupported, reason="mod_http2 not supported here")
|
|
class TestLoadPostStatic:
|
|
|
|
@pytest.fixture(autouse=True, scope='class')
|
|
def _class_scope(self, env):
|
|
H2Conf(env).add_vhost_test1().install()
|
|
assert env.apache_restart() == 0
|
|
|
|
def check_h2load_ok(self, env, r, n):
|
|
assert 0 == r.exit_code
|
|
r = env.h2load_status(r)
|
|
assert n == r.results["h2load"]["requests"]["total"]
|
|
assert n == r.results["h2load"]["requests"]["started"]
|
|
assert n == r.results["h2load"]["requests"]["done"]
|
|
assert n == r.results["h2load"]["requests"]["succeeded"]
|
|
assert n == r.results["h2load"]["status"]["2xx"]
|
|
assert 0 == r.results["h2load"]["status"]["3xx"]
|
|
assert 0 == r.results["h2load"]["status"]["4xx"]
|
|
assert 0 == r.results["h2load"]["status"]["5xx"]
|
|
|
|
# test POST on static file, slurped in by server
|
|
def test_h2_710_00(self, env, repeat):
|
|
assert env.is_live()
|
|
url = env.mkurl("https", "test1", "/index.html")
|
|
n = 10
|
|
m = 1
|
|
conn = 1
|
|
fname = "data-10k"
|
|
args = [env.h2load, "-n", f"{n}", "-c", f"{conn}", "-m", f"{m}",
|
|
f"--base-uri={env.https_base_url}",
|
|
"-d", os.path.join(env.gen_dir, fname), url]
|
|
r = env.run(args)
|
|
self.check_h2load_ok(env, r, n)
|
|
|
|
def test_h2_710_01(self, env, repeat):
|
|
assert env.is_live()
|
|
url = env.mkurl("https", "test1", "/index.html")
|
|
n = 1000
|
|
m = 100
|
|
conn = 1
|
|
fname = "data-1k"
|
|
args = [env.h2load, "-n", f"{n}", "-c", f"{conn}", "-m", f"{m}",
|
|
f"--base-uri={env.https_base_url}",
|
|
"-d", os.path.join(env.gen_dir, fname), url]
|
|
r = env.run(args)
|
|
self.check_h2load_ok(env, r, n)
|
|
|
|
def test_h2_710_02(self, env, repeat):
|
|
assert env.is_live()
|
|
url = env.mkurl("https", "test1", "/index.html")
|
|
n = 100
|
|
m = 50
|
|
conn = 1
|
|
fname = "data-100k"
|
|
args = [env.h2load, "-n", f"{n}", "-c", f"{conn}", "-m", f"{m}",
|
|
f"--base-uri={env.https_base_url}",
|
|
"-d", os.path.join(env.gen_dir, fname), url]
|
|
r = env.run(args)
|
|
self.check_h2load_ok(env, r, n)
|