schema and tests