# Semana 5: SQL desde Node.js con pg, funciones, triggers, consultas
# recursivas y window functions. Se usa dentro del contenedor del curso.
#
#   make          crea la base de datos chasqui_w05 con los datos de ejemplo
#                 y le carga las funciones y los triggers de la semana
#   make test     la vuelve a crear y corre las pruebas (*.test.mjs)
#   make clean    borra chasqui_w05

DB = chasqui_w05
PSQL = psql -X -q -v ON_ERROR_STOP=1 -d $(DB)

.PHONY: all test clean

all:
	chasqui-load $(DB)
	$(PSQL) -f functions.sql -f triggers.sql

# Los archivos de prueba cambian datos: se corren uno después del otro.
test: all
	PGDATABASE=$(DB) node --test --test-concurrency=1 --test-reporter=spec

clean:
	dropdb --if-exists $(DB)
