58 lines
1.7 KiB
MySQL
58 lines
1.7 KiB
MySQL
|
-- Test user
|
||
|
set client_min_messages to warning;
|
||
|
create extension if not exists pgtap;
|
||
|
reset client_min_messages;
|
||
|
|
||
|
begin;
|
||
|
|
||
|
select plan(34);
|
||
|
|
||
|
set search_path to auth, public;
|
||
|
|
||
|
select has_table('user');
|
||
|
select has_pk('user');
|
||
|
select table_privs_are('user', 'guest', array []::text[]);
|
||
|
select table_privs_are('user', 'invoicer', array []::text[]);
|
||
|
select table_privs_are('user', 'admin', array []::text[]);
|
||
|
select table_privs_are('user', 'authenticator', array []::text[]);
|
||
|
|
||
|
select has_column('user', 'user_id');
|
||
|
select col_is_pk('user', 'user_id');
|
||
|
select col_type_is('user', 'user_id', 'integer');
|
||
|
select col_not_null('user', 'user_id');
|
||
|
select col_has_default('user', 'user_id');
|
||
|
select col_default_is('user', 'user_id', 'nextval(''user_user_id_seq''::regclass)');
|
||
|
|
||
|
select has_column('user', 'email');
|
||
|
select col_is_unique('user', 'email');
|
||
|
select col_type_is('user', 'email', 'numerus.email');
|
||
|
select col_not_null('user', 'email');
|
||
|
select col_hasnt_default('user', 'email');
|
||
|
|
||
|
select has_column('user', 'name');
|
||
|
select col_type_is('user', 'name', 'text');
|
||
|
select col_not_null('user', 'name');
|
||
|
select col_hasnt_default('user', 'name');
|
||
|
|
||
|
select has_column('user', 'password');
|
||
|
select col_type_is('user', 'password', 'text');
|
||
|
select col_not_null('user', 'password');
|
||
|
select col_hasnt_default('user', 'password');
|
||
|
|
||
|
select has_column('user', 'role');
|
||
|
select col_type_is('user', 'role', 'name');
|
||
|
select col_not_null('user', 'role');
|
||
|
select col_hasnt_default('user', 'role');
|
||
|
|
||
|
select has_column('user', 'created_at');
|
||
|
select col_type_is('user', 'created_at', 'timestamp with time zone');
|
||
|
select col_not_null('user', 'created_at');
|
||
|
select col_has_default('user', 'created_at');
|
||
|
select col_default_is('user', 'created_at', current_timestamp);
|
||
|
|
||
|
|
||
|
select *
|
||
|
from finish();
|
||
|
|
||
|
rollback;
|