From 9c2d9706e6115ccae123078ca29ed3db9d7dbafc Mon Sep 17 00:00:00 2001 From: Joscha Date: Thu, 23 Jun 2016 11:59:26 +0200 Subject: [PATCH] build up a test scenario with guzzle async --- composer.json | 3 ++- examples/flush_redis.php | 5 +++++ examples/metrics.php | 12 +++++++++++ examples/some_request_uri.php | 19 +++++++++++++++++ tests/Test/BlackBoxTest.php | 39 +++++++++++++++++++++++++++++++++++ 5 files changed, 77 insertions(+), 1 deletion(-) create mode 100644 examples/flush_redis.php create mode 100644 examples/metrics.php create mode 100644 examples/some_request_uri.php create mode 100644 tests/Test/BlackBoxTest.php diff --git a/composer.json b/composer.json index 2a46a37..8f118f8 100644 --- a/composer.json +++ b/composer.json @@ -11,7 +11,8 @@ "ext-redis": "*" }, "require-dev": { - "phpunit/phpunit": "5.4.6" + "phpunit/phpunit": "5.4.6", + "guzzlehttp/guzzle": "~6.0" }, "autoload": { "psr-0": { diff --git a/examples/flush_redis.php b/examples/flush_redis.php new file mode 100644 index 0000000..d518ed6 --- /dev/null +++ b/examples/flush_redis.php @@ -0,0 +1,5 @@ +flushRedis(); diff --git a/examples/metrics.php b/examples/metrics.php new file mode 100644 index 0000000..d946df0 --- /dev/null +++ b/examples/metrics.php @@ -0,0 +1,12 @@ +toText(); + +header('Content-type: text/plain; version=0.0.4'); +echo $result; diff --git a/examples/some_request_uri.php b/examples/some_request_uri.php new file mode 100644 index 0000000..761779d --- /dev/null +++ b/examples/some_request_uri.php @@ -0,0 +1,19 @@ +registerGauge('test', 'some_gauge', 'it sets', ['type']); +$counter->set(234, ['blue']); +$counter->set(123, ['red']); + +$counter = $registry->registerCounter('test', 'some_counter', 'it increases', ['type']); +$counter->increaseBy(1, ['blue']); +$counter->increaseBy(2, ['red']); + +$histogram = $registry->registerHistogram('test', 'some_histogram', 'it observes', ['type'], [1, 2, 3.5, 4]); +$histogram->observe(2.5, ['blue']); + +$registry->flush(); + +echo "OK\n"; diff --git a/tests/Test/BlackBoxTest.php b/tests/Test/BlackBoxTest.php new file mode 100644 index 0000000..43fe059 --- /dev/null +++ b/tests/Test/BlackBoxTest.php @@ -0,0 +1,39 @@ + 'http://localhost:8080/']); + $client->get('/examples/flush_redis.php'); + + $start = microtime(true); + $promises = [ + $client->getAsync('/examples/some_request_uri.php?0'), + $client->getAsync('/examples/some_request_uri.php?1'), + $client->getAsync('/examples/some_request_uri.php?2'), + $client->getAsync('/examples/some_request_uri.php?3'), + $client->getAsync('/examples/some_request_uri.php?4'), + $client->getAsync('/examples/some_request_uri.php?5'), + $client->getAsync('/examples/some_request_uri.php?6'), + $client->getAsync('/examples/some_request_uri.php?7'), + $client->getAsync('/examples/some_request_uri.php?8'), + $client->getAsync('/examples/some_request_uri.php?9'), + ]; + + Promise\settle($promises)->wait(); + $end = microtime(true); + echo "time: " . ($end - $start) . "\n"; + + $metricsResult = $client->get('/examples/metrics.php'); + var_dump((string)$metricsResult->getBody()); + } +}