diff options
Diffstat (limited to 'ngx_postgres-1.0/t/000_init.t')
-rw-r--r-- | ngx_postgres-1.0/t/000_init.t | 174 |
1 files changed, 174 insertions, 0 deletions
diff --git a/ngx_postgres-1.0/t/000_init.t b/ngx_postgres-1.0/t/000_init.t new file mode 100644 index 0000000..832244e --- /dev/null +++ b/ngx_postgres-1.0/t/000_init.t @@ -0,0 +1,174 @@ +# vi:filetype=perl + +use lib 'lib'; +use Test::Nginx::Socket; + +repeat_each(1); + +plan tests => repeat_each() * 2 * blocks(); + +$ENV{TEST_NGINX_POSTGRESQL_HOST} ||= '127.0.0.1'; +$ENV{TEST_NGINX_POSTGRESQL_PORT} ||= 5432; + +our $http_config = <<'_EOC_'; + upstream database { + postgres_server $TEST_NGINX_POSTGRESQL_HOST:$TEST_NGINX_POSTGRESQL_PORT + dbname=ngx_test user=ngx_test password=ngx_test; + } +_EOC_ + +no_shuffle(); +run_tests(); + +__DATA__ + +=== TEST 1: cats - drop table +--- http_config eval: $::http_config +--- config + location = /init { + postgres_pass database; + postgres_query "DROP TABLE cats"; + error_page 500 = /ignore; + } + + location /ignore { echo "ignore"; } +--- request +GET /init +--- error_code: 200 +--- timeout: 10 +--- no_error_log +[error] + + + +=== TEST 2: cats - create table +--- http_config eval: $::http_config +--- config + location = /init { + postgres_pass database; + postgres_query "CREATE TABLE cats (id integer, name text)"; + } +--- request +GET /init +--- error_code: 200 +--- timeout: 10 +--- no_error_log +[error] + + + +=== TEST 3: cats - insert value +--- http_config eval: $::http_config +--- config + location = /init { + postgres_pass database; + postgres_query "INSERT INTO cats (id) VALUES (2)"; + } +--- request +GET /init +--- error_code: 200 +--- timeout: 10 +--- no_error_log +[error] + + + +=== TEST 4: cats - insert value +--- http_config eval: $::http_config +--- config + location = /init { + postgres_pass database; + postgres_query "INSERT INTO cats (id, name) VALUES (3, 'bob')"; + } +--- request +GET /init +--- error_code: 200 +--- timeout: 10 +--- no_error_log +[error] + + + +=== TEST 5: numbers - drop table +--- http_config eval: $::http_config +--- config + location = /init { + postgres_pass database; + postgres_query "DROP TABLE numbers"; + error_page 500 = /ignore; + } + + location /ignore { echo "ignore"; } +--- request +GET /init +--- error_code: 200 +--- timeout: 10 +--- no_error_log +[error] + + + +=== TEST 6: numbers - create table +--- http_config eval: $::http_config +--- config + location = /init { + postgres_pass database; + postgres_query "CREATE TABLE numbers (number integer)"; + } +--- request +GET /init +--- error_code: 200 +--- timeout: 10 +--- no_error_log +[error] + + + +=== TEST 7: users - drop table +--- http_config eval: $::http_config +--- config + location = /init { + postgres_pass database; + postgres_query "DROP TABLE users"; + error_page 500 = /ignore; + } + + location /ignore { echo "ignore"; } +--- request +GET /init +--- error_code: 200 +--- timeout: 10 +--- no_error_log +[error] + + + +=== TEST 8: users - create table +--- http_config eval: $::http_config +--- config + location = /init { + postgres_pass database; + postgres_query "CREATE TABLE users (login text, pass text)"; + } +--- request +GET /init +--- error_code: 200 +--- timeout: 10 +--- no_error_log +[error] + + + +=== TEST 9: users - insert value +--- http_config eval: $::http_config +--- config + location = /init { + postgres_pass database; + postgres_query "INSERT INTO users (login, pass) VALUES ('ngx_test', 'ngx_test')"; + } +--- request +GET /init +--- error_code: 200 +--- timeout: 10 +--- no_error_log +[error] |