From 19eca75a6c131d4a7828d33e84f9183affcc92f7 Mon Sep 17 00:00:00 2001 From: Benjamin POCHAT Date: Tue, 22 Mar 2022 21:00:34 +0100 Subject: [PATCH] 52 : add Liquibase to manage upgrades on data --- core/pom.xml | 72 +- .../src/main/resources/application.properties | 6 +- .../changelog-2022-03-52-add_liquibase.yaml | 1255 +++++++++++++++++ .../changelog/2022-03/changelog-2022-03.yaml | 4 + .../database/changelog/changelog-master.yaml | 4 + .../com/localeat/domains/security/schema.sql | 16 - ...ryService_updateQuantitySoldInBatches.java | 1 - .../TestAndDocDeliveryController.java | 2 - .../TestQuantitySoldForDeliveryService.java | 1 - .../order/TestAndDocOrderController.java | 12 +- .../domains/order/TestOrderController.java | 1 - ...ionService_notifyOrderByMailToBreeder.java | 1 - ...onService_notifyOrderByMailToCustomer.java | 1 - .../payment/TestPaymentController.java | 1 - .../product/TestAndDocProductController.java | 4 - .../security/TestAccountController.java | 3 - .../security/TestAndDocAccountController.java | 4 +- .../TestAuthenticationController.java | 1 - .../TestPasswordRenewalController.java | 1 - .../filter/TestAuthorizedAccountFilter.java | 1 - .../filter/TestNotExpiredTokenFilter.java | 1 - .../TestAndDocSlaughterController.java | 2 - .../resources/application-test.properties | 11 +- .../domains/delivery/delivery_test_data.sql | 26 +- .../localeat/domains/farm/farm_test_data.sql | 4 +- .../domains/order/order_test_data.sql | 18 +- .../product/product_template_test_data.sql | 2 +- .../domains/product/product_test_data.sql | 2 +- .../domains/slaughter/slaughter_test_data.sql | 12 +- .../com/localeat/domains/clear_data.sql | 3 + scripts/dev/generate-database-changelog.sh | 5 + scripts/dev/run-sql-client-dev.sh | 3 +- 32 files changed, 1370 insertions(+), 110 deletions(-) create mode 100644 core/src/main/resources/database/changelog/2022-03/changelog-2022-03-52-add_liquibase.yaml create mode 100644 core/src/main/resources/database/changelog/2022-03/changelog-2022-03.yaml create mode 100644 core/src/main/resources/database/changelog/changelog-master.yaml delete mode 100644 core/src/main/resources/sql/create/com/localeat/domains/security/schema.sql create mode 100644 scripts/dev/generate-database-changelog.sh diff --git a/core/pom.xml b/core/pom.xml index 84665d5..01467bd 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -14,18 +14,19 @@ 2.2.7.RELEASE 5.2.4.RELEASE 2.0.4.RELEASE + 2.3.4.RELEASE + 4.8.0 2.10.4 2.3.0 1.5.0-b01 42.2.5 - 2.0.206 + 2.6.1 1.7.32 2.17.1 5.6.3 3.14.0 3.1.0 3.8.0 - 1.6.0 0.8.5 4.3.0 1.6.0 @@ -59,7 +60,6 @@ spring-security-oauth2-jose - javax.xml.bind jaxb-api @@ -70,24 +70,25 @@ mail - com.fasterxml.jackson.datatype jackson-datatype-hibernate5 - org.springframework.restdocs spring-restdocs-mockmvc - org.postgresql postgresql + + org.liquibase + liquibase-core + org.springframework.boot @@ -101,8 +102,8 @@ - com.h2database - h2 + org.hsqldb + hsqldb @@ -119,19 +120,27 @@ - org.codehaus.mojo - exec-maven-plugin + org.springframework.boot + spring-boot-maven-plugin + + -Dspring.application.admin.enabled=true + + pre-integration-test - java + start + + + + post-integration-test + + stop - - com.localeat.core.LocaleatCoreApplication - + org.asciidoctor asciidoctor-maven-plugin @@ -156,6 +165,7 @@ + org.jacoco jacoco-maven-plugin @@ -168,6 +178,7 @@ + org.eluder.coveralls coveralls-maven-plugin @@ -217,11 +228,16 @@ org.apache.maven.plugins maven-surefire-plugin ${surefire-version} - - - org.hibernate.dialect.H2Dialect - - + + + org.liquibase + liquibase-maven-plugin + ${liquibase-version} + + + org.springframework.boot + spring-boot-maven-plugin + ${springboot-maven-plugin-version} @@ -260,6 +276,12 @@ ${spring-security-version} + + org.springdoc + springdoc-openapi-ui + ${spring-openapi-version} + + javax.xml.bind jaxb-api @@ -285,6 +307,12 @@ runtime + + org.liquibase + liquibase-core + ${liquibase-version} + + org.slf4j slf4j-api @@ -324,9 +352,9 @@ - com.h2database - h2 - ${h2.version} + org.hsqldb + hsqldb + ${hsqldb-version} test diff --git a/core/src/main/resources/application.properties b/core/src/main/resources/application.properties index 95c3b0b..bcfb632 100644 --- a/core/src/main/resources/application.properties +++ b/core/src/main/resources/application.properties @@ -8,7 +8,11 @@ logging.level.org.springframework.security = WARN spring.jackson.serialization.FAIL_ON_EMPTY_BEANS=false # /!\ Caution : The datasource is not set by SpringBoot default initialization # The datasource is set in CommandLineDatabaseConfig -spring.jpa.hibernate.ddl-auto = update +spring.jpa.hibernate.ddl-auto = none + +# LIQUIBASE +#---------- +spring.liquibase.change-log=classpath:database/changelog/changelog-master.yaml # LOCALEAT #--------- diff --git a/core/src/main/resources/database/changelog/2022-03/changelog-2022-03-52-add_liquibase.yaml b/core/src/main/resources/database/changelog/2022-03/changelog-2022-03-52-add_liquibase.yaml new file mode 100644 index 0000000..ca9f342 --- /dev/null +++ b/core/src/main/resources/database/changelog/2022-03/changelog-2022-03-52-add_liquibase.yaml @@ -0,0 +1,1255 @@ +databaseChangeLog: + - changeSet: + id: 1647977756683-1 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: users_pkey + name: username + type: VARCHAR(50) + - column: + constraints: + nullable: false + name: password + type: VARCHAR(100) + - column: + constraints: + nullable: false + defaultValueBoolean: true + name: enabled + type: BOOLEAN + tableName: users + - changeSet: + id: 1647977756683-2 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + name: username + type: VARCHAR(50) + - column: + constraints: + nullable: false + name: authority + type: VARCHAR(50) + tableName: authorities + - changeSet: + id: 1647977756683-3 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: deliveries_orders_pkey + name: delivery_id + type: BIGINT + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: deliveries_orders_pkey + name: orders_id + type: BIGINT + tableName: deliveries_orders + - changeSet: + id: 1647977756683-4 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + name: customer_id + type: BIGINT + - column: + constraints: + nullable: false + name: orders_id + type: BIGINT + tableName: customers_orders + - changeSet: + id: 1647977756683-5 + author: benjamin + changes: + - createIndex: + columns: + - column: + name: username + - column: + name: authority + indexName: ix_auth_username + tableName: authorities + unique: true + - changeSet: + id: 1647977756683-6 + author: benjamin + changes: + - addUniqueConstraint: + columnNames: orders_id + constraintName: uk_2uauq9cqhqnwrdqiosdxgv2i9 + tableName: deliveries_orders + - changeSet: + id: 1647977756683-7 + author: benjamin + changes: + - addUniqueConstraint: + columnNames: orders_id + constraintName: uk_c23uaum5y9y2r1f0a3jprvu19 + tableName: customers_orders + - changeSet: + id: 1647977756683-8 + author: benjamin + changes: + - createSequence: + cacheSize: 1 + cycle: false + incrementBy: 1 + sequenceName: account_id_seq + startValue: 1 + - changeSet: + id: 1647977756683-9 + author: benjamin + changes: + - createSequence: + cacheSize: 1 + cycle: false + incrementBy: 1 + sequenceName: actor_id_seq + startValue: 1 + - changeSet: + id: 1647977756683-10 + author: benjamin + changes: + - createSequence: + cacheSize: 1 + cycle: false + incrementBy: 1 + sequenceName: address_id_seq + startValue: 1 + - changeSet: + id: 1647977756683-11 + author: benjamin + changes: + - createSequence: + cacheSize: 1 + cycle: false + incrementBy: 1 + sequenceName: animal_id_seq + startValue: 1 + - changeSet: + id: 1647977756683-12 + author: benjamin + changes: + - createSequence: + cacheSize: 1 + cycle: false + incrementBy: 1 + sequenceName: batch_id_seq + startValue: 1 + - changeSet: + id: 1647977756683-13 + author: benjamin + changes: + - createSequence: + cacheSize: 1 + cycle: false + incrementBy: 1 + sequenceName: customer_id_seq + startValue: 1 + - changeSet: + id: 1647977756683-14 + author: benjamin + changes: + - createSequence: + cacheSize: 1 + cycle: false + incrementBy: 1 + sequenceName: delivery_access_control_id_seq + startValue: 1 + - changeSet: + id: 1647977756683-15 + author: benjamin + changes: + - createSequence: + cacheSize: 1 + cycle: false + incrementBy: 1 + sequenceName: delivery_access_key_id_seq + startValue: 1 + - changeSet: + id: 1647977756683-16 + author: benjamin + changes: + - createSequence: + cacheSize: 1 + cycle: false + incrementBy: 1 + sequenceName: delivery_id_seq + startValue: 1 + - changeSet: + id: 1647977756683-17 + author: benjamin + changes: + - createSequence: + cacheSize: 1 + cycle: false + incrementBy: 1 + sequenceName: farm_id_seq + startValue: 1 + - changeSet: + id: 1647977756683-18 + author: benjamin + changes: + - createSequence: + cacheSize: 1 + cycle: false + incrementBy: 1 + sequenceName: image_id_seq + startValue: 1 + - changeSet: + id: 1647977756683-19 + author: benjamin + changes: + - createSequence: + cacheSize: 1 + cycle: false + incrementBy: 1 + sequenceName: order_id_seq + startValue: 1 + - changeSet: + id: 1647977756683-20 + author: benjamin + changes: + - createSequence: + cacheSize: 1 + cycle: false + incrementBy: 1 + sequenceName: order_item_id_seq + startValue: 1 + - changeSet: + id: 1647977756683-21 + author: benjamin + changes: + - createSequence: + cacheSize: 1 + cycle: false + incrementBy: 1 + sequenceName: payment_id_seq + startValue: 1 + - changeSet: + id: 1647977756683-22 + author: benjamin + changes: + - createSequence: + cacheSize: 1 + cycle: false + incrementBy: 1 + sequenceName: product_id_seq + startValue: 1 + - changeSet: + id: 1647977756683-23 + author: benjamin + changes: + - createSequence: + cacheSize: 1 + cycle: false + incrementBy: 1 + sequenceName: product_template_id_seq + startValue: 1 + - changeSet: + id: 1647977756683-24 + author: benjamin + changes: + - createSequence: + cacheSize: 1 + cycle: false + incrementBy: 1 + sequenceName: slaughter_id_seq + startValue: 1 + - changeSet: + id: 1647977756683-25 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: accounts_pkey + name: id + type: BIGINT + - column: + name: username + type: VARCHAR(255) + - column: + name: actor_id + type: BIGINT + tableName: accounts + - changeSet: + id: 1647977756683-26 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: actor_pkey + name: id + type: BIGINT + - column: + name: email + type: VARCHAR(255) + - column: + name: first_name + type: VARCHAR(255) + - column: + name: name + type: VARCHAR(255) + - column: + name: phone_number + type: VARCHAR(255) + tableName: actor + - changeSet: + id: 1647977756683-27 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: addresses_pkey + name: id + type: BIGINT + - column: + name: address_line1 + type: VARCHAR(255) + - column: + name: address_line2 + type: VARCHAR(255) + - column: + name: address_line3 + type: VARCHAR(255) + - column: + name: address_line4 + type: VARCHAR(255) + - column: + name: city + type: VARCHAR(255) + - column: + name: zip_code + type: VARCHAR(255) + - column: + name: name + type: VARCHAR(255) + tableName: addresses + - changeSet: + id: 1647977756683-28 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: animals_pkey + name: id + type: BIGINT + - column: + name: animal_type + type: VARCHAR(255) + - column: + name: final_farm + type: VARCHAR(255) + - column: + name: identification_number + type: VARCHAR(255) + - column: + constraints: + nullable: false + name: live_weight + type: FLOAT + - column: + constraints: + nullable: false + name: meat_weight + type: FLOAT + - column: + name: final_farm_id + type: BIGINT + - column: + name: breed + type: VARCHAR(255) + - column: + name: certified_label_rouge + type: BOOLEAN + tableName: animals + - changeSet: + id: 1647977756683-29 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: batches_pkey + name: id + type: BIGINT + - column: + constraints: + nullable: false + name: quantity + type: INTEGER + - column: + constraints: + nullable: false + name: quantity_sold + type: INTEGER + - column: + name: product_id + type: BIGINT + tableName: batches + - changeSet: + id: 1647977756683-30 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: breeders_pkey + name: id + type: BIGINT + - column: + name: email + type: VARCHAR(255) + - column: + name: first_name + type: VARCHAR(255) + - column: + name: name + type: VARCHAR(255) + - column: + name: phone_number + type: VARCHAR(255) + - column: + name: farm_id + type: BIGINT + tableName: breeders + - changeSet: + id: 1647977756683-31 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: customers_pkey + name: id + type: BIGINT + - column: + name: email + type: VARCHAR(255) + - column: + name: first_name + type: VARCHAR(255) + - column: + name: name + type: VARCHAR(255) + - column: + name: phone_number + type: VARCHAR(255) + tableName: customers + - changeSet: + id: 1647977756683-32 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: deliveries_pkey + name: id + type: BIGINT + - column: + name: delivery_address_id + type: BIGINT + - column: + name: delivery_end + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: delivery_start + type: TIMESTAMP WITHOUT TIME ZONE + - column: + name: access_control_id + type: BIGINT + - column: + name: name + type: VARCHAR(255) + tableName: deliveries + - changeSet: + id: 1647977756683-33 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: delivery_available_batches_pkey + name: delivery_id + type: BIGINT + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: delivery_available_batches_pkey + name: available_batches_id + type: BIGINT + tableName: delivery_available_batches + - changeSet: + id: 1647977756683-34 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: farms_pkey + name: id + type: BIGINT + - column: + name: description + type: VARCHAR(255) + - column: + name: name + type: VARCHAR(255) + - column: + name: slideshow_url + type: VARCHAR(255) + tableName: farms + - changeSet: + id: 1647977756683-35 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: images_pkey + name: id + type: BIGINT + - column: + name: content + type: TEXT + tableName: images + - changeSet: + id: 1647977756683-36 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: mollie_payment_transaction_pkey + name: id + type: VARCHAR(255) + - column: + name: currency + type: INTEGER + - column: + name: value + type: VARCHAR(255) + - column: + name: description + type: VARCHAR(255) + - column: + name: redirect_url + type: VARCHAR(255) + - column: + name: status + type: VARCHAR(255) + - column: + name: webhook_url + type: VARCHAR(255) + - column: + name: href + type: VARCHAR(255) + - column: + name: type + type: VARCHAR(255) + tableName: mollie_payment_transaction + - changeSet: + id: 1647977756683-37 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: order_items_pkey + name: id + type: BIGINT + - column: + name: quantity + type: FLOAT + - column: + name: unit_price + type: FLOAT + - column: + name: order_id + type: BIGINT + - column: + name: batch_id + type: BIGINT + tableName: order_items + - changeSet: + id: 1647977756683-38 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: ordered_items_pkey + name: order_id + type: BIGINT + - column: + name: ordered_quantity + type: INTEGER + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: ordered_items_pkey + name: ordered_items_key + type: BIGINT + tableName: ordered_items + - changeSet: + id: 1647977756683-39 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: orders_pkey + name: id + type: BIGINT + - column: + name: customer_id + type: BIGINT + - column: + name: delivery_id + type: BIGINT + - column: + name: status + type: VARCHAR(255) + tableName: orders + - changeSet: + id: 1647977756683-40 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: payments_pkey + name: id + type: BIGINT + - column: + constraints: + nullable: false + name: amount + type: FLOAT + - column: + name: status + type: VARCHAR(255) + - column: + name: transaction_id + type: VARCHAR(255) + - column: + name: order_id + type: BIGINT + - column: + name: payment_url + type: VARCHAR(255) + tableName: payments + - changeSet: + id: 1647977756683-41 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: product_templates_pkey + name: id + type: BIGINT + - column: + name: description + type: VARCHAR(255) + - column: + name: name + type: VARCHAR(255) + - column: + constraints: + nullable: false + name: net_weight + type: FLOAT + - column: + constraints: + nullable: false + name: unit_price + type: FLOAT + - column: + name: farm_id + type: BIGINT + - column: + name: photo_id + type: BIGINT + tableName: product_templates + - changeSet: + id: 1647977756683-42 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: products_pkey + name: id + type: BIGINT + - column: + name: description + type: VARCHAR(255) + - column: + constraints: + nullable: false + name: unit_price + type: FLOAT + - column: + name: animal_id + type: BIGINT + - column: + name: name + type: VARCHAR(255) + - column: + name: farm_id + type: BIGINT + - column: + name: net_weight + type: FLOAT + - column: + name: photo_id + type: BIGINT + tableName: products + - changeSet: + id: 1647977756683-43 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: public_delivery_access_control_pkey + name: id + type: BIGINT + tableName: public_delivery_access_control + - changeSet: + id: 1647977756683-44 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: shared_delivery_access_key_pkey + name: id + type: BIGINT + - column: + name: key + type: VARCHAR(255) + tableName: shared_delivery_access_key + - changeSet: + id: 1647977756683-45 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: shared_key_delivery_access_control_pkey + name: id + type: BIGINT + - column: + name: shared_key_id + type: BIGINT + tableName: shared_key_delivery_access_control + - changeSet: + id: 1647977756683-46 + author: benjamin + changes: + - createTable: + columns: + - column: + constraints: + nullable: false + primaryKey: true + primaryKeyName: slaughters_pkey + name: id + type: BIGINT + - column: + name: slaughter_date + type: date + - column: + name: animal_id + type: BIGINT + - column: + name: delivery_id + type: BIGINT + - column: + name: cutting_date + type: date + tableName: slaughters + - changeSet: + id: 1647977756683-47 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: delivery_id + baseTableName: slaughters + constraintName: fk11opdck3ak7ou7bwymk5fjpy2 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: deliveries + validate: true + - changeSet: + id: 1647977756683-48 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: batch_id + baseTableName: order_items + constraintName: fk1920yk9vs4rqhsjcygwjk6wrr + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: batches + validate: true + - changeSet: + id: 1647977756683-49 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: customer_id + baseTableName: customers_orders + constraintName: fk23d13l73po2yhpnru16evw5o3 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: customers + validate: true + - changeSet: + id: 1647977756683-50 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: delivery_address_id + baseTableName: deliveries + constraintName: fk3q3f98q617o25xdcs7kwmnf4c + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: addresses + validate: true + - changeSet: + id: 1647977756683-51 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: animal_id + baseTableName: slaughters + constraintName: fk4tejvtd9rrg699a6wy0fbvn1y + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: animals + validate: true + - changeSet: + id: 1647977756683-52 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: farm_id + baseTableName: breeders + constraintName: fk5wytgqi6hbdr1ud5ip6ki5o38 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: farms + validate: true + - changeSet: + id: 1647977756683-53 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: ordered_items_key + baseTableName: ordered_items + constraintName: fk6dphjili8qffi6m23tmpa8ppn + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: products + validate: true + - changeSet: + id: 1647977756683-54 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: photo_id + baseTableName: product_templates + constraintName: fk6hg7ttn7bstt40a5aeplu5y90 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: images + validate: true + - changeSet: + id: 1647977756683-55 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: farm_id + baseTableName: products + constraintName: fk6u1nuo7vlt4ffm43qduh1ngbu + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: farms + validate: true + - changeSet: + id: 1647977756683-56 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: final_farm_id + baseTableName: animals + constraintName: fk74dqysfa9r17uwr63t0bjrg5g + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: farms + validate: true + - changeSet: + id: 1647977756683-57 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: delivery_id + baseTableName: delivery_available_batches + constraintName: fk80j3cltftmmw6nv61lpr3f3pu + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: deliveries + validate: true + - changeSet: + id: 1647977756683-58 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: order_id + baseTableName: payments + constraintName: fk81gagumt0r8y3rmudcgpbk42l + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: orders + validate: true + - changeSet: + id: 1647977756683-59 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: delivery_id + baseTableName: orders + constraintName: fk8w9m21riko8j8eit0yvog02nr + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: deliveries + validate: true + - changeSet: + id: 1647977756683-60 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: order_id + baseTableName: order_items + constraintName: fkbioxgbv59vetrxe0ejfubep1w + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: orders + validate: true + - changeSet: + id: 1647977756683-61 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: orders_id + baseTableName: customers_orders + constraintName: fkcgubpw142krbvsbpfumpss2wl + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: orders + validate: true + - changeSet: + id: 1647977756683-62 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: animal_id + baseTableName: products + constraintName: fkeoonoj931jrqunr884p8i8098 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: animals + validate: true + - changeSet: + id: 1647977756683-63 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: available_batches_id + baseTableName: delivery_available_batches + constraintName: fkff6i97n5gqud20tri12xmf2qp + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: batches + validate: true + - changeSet: + id: 1647977756683-64 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: order_id + baseTableName: ordered_items + constraintName: fkha3q3tsqr7gri0mbp14hc5mkq + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: orders + validate: true + - changeSet: + id: 1647977756683-65 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: product_id + baseTableName: batches + constraintName: fkjb38v1mk479a6t6ay2mewo03m + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: products + validate: true + - changeSet: + id: 1647977756683-66 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: orders_id + baseTableName: deliveries_orders + constraintName: fkjpdigjxl254hbpo88bv59dfjb + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: orders + validate: true + - changeSet: + id: 1647977756683-67 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: delivery_id + baseTableName: deliveries_orders + constraintName: fkkv0h9s26mthna5hjhe6v7400o + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: deliveries + validate: true + - changeSet: + id: 1647977756683-68 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: shared_key_id + baseTableName: shared_key_delivery_access_control + constraintName: fkl35g4qxcp7emhdpxs8ucca3ap + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: shared_delivery_access_key + validate: true + - changeSet: + id: 1647977756683-69 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: photo_id + baseTableName: products + constraintName: fkphxd4dun403ttilxtcrccurnv + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: images + validate: true + - changeSet: + id: 1647977756683-70 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: customer_id + baseTableName: orders + constraintName: fkpxtb8awmi0dk6smoh2vp1litg + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: customers + validate: true + - changeSet: + id: 1647977756683-71 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: farm_id + baseTableName: product_templates + constraintName: fkqud0f2q4y5gpphfdsh5plqj16 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: id + referencedTableName: farms + validate: true + - changeSet: + id: 1647977756683-72 + author: benjamin + changes: + - addForeignKeyConstraint: + baseColumnNames: username + baseTableName: authorities + constraintName: foreign_authorities_users_1 + deferrable: false + initiallyDeferred: false + onDelete: NO ACTION + onUpdate: NO ACTION + referencedColumnNames: username + referencedTableName: users + validate: true + diff --git a/core/src/main/resources/database/changelog/2022-03/changelog-2022-03.yaml b/core/src/main/resources/database/changelog/2022-03/changelog-2022-03.yaml new file mode 100644 index 0000000..c92d5be --- /dev/null +++ b/core/src/main/resources/database/changelog/2022-03/changelog-2022-03.yaml @@ -0,0 +1,4 @@ +databaseChangeLog: + - include: + relativeToChangelogFile: true + file: changelog-2022-03-52-add_liquibase.yaml diff --git a/core/src/main/resources/database/changelog/changelog-master.yaml b/core/src/main/resources/database/changelog/changelog-master.yaml new file mode 100644 index 0000000..7b99891 --- /dev/null +++ b/core/src/main/resources/database/changelog/changelog-master.yaml @@ -0,0 +1,4 @@ +databaseChangeLog: + - include: + relativeToChangelogFile: true + file: 2022-03/changelog-2022-03.yaml diff --git a/core/src/main/resources/sql/create/com/localeat/domains/security/schema.sql b/core/src/main/resources/sql/create/com/localeat/domains/security/schema.sql deleted file mode 100644 index 708d480..0000000 --- a/core/src/main/resources/sql/create/com/localeat/domains/security/schema.sql +++ /dev/null @@ -1,16 +0,0 @@ -DROP TABLE IF EXISTS authorities; -DROP TABLE IF EXISTS users; - -CREATE TABLE users ( - username varchar(50) NOT NULL PRIMARY KEY, - password varchar(100) NOT NULL, - enabled boolean not null DEFAULT true -); - -CREATE TABLE authorities ( - username varchar(50) NOT NULL, - authority varchar(50) NOT NULL, - CONSTRAINT foreign_authorities_users_1 foreign key(username) references users(username) -); - -CREATE UNIQUE INDEX ix_auth_username on authorities (username,authority); \ No newline at end of file diff --git a/core/src/test/java/com/localeat/core/domains/delivery/QuantitySoldForDeliveryService_updateQuantitySoldInBatches.java b/core/src/test/java/com/localeat/core/domains/delivery/QuantitySoldForDeliveryService_updateQuantitySoldInBatches.java index 2b5ff3e..ca69029 100644 --- a/core/src/test/java/com/localeat/core/domains/delivery/QuantitySoldForDeliveryService_updateQuantitySoldInBatches.java +++ b/core/src/test/java/com/localeat/core/domains/delivery/QuantitySoldForDeliveryService_updateQuantitySoldInBatches.java @@ -12,7 +12,6 @@ @SpringBootTest @Transactional @Sql({ - "/sql/create/com/localeat/domains/security/schema.sql", "/sql/create/com/localeat/domains/farm/farm_test_data.sql", "/sql/create/com/localeat/domains/actor/breeder_test_data.sql", "/sql/create/com/localeat/domains/actor/customer_test_data.sql", diff --git a/core/src/test/java/com/localeat/core/domains/delivery/TestAndDocDeliveryController.java b/core/src/test/java/com/localeat/core/domains/delivery/TestAndDocDeliveryController.java index 3a679e9..9cef148 100644 --- a/core/src/test/java/com/localeat/core/domains/delivery/TestAndDocDeliveryController.java +++ b/core/src/test/java/com/localeat/core/domains/delivery/TestAndDocDeliveryController.java @@ -25,9 +25,7 @@ @SpringBootTest @ExtendWith({RestDocumentationExtension.class, SpringExtension.class}) -@Transactional @Sql(value = { - "/sql/create/com/localeat/domains/security/schema.sql", "/sql/create/com/localeat/domains/security/security_test_data.sql", "/sql/create/com/localeat/domains/farm/farm_test_data.sql", "/sql/create/com/localeat/domains/actor/breeder_test_data.sql", diff --git a/core/src/test/java/com/localeat/core/domains/delivery/TestQuantitySoldForDeliveryService.java b/core/src/test/java/com/localeat/core/domains/delivery/TestQuantitySoldForDeliveryService.java index 017657a..6c020b1 100644 --- a/core/src/test/java/com/localeat/core/domains/delivery/TestQuantitySoldForDeliveryService.java +++ b/core/src/test/java/com/localeat/core/domains/delivery/TestQuantitySoldForDeliveryService.java @@ -10,7 +10,6 @@ @SpringBootTest @Transactional @Sql({ - "/sql/create/com/localeat/domains/security/schema.sql", "/sql/create/com/localeat/domains/farm/farm_test_data.sql", "/sql/create/com/localeat/domains/actor/breeder_test_data.sql", "/sql/create/com/localeat/domains/actor/customer_test_data.sql", diff --git a/core/src/test/java/com/localeat/core/domains/order/TestAndDocOrderController.java b/core/src/test/java/com/localeat/core/domains/order/TestAndDocOrderController.java index 7eed37c..5285cd9 100644 --- a/core/src/test/java/com/localeat/core/domains/order/TestAndDocOrderController.java +++ b/core/src/test/java/com/localeat/core/domains/order/TestAndDocOrderController.java @@ -1,11 +1,8 @@ package com.localeat.core.domains.order; -import com.localeat.core.commons.EmailService; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; -import org.mockito.InjectMocks; -import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.http.MediaType; @@ -15,26 +12,19 @@ import org.springframework.test.context.junit.jupiter.SpringExtension; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.setup.MockMvcBuilders; -import org.springframework.transaction.annotation.Transactional; import org.springframework.web.context.WebApplicationContext; -import static org.mockito.ArgumentMatchers.any; -import static org.mockito.Mockito.doNothing; -import static org.mockito.Mockito.when; import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.document; import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.documentationConfiguration; -import static org.springframework.restdocs.mockmvc.RestDocumentationRequestBuilders.post; import static org.springframework.restdocs.mockmvc.RestDocumentationRequestBuilders.get; +import static org.springframework.restdocs.mockmvc.RestDocumentationRequestBuilders.post; import static org.springframework.restdocs.operation.preprocess.Preprocessors.*; -import static org.springframework.restdocs.operation.preprocess.Preprocessors.prettyPrint; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; @SpringBootTest @ExtendWith({RestDocumentationExtension.class, SpringExtension.class}) -@Transactional @Sql(value = { - "/sql/create/com/localeat/domains/security/schema.sql", "/sql/create/com/localeat/domains/security/security_test_data.sql", "/sql/create/com/localeat/domains/farm/farm_test_data.sql", "/sql/create/com/localeat/domains/actor/customer_test_data.sql", diff --git a/core/src/test/java/com/localeat/core/domains/order/TestOrderController.java b/core/src/test/java/com/localeat/core/domains/order/TestOrderController.java index b2fa87e..3c25c73 100644 --- a/core/src/test/java/com/localeat/core/domains/order/TestOrderController.java +++ b/core/src/test/java/com/localeat/core/domains/order/TestOrderController.java @@ -17,7 +17,6 @@ @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) @Sql(value = { - "/sql/create/com/localeat/domains/security/schema.sql", "/sql/create/com/localeat/domains/security/security_test_data.sql", "/sql/create/com/localeat/domains/farm/farm_test_data.sql", "/sql/create/com/localeat/domains/actor/customer_test_data.sql", diff --git a/core/src/test/java/com/localeat/core/domains/order/TestOrderNotificationService_notifyOrderByMailToBreeder.java b/core/src/test/java/com/localeat/core/domains/order/TestOrderNotificationService_notifyOrderByMailToBreeder.java index de02dca..ed0dd6b 100644 --- a/core/src/test/java/com/localeat/core/domains/order/TestOrderNotificationService_notifyOrderByMailToBreeder.java +++ b/core/src/test/java/com/localeat/core/domains/order/TestOrderNotificationService_notifyOrderByMailToBreeder.java @@ -12,7 +12,6 @@ @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) @Sql(value = { - "/sql/create/com/localeat/domains/security/schema.sql", "/sql/create/com/localeat/domains/security/security_test_data.sql", "/sql/create/com/localeat/domains/farm/farm_test_data.sql", "/sql/create/com/localeat/domains/actor/customer_test_data.sql", diff --git a/core/src/test/java/com/localeat/core/domains/order/TestOrderNotificationService_notifyOrderByMailToCustomer.java b/core/src/test/java/com/localeat/core/domains/order/TestOrderNotificationService_notifyOrderByMailToCustomer.java index d5f3751..b5ef2d1 100644 --- a/core/src/test/java/com/localeat/core/domains/order/TestOrderNotificationService_notifyOrderByMailToCustomer.java +++ b/core/src/test/java/com/localeat/core/domains/order/TestOrderNotificationService_notifyOrderByMailToCustomer.java @@ -12,7 +12,6 @@ @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) @Sql(value = { - "/sql/create/com/localeat/domains/security/schema.sql", "/sql/create/com/localeat/domains/security/security_test_data.sql", "/sql/create/com/localeat/domains/farm/farm_test_data.sql", "/sql/create/com/localeat/domains/actor/customer_test_data.sql", diff --git a/core/src/test/java/com/localeat/core/domains/payment/TestPaymentController.java b/core/src/test/java/com/localeat/core/domains/payment/TestPaymentController.java index 3a28e58..f3f3d91 100644 --- a/core/src/test/java/com/localeat/core/domains/payment/TestPaymentController.java +++ b/core/src/test/java/com/localeat/core/domains/payment/TestPaymentController.java @@ -22,7 +22,6 @@ @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) @Sql(value = { - "/sql/create/com/localeat/domains/security/schema.sql", "/sql/create/com/localeat/domains/security/security_test_data.sql", "/sql/create/com/localeat/domains/farm/farm_test_data.sql", "/sql/create/com/localeat/domains/actor/customer_test_data.sql", diff --git a/core/src/test/java/com/localeat/core/domains/product/TestAndDocProductController.java b/core/src/test/java/com/localeat/core/domains/product/TestAndDocProductController.java index a6e25e1..8c17bb6 100644 --- a/core/src/test/java/com/localeat/core/domains/product/TestAndDocProductController.java +++ b/core/src/test/java/com/localeat/core/domains/product/TestAndDocProductController.java @@ -3,7 +3,6 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; -import org.mockito.MockitoAnnotations; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.http.MediaType; import org.springframework.restdocs.RestDocumentationContextProvider; @@ -12,7 +11,6 @@ import org.springframework.test.context.junit.jupiter.SpringExtension; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.setup.MockMvcBuilders; -import org.springframework.transaction.annotation.Transactional; import org.springframework.web.context.WebApplicationContext; import static org.springframework.restdocs.mockmvc.MockMvcRestDocumentation.document; @@ -25,9 +23,7 @@ @SpringBootTest @ExtendWith({RestDocumentationExtension.class, SpringExtension.class}) -@Transactional @Sql(value = { - "/sql/create/com/localeat/domains/security/schema.sql", "/sql/create/com/localeat/domains/security/security_test_data.sql", "/sql/create/com/localeat/domains/farm/farm_test_data.sql", "/sql/create/com/localeat/domains/actor/breeder_test_data.sql", diff --git a/core/src/test/java/com/localeat/core/domains/security/TestAccountController.java b/core/src/test/java/com/localeat/core/domains/security/TestAccountController.java index a8d8293..7b13260 100644 --- a/core/src/test/java/com/localeat/core/domains/security/TestAccountController.java +++ b/core/src/test/java/com/localeat/core/domains/security/TestAccountController.java @@ -12,9 +12,6 @@ import static org.assertj.core.api.Assertions.assertThat; @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) -@Sql(value = { - "/sql/create/com/localeat/domains/security/schema.sql" -}, executionPhase = Sql.ExecutionPhase.BEFORE_TEST_METHOD) @Sql(value = { "/sql/delete/com/localeat/domains/clear_data.sql" }, executionPhase = Sql.ExecutionPhase.AFTER_TEST_METHOD) diff --git a/core/src/test/java/com/localeat/core/domains/security/TestAndDocAccountController.java b/core/src/test/java/com/localeat/core/domains/security/TestAndDocAccountController.java index 1ee8f3c..877e4f2 100644 --- a/core/src/test/java/com/localeat/core/domains/security/TestAndDocAccountController.java +++ b/core/src/test/java/com/localeat/core/domains/security/TestAndDocAccountController.java @@ -19,9 +19,7 @@ import static org.springframework.restdocs.operation.preprocess.Preprocessors.*; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; -@Sql(value = { - "/sql/create/com/localeat/domains/security/schema.sql" -}, executionPhase = Sql.ExecutionPhase.BEFORE_TEST_METHOD) + @Sql(value = { "/sql/delete/com/localeat/domains/clear_data.sql" }, executionPhase = Sql.ExecutionPhase.AFTER_TEST_METHOD) diff --git a/core/src/test/java/com/localeat/core/domains/security/TestAuthenticationController.java b/core/src/test/java/com/localeat/core/domains/security/TestAuthenticationController.java index b6fa701..c65c3f5 100644 --- a/core/src/test/java/com/localeat/core/domains/security/TestAuthenticationController.java +++ b/core/src/test/java/com/localeat/core/domains/security/TestAuthenticationController.java @@ -12,7 +12,6 @@ @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) @Sql(value = { - "/sql/create/com/localeat/domains/security/schema.sql", "/sql/create/com/localeat/domains/security/security_test_data.sql", "/sql/create/com/localeat/domains/farm/farm_test_data.sql", "/sql/create/com/localeat/domains/actor/breeder_test_data.sql" diff --git a/core/src/test/java/com/localeat/core/domains/security/TestPasswordRenewalController.java b/core/src/test/java/com/localeat/core/domains/security/TestPasswordRenewalController.java index 8870a13..bcdea03 100644 --- a/core/src/test/java/com/localeat/core/domains/security/TestPasswordRenewalController.java +++ b/core/src/test/java/com/localeat/core/domains/security/TestPasswordRenewalController.java @@ -15,7 +15,6 @@ @Profile("test") @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT, args = "--localeat.smtp.disableEmailNotifications=true") @Sql(value = { - "/sql/create/com/localeat/domains/security/schema.sql", "/sql/create/com/localeat/domains/security/security_test_data.sql", "/sql/create/com/localeat/domains/farm/farm_test_data.sql", "/sql/create/com/localeat/domains/actor/breeder_test_data.sql" diff --git a/core/src/test/java/com/localeat/core/domains/security/filter/TestAuthorizedAccountFilter.java b/core/src/test/java/com/localeat/core/domains/security/filter/TestAuthorizedAccountFilter.java index 3271d7f..adcf2db 100644 --- a/core/src/test/java/com/localeat/core/domains/security/filter/TestAuthorizedAccountFilter.java +++ b/core/src/test/java/com/localeat/core/domains/security/filter/TestAuthorizedAccountFilter.java @@ -17,7 +17,6 @@ @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) @Sql(value = { - "/sql/create/com/localeat/domains/security/schema.sql", "/sql/create/com/localeat/domains/security/security_test_data.sql", "/sql/create/com/localeat/domains/farm/farm_test_data.sql", "/sql/create/com/localeat/domains/actor/breeder_test_data.sql", diff --git a/core/src/test/java/com/localeat/core/domains/security/filter/TestNotExpiredTokenFilter.java b/core/src/test/java/com/localeat/core/domains/security/filter/TestNotExpiredTokenFilter.java index 8f38c1e..49306ba 100644 --- a/core/src/test/java/com/localeat/core/domains/security/filter/TestNotExpiredTokenFilter.java +++ b/core/src/test/java/com/localeat/core/domains/security/filter/TestNotExpiredTokenFilter.java @@ -22,7 +22,6 @@ @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) @Sql(value = { - "/sql/create/com/localeat/domains/security/schema.sql", "/sql/create/com/localeat/domains/security/security_test_data.sql", "/sql/create/com/localeat/domains/farm/farm_test_data.sql", "/sql/create/com/localeat/domains/actor/breeder_test_data.sql", diff --git a/core/src/test/java/com/localeat/core/domains/slaughter/TestAndDocSlaughterController.java b/core/src/test/java/com/localeat/core/domains/slaughter/TestAndDocSlaughterController.java index abc3a50..2c0c523 100644 --- a/core/src/test/java/com/localeat/core/domains/slaughter/TestAndDocSlaughterController.java +++ b/core/src/test/java/com/localeat/core/domains/slaughter/TestAndDocSlaughterController.java @@ -32,9 +32,7 @@ @SpringBootTest @ExtendWith({RestDocumentationExtension.class, SpringExtension.class}) -@Transactional @Sql(value = { - "/sql/create/com/localeat/domains/security/schema.sql", "/sql/create/com/localeat/domains/security/security_test_data.sql", "/sql/create/com/localeat/domains/farm/farm_test_data.sql", "/sql/create/com/localeat/domains/actor/breeder_test_data.sql" diff --git a/core/src/test/resources/application-test.properties b/core/src/test/resources/application-test.properties index 7b7aee9..ead60be 100644 --- a/core/src/test/resources/application-test.properties +++ b/core/src/test/resources/application-test.properties @@ -1,6 +1,11 @@ # Hibernate ddl auto (create, create-drop, validate, update) -spring.jpa.hibernate.ddl-auto = create -spring.jpa.properties.hibernate.globally_quoted_identifiers = true -spring.datasource.url=jdbc:h2:mem:testdb;CASE_INSENSITIVE_IDENTIFIERS=TRUE; +spring.jpa.hibernate.ddl-auto = none +spring.datasource.url=jdbc:hsqldb:mem:testdb;DB_CLOSE_DELAY=-1 +spring.datasource.username=sa +spring.datasource.password= logging.level.org.springframework.web = DEBUG localeat.smtp.disableEmailNotifications = true + +spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.HSQLDialect +spring.jpa.show-sql=true +spring.jpa.properties.hibernate.format_sql=true diff --git a/core/src/test/resources/sql/create/com/localeat/domains/delivery/delivery_test_data.sql b/core/src/test/resources/sql/create/com/localeat/domains/delivery/delivery_test_data.sql index 918f016..c194814 100644 --- a/core/src/test/resources/sql/create/com/localeat/domains/delivery/delivery_test_data.sql +++ b/core/src/test/resources/sql/create/com/localeat/domains/delivery/delivery_test_data.sql @@ -1,6 +1,6 @@ -- delivery 1, public access control -insert into public_delivery_access_control (id) values (nextval('delivery_access_control_id_seq')); +insert into public_delivery_access_control (id) values (next value for delivery_access_control_id_seq); insert into deliveries ( id, @@ -11,9 +11,9 @@ insert into deliveries ( values ( 1, 1, - '20500101T1800', - '20500101T2000', - currval('delivery_access_control_id_seq')); + '2050-01-01 18:00:00', + '2050-01-01 20:00:00', + current value for delivery_access_control_id_seq); update slaughters set delivery_id = 1 where id = 1; @@ -37,7 +37,7 @@ values ( -- delivery 2, public access control -insert into public_delivery_access_control (id) values (nextval('delivery_access_control_id_seq')); +insert into public_delivery_access_control (id) values (next value for delivery_access_control_id_seq); insert into deliveries ( id, @@ -48,9 +48,9 @@ insert into deliveries ( values ( 2, 1, - '20500108T1800', - '20500108T2000', - currval('delivery_access_control_id_seq')); + '2050-01-08 18:00:00', + '2050-01-08 20:00:00', + current value for delivery_access_control_id_seq); update slaughters set delivery_id = 2 where id = 2; @@ -63,9 +63,9 @@ values ( -- delivery 3, shared key access control -insert into shared_delivery_access_key (id, "key") values (nextval('delivery_access_key_id_seq'), 'ACCESS'); +insert into shared_delivery_access_key (id, key) values (next value for delivery_access_key_id_seq, 'ACCESS'); -insert into shared_key_delivery_access_control (id, shared_key_id) values (nextval('delivery_access_control_id_seq'), currval('delivery_access_key_id_seq')); +insert into shared_key_delivery_access_control (id, shared_key_id) values (next value for delivery_access_control_id_seq, current value for delivery_access_key_id_seq); insert into deliveries ( @@ -77,9 +77,9 @@ insert into deliveries ( values ( 3, 1, - '20500115T1800', - '20500115T2000', - currval('delivery_access_control_id_seq')); + '2050-01-15 18:00:00', + '2050-01-15 20:00:00', + current value for delivery_access_control_id_seq); update slaughters set delivery_id = 3 where id = 3; diff --git a/core/src/test/resources/sql/create/com/localeat/domains/farm/farm_test_data.sql b/core/src/test/resources/sql/create/com/localeat/domains/farm/farm_test_data.sql index 6b56cf6..f7f61f6 100644 --- a/core/src/test/resources/sql/create/com/localeat/domains/farm/farm_test_data.sql +++ b/core/src/test/resources/sql/create/com/localeat/domains/farm/farm_test_data.sql @@ -2,7 +2,7 @@ insert into farms ( id, name) values ( - 1, + next value for farm_id_seq, 'La ferme de la Riviere') ; @@ -10,6 +10,6 @@ insert into farms ( id, name) values ( - 2, + next value for farm_id_seq, 'Le GAEC des 3 freres') ; diff --git a/core/src/test/resources/sql/create/com/localeat/domains/order/order_test_data.sql b/core/src/test/resources/sql/create/com/localeat/domains/order/order_test_data.sql index 1d30333..e0063f6 100644 --- a/core/src/test/resources/sql/create/com/localeat/domains/order/order_test_data.sql +++ b/core/src/test/resources/sql/create/com/localeat/domains/order/order_test_data.sql @@ -4,7 +4,7 @@ insert into orders ( delivery_id, status) values ( - nextval('order_id_seq'), + next value for order_id_seq, 3, 1, 'BOOKED') @@ -17,8 +17,8 @@ insert into order_items ( quantity, unit_price) values ( - nextval('order_item_id_seq'), - currval('order_id_seq'), + next value for order_item_id_seq, + current value for order_id_seq, 1, 10, 13) @@ -30,7 +30,7 @@ insert into orders ( delivery_id, status) values ( - nextval('order_id_seq'), + next value for order_id_seq, 3, 2, 'PAYED') @@ -43,8 +43,8 @@ insert into order_items ( quantity, unit_price) values ( - nextval('order_item_id_seq'), - currval('order_id_seq'), + next value for order_item_id_seq, + current value for order_id_seq, 1, 5, 12) @@ -56,7 +56,7 @@ insert into orders ( delivery_id, status) values ( - nextval('order_id_seq'), + next value for order_id_seq, 4, 1, 'PAYED') @@ -69,8 +69,8 @@ insert into order_items ( quantity, unit_price) values ( - nextval('order_item_id_seq'), - currval('order_id_seq'), + next value for order_item_id_seq, + current value for order_id_seq, 1, 20, 12) diff --git a/core/src/test/resources/sql/create/com/localeat/domains/product/product_template_test_data.sql b/core/src/test/resources/sql/create/com/localeat/domains/product/product_template_test_data.sql index 1957810..86587f7 100644 --- a/core/src/test/resources/sql/create/com/localeat/domains/product/product_template_test_data.sql +++ b/core/src/test/resources/sql/create/com/localeat/domains/product/product_template_test_data.sql @@ -7,7 +7,7 @@ insert into product_templates ( farm_id, net_weight) values ( - 1, + next value for product_template_id_seq, 'colis ''tutti frutti''', 'un assortiment de steaks, de rotis, et de morceaux a bouillir', null, diff --git a/core/src/test/resources/sql/create/com/localeat/domains/product/product_test_data.sql b/core/src/test/resources/sql/create/com/localeat/domains/product/product_test_data.sql index 1e98c45..9b56e72 100644 --- a/core/src/test/resources/sql/create/com/localeat/domains/product/product_test_data.sql +++ b/core/src/test/resources/sql/create/com/localeat/domains/product/product_test_data.sql @@ -7,7 +7,7 @@ insert into products ( farm_id, net_weight) values ( - 1, + next value for product_id_seq, 'colis ''tutti frutti''', 'un assortiment de steaks, de rotis, et de morceaux a bouillir', null, diff --git a/core/src/test/resources/sql/create/com/localeat/domains/slaughter/slaughter_test_data.sql b/core/src/test/resources/sql/create/com/localeat/domains/slaughter/slaughter_test_data.sql index 2976160..b1e7d23 100644 --- a/core/src/test/resources/sql/create/com/localeat/domains/slaughter/slaughter_test_data.sql +++ b/core/src/test/resources/sql/create/com/localeat/domains/slaughter/slaughter_test_data.sql @@ -23,9 +23,9 @@ insert into slaughters ( values ( 1, 1, - '20200901', + '2020-09-01', null, - '20200921') + '2020-09-21') ; insert into animals ( @@ -53,9 +53,9 @@ insert into slaughters ( values ( 2, 2, - '20211201', + '2021-12-01', null, - '20211221') + '2021-12-21') ; insert into animals ( @@ -83,7 +83,7 @@ insert into slaughters ( values ( 3, 3, - '20220101', + '2022-01-01', null, - '20220121') + '2022-01-21') ; \ No newline at end of file diff --git a/core/src/test/resources/sql/delete/com/localeat/domains/clear_data.sql b/core/src/test/resources/sql/delete/com/localeat/domains/clear_data.sql index 2b24e34..ddd4f74 100644 --- a/core/src/test/resources/sql/delete/com/localeat/domains/clear_data.sql +++ b/core/src/test/resources/sql/delete/com/localeat/domains/clear_data.sql @@ -32,9 +32,12 @@ delete from customers ; -- product domain delete from products; delete from product_templates; +alter sequence product_id_seq restart with 1; +alter sequence product_template_id_seq restart with 1; -- farm domain delete from farms; +alter sequence farm_id_seq restart with 1; -- security domain delete from authorities; diff --git a/scripts/dev/generate-database-changelog.sh b/scripts/dev/generate-database-changelog.sh new file mode 100644 index 0000000..5d30106 --- /dev/null +++ b/scripts/dev/generate-database-changelog.sh @@ -0,0 +1,5 @@ +mvn -f ./core/pom.xml liquibase:generateChangeLog \ + -Dliquibase.url=jdbc:postgresql://vps695750.ovh.net:5434/localeat \ + -Dliquibase.username=localeat \ + -Dliquibase.password="Lim0u5in3&4*3veR" \ + -Dliquibase.outputChangeLogFile=changeLog.yaml \ No newline at end of file diff --git a/scripts/dev/run-sql-client-dev.sh b/scripts/dev/run-sql-client-dev.sh index f0c9e88..53993a1 100644 --- a/scripts/dev/run-sql-client-dev.sh +++ b/scripts/dev/run-sql-client-dev.sh @@ -1 +1,2 @@ -docker exec -ti database psql -U localeat \ No newline at end of file +docker exec -ti database psql -U localeat +