BEGIN; CREATE SCHEMA test; CREATE EXTENSION pg_doctest SCHEMA test; CREATE SCHEMA foo; -- These tests are correct CREATE OR REPLACE FUNCTION foo.plus ( a INT, b INT) RETURNS INT AS $func$ -- >>> select foo.plus(1,1) -- 2 -- >>> SELECT foo.plus(NULL,9) -- NULL -- >>> SELECt foo.plus(0,000) -- 0 SELECT a+b; $func$ LANGUAGE SQL ; -- These tests will fail CREATE OR REPLACE FUNCTION foo.minus ( a INT, b INT) RETURNS INT AS $func$ -- >>> SELECT foo.minus(1,1) -- 2 -- >>> SELECT foo.minus(NULL,9) -- NULL SELECT a-b; $func$ LANGUAGE SQL ; SELECT call, passed FROM test.test_schema('foo'); call | passed -----------------------------+-------- select foo.plus(1,1) | t SELECT foo.plus(NULL,9) | t SELECt foo.plus(0,000) | t SELECT foo.minus(1,1) | f SELECT foo.minus(NULL,9) | t (5 rows) SELECT * FROM test.run('foo'); function_name | passed | failed ---------------+--------+-------- foo.plus | 3 | 0 foo.minus | 1 | 1 (2 rows) DROP SCHEMA foo CASCADE; NOTICE: drop cascades to 2 other objects DETAIL: drop cascades to function foo.plus(integer,integer) drop cascades to function foo.minus(integer,integer) ROLLBACK;