-- Test new_invoice_product
set client_min_messages to warning;
create extension if not exists pgtap;
reset client_min_messages;

begin;

select plan(9);

set search_path to camper, public;

select has_composite('camper', 'new_invoice_product', 'Composite type camper.new_invoice_product should exist');
select columns_are('camper', 'new_invoice_product', array['product_id', 'name', 'description', 'price', 'quantity', 'discount_rate', 'tax']);
select col_type_is('camper'::name, 'new_invoice_product'::name, 'product_id'::name, 'integer');
select col_type_is('camper'::name, 'new_invoice_product'::name, 'name'::name, 'text');
select col_type_is('camper'::name, 'new_invoice_product'::name, 'description'::name, 'text');
select col_type_is('camper'::name, 'new_invoice_product'::name, 'price'::name, 'text');
select col_type_is('camper'::name, 'new_invoice_product'::name, 'quantity'::name, 'integer');
select col_type_is('camper'::name, 'new_invoice_product'::name, 'discount_rate'::name, 'discount_rate');
select col_type_is('camper'::name, 'new_invoice_product'::name, 'tax'::name, 'integer[]');


select *
from finish();

rollback;
