CREATE OR REPLACE FUNCTION unit_tests.array_from_json_test() RETURNS test_result AS $$
DECLARE arr text[]; DECLARE message test_result;
BEGIN
SELECT framework.array_from_json('["foo", "bar"]') INTO arr; IF arr <> ARRAY['foo', 'bar'] THEN SELECT assert.fail('Expected array: ["foo", "bar"]') INTO message; RETURN message; END IF; SELECT framework.array_from_json('[]') INTO arr; IF arr <> ARRAY[]::TEXT[] THEN SELECT assert.fail('Expected empty array, got null') INTO message; RETURN message; END IF; SELECT assert.ok('framework.array_distinct is OK') INTO message; RETURN message;
END; $$ LANGUAGE plpgsql;