db tests swiched to in memory db
This commit is contained in:
27
db-commons/pom.xml
Normal file
27
db-commons/pom.xml
Normal file
@@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<parent>
|
||||
<artifactId>factory</artifactId>
|
||||
<groupId>pl.com.dddbyexamples</groupId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<artifactId>db-commons</artifactId>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>com.h2database</groupId>
|
||||
<artifactId>h2</artifactId>
|
||||
<version>1.4.197</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.liquibase</groupId>
|
||||
<artifactId>liquibase-core</artifactId>
|
||||
<version>3.5.5</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
</project>
|
||||
11
db-commons/src/main/resources/schema/commons.xml
Normal file
11
db-commons/src/main/resources/schema/commons.xml
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.4.xsd">
|
||||
<changeSet author="jakubpilimon" id="1.init">
|
||||
<createSequence sequenceName="hibernate_sequence" startValue="1" incrementBy="1" cacheSize="1"/>
|
||||
</changeSet>
|
||||
<changeSet author="jakubpilimon" id="2.postgres.json" dbms="postgresql">
|
||||
<sql>CREATE CAST (character varying AS jsonb) WITH INOUT AS ASSIGNMENT</sql>
|
||||
</changeSet>
|
||||
</databaseChangeLog>
|
||||
11
db-commons/src/main/resources/schema/db.changelog.xml
Normal file
11
db-commons/src/main/resources/schema/db.changelog.xml
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.4.xsd">
|
||||
<include file="/schema/commons.xml"/>
|
||||
<include file="/schema/delivery-planning.xml"/>
|
||||
<include file="/schema/demand-forecasting.xml"/>
|
||||
<include file="/schema/product-management.xml"/>
|
||||
<include file="/schema/production-planning.xml"/>
|
||||
<include file="/schema/shortages-prediction.xml"/>
|
||||
</databaseChangeLog>
|
||||
42
db-commons/src/main/resources/schema/delivery-planning.xml
Normal file
42
db-commons/src/main/resources/schema/delivery-planning.xml
Normal file
@@ -0,0 +1,42 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
|
||||
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.4.xsd">
|
||||
|
||||
<property name="json" value="clob" dbms="h2"/>
|
||||
<property name="json" value="jsonb" dbms="postgresql"/>
|
||||
|
||||
<changeSet author="jakubpilimon" id="1.delivery-planning-init">
|
||||
<sql>
|
||||
CREATE SCHEMA delivery_planning
|
||||
</sql>
|
||||
|
||||
<createTable tableName="delivery_planner_definition" schemaName="delivery_planning">
|
||||
<column name="ref_no" type="varchar(64)">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="definition" type="${json}">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</createTable>
|
||||
|
||||
<createTable tableName="delivery_forecast" schemaName="delivery_planning">
|
||||
<column name="id" type="serial">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="ref_no" type="varchar(64)">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="time" type="timestamp">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="date" type="timestamp">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="level" type="bigint">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</createTable>
|
||||
</changeSet>
|
||||
</databaseChangeLog>
|
||||
134
db-commons/src/main/resources/schema/demand-forecasting.xml
Normal file
134
db-commons/src/main/resources/schema/demand-forecasting.xml
Normal file
@@ -0,0 +1,134 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
|
||||
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.4.xsd">
|
||||
|
||||
<property name="json" value="clob" dbms="h2"/>
|
||||
<property name="json" value="jsonb" dbms="postgresql"/>
|
||||
|
||||
<changeSet author="jakubpilimon" id="1.demand_forecasting-init">
|
||||
<sql>
|
||||
CREATE SCHEMA demand_forecasting
|
||||
</sql>
|
||||
|
||||
<createTable tableName="product_demand" schemaName="demand_forecasting">
|
||||
<column name="id" type="serial">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="version" type="bigint">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="ref_no" type="varchar(64)">
|
||||
<constraints unique="true"/>
|
||||
</column>
|
||||
</createTable>
|
||||
|
||||
<createTable tableName="demand" schemaName="demand_forecasting">
|
||||
<column name="id" type="serial">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="ref_no" type="varchar(64)">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="date" type="timestamp">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="value" type="${json}">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</createTable>
|
||||
<addUniqueConstraint
|
||||
columnNames="ref_no, date"
|
||||
constraintName="demand_refno_date_unique"
|
||||
schemaName="demand_forecasting"
|
||||
tableName="demand"/>
|
||||
|
||||
<createTable tableName="current_demand" schemaName="demand_forecasting">
|
||||
<column name="id" type="serial">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="ref_no" type="varchar(64)">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="date" type="timestamp">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="level" type="bigint">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="schema" type="varchar(64)">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</createTable>
|
||||
<addUniqueConstraint
|
||||
columnNames="ref_no, date"
|
||||
constraintName="cr_demand_refno_date_unique"
|
||||
schemaName="demand_forecasting"
|
||||
tableName="current_demand"/>
|
||||
|
||||
<createTable tableName="demand_adjustment" schemaName="demand_forecasting">
|
||||
<column name="id" type="serial">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="customer_representative" type="varchar(255)">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="note" type="varchar(255)">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="adjustment" type="${json}">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="clean_after" type="timestamp"/>
|
||||
</createTable>
|
||||
|
||||
<createTable tableName="demand_review" schemaName="demand_forecasting">
|
||||
<column name="id" type="serial">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="ref_no" type="varchar(64)">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="date" type="timestamp">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="timestamp" type="timestamp">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="review" type="${json}">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="decision" type="varchar(64)"/>
|
||||
<column name="clean_after" type="timestamp"/>
|
||||
</createTable>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="jakubpilimon" id="2.rename.review.table">
|
||||
<renameTable oldTableName="demand_review" newTableName="required_review" schemaName="demand_forecasting"/>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="jakubpilimon" id="3.create.document.table">
|
||||
<createTable tableName="document" schemaName="demand_forecasting">
|
||||
<column name="id" type="serial">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="ref_no" type="varchar(64)">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="original_uri" type="varchar(1024)">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="stored_uri" type="varchar(1024)">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="saved" type="timestamp">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="document" type="${json}">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="clean_after" type="timestamp"/>
|
||||
</createTable>
|
||||
</changeSet>
|
||||
</databaseChangeLog>
|
||||
24
db-commons/src/main/resources/schema/product-management.xml
Normal file
24
db-commons/src/main/resources/schema/product-management.xml
Normal file
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
|
||||
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.4.xsd">
|
||||
|
||||
<property name="json" value="clob" dbms="h2"/>
|
||||
<property name="json" value="jsonb" dbms="postgresql"/>
|
||||
|
||||
<changeSet author="jakubpilimon" id="1.product_management-init">
|
||||
<sql>
|
||||
CREATE SCHEMA product_management
|
||||
</sql>
|
||||
|
||||
<createTable tableName="product_description" schemaName="product_management">
|
||||
<column name="ref_no" type="varchar(64)">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="description" type="${json}">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</createTable>
|
||||
</changeSet>
|
||||
</databaseChangeLog>
|
||||
60
db-commons/src/main/resources/schema/production-planning.xml
Normal file
60
db-commons/src/main/resources/schema/production-planning.xml
Normal file
@@ -0,0 +1,60 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
|
||||
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.4.xsd">
|
||||
|
||||
<property name="json" value="clob" dbms="h2"/>
|
||||
<property name="json" value="jsonb" dbms="postgresql"/>
|
||||
|
||||
<changeSet author="jakubpilimon" id="1.production_planning-init">
|
||||
<sql>
|
||||
CREATE SCHEMA production_planning
|
||||
</sql>
|
||||
|
||||
|
||||
<createTable tableName="production_daily_output" schemaName="production_planning">
|
||||
<column name="id" type="serial">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="ref_no" type="varchar(64)">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="date" type="timestamp">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="output" type="bigint">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</createTable>
|
||||
<addUniqueConstraint
|
||||
columnNames="ref_no, date"
|
||||
constraintName="pp_output_refno_date_unique"
|
||||
schemaName="production_planning"
|
||||
tableName="production_daily_output"/>
|
||||
|
||||
<createTable tableName="production_output" schemaName="production_planning">
|
||||
<column name="id" type="serial">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="ref_no" type="varchar(64)">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="start" type="timestamp">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="end" type="timestamp">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="duration" type="bigint">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="parts_per_minute" type="integer">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="total" type="bigint">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</createTable>
|
||||
</changeSet>
|
||||
</databaseChangeLog>
|
||||
@@ -0,0 +1,40 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
|
||||
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.4.xsd">
|
||||
|
||||
<property name="json" value="clob" dbms="h2"/>
|
||||
<property name="json" value="jsonb" dbms="postgresql"/>
|
||||
|
||||
<changeSet author="jakubpilimon" id="1.shortages_prediction-init">
|
||||
<sql>
|
||||
CREATE SCHEMA shortages_prediction
|
||||
</sql>
|
||||
|
||||
<createTable tableName="shortage" schemaName="shortages_prediction">
|
||||
<column name="id" type="serial">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="version" type="bigint">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
<column name="ref_no" type="varchar(64)">
|
||||
<constraints unique="true" nullable="false"/>
|
||||
</column>
|
||||
<column name="shortages" type="${json}">
|
||||
<constraints nullable="false"/>
|
||||
</column>
|
||||
</createTable>
|
||||
|
||||
<createTable tableName="stock_forecast" schemaName="shortages_prediction">
|
||||
<column name="ref_no" type="varchar(64)">
|
||||
<constraints primaryKey="true" nullable="false"/>
|
||||
</column>
|
||||
</createTable>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="jakubpilimon" id="2.rename.shortages.column">
|
||||
<renameColumn tableName="shortage" oldColumnName="shortages" newColumnName="shortage" schemaName="shortages_prediction"/>
|
||||
</changeSet>
|
||||
</databaseChangeLog>
|
||||
@@ -68,6 +68,12 @@
|
||||
<version>1.7.9</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>pl.com.dddbyexamples</groupId>
|
||||
<artifactId>db-commons</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<properties>
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
spring.datasource.url=jdbc:h2:mem:db;DB_CLOSE_ON_EXIT=FALSE
|
||||
spring.datasource.username=sa
|
||||
spring.datasource.password=sa
|
||||
spring.datasource.driver-class-name=org.h2.Driver
|
||||
spring.liquibase.change-log=classpath:/schema/db.changelog.xml
|
||||
|
||||
1
pom.xml
1
pom.xml
@@ -19,6 +19,7 @@
|
||||
<module>shortages-prediction-adapters</module>
|
||||
<module>product-management-adapters</module>
|
||||
<module>production-planning-adapters</module>
|
||||
<module>db-commons</module>
|
||||
</modules>
|
||||
|
||||
</project>
|
||||
|
||||
@@ -27,6 +27,11 @@
|
||||
<type>test-jar</type>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>pl.com.dddbyexamples</groupId>
|
||||
<artifactId>db-commons</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.projectlombok</groupId>
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
spring.datasource.url=jdbc:h2:mem:db;DB_CLOSE_ON_EXIT=FALSE
|
||||
spring.datasource.username=sa
|
||||
spring.datasource.password=sa
|
||||
spring.datasource.driver-class-name=org.h2.Driver
|
||||
spring.liquibase.change-log=classpath:/schema/db.changelog.xml
|
||||
|
||||
@@ -32,6 +32,12 @@
|
||||
<type>test-jar</type>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>pl.com.dddbyexamples</groupId>
|
||||
<artifactId>db-commons</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.projectlombok</groupId>
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
spring.datasource.url=jdbc:h2:mem:db;DB_CLOSE_ON_EXIT=FALSE
|
||||
spring.datasource.username=sa
|
||||
spring.datasource.password=sa
|
||||
spring.datasource.driver-class-name=org.h2.Driver
|
||||
spring.liquibase.change-log=classpath:/schema/db.changelog.xml
|
||||
|
||||
Reference in New Issue
Block a user