diff --git a/.github/workflows/pr-build.yml b/.github/workflows/pr-build.yml index 8d403c0c..6bbc533b 100644 --- a/.github/workflows/pr-build.yml +++ b/.github/workflows/pr-build.yml @@ -147,10 +147,10 @@ jobs: - name: Cleanup docker before running if: always() continue-on-error: true - run: docker-compose -f deploy/docker/docker-compose.yml down --volumes --remove-orphans + run: docker compose -f deploy/docker/docker-compose.yml down --volumes --remove-orphans - name: Run crAPI using built images - run: VERSION=${{ env.TAG_NAME }} docker-compose -f deploy/docker/docker-compose.yml --compatibility up -d + run: VERSION=${{ env.TAG_NAME }} docker compose -f deploy/docker/docker-compose.yml --compatibility up -d - name: Install Node uses: actions/setup-node@v3 @@ -169,7 +169,7 @@ jobs: - name: Cleanup docker if: always() - run: docker-compose -f deploy/docker/docker-compose.yml down --volumes --remove-orphans + run: docker compose -f deploy/docker/docker-compose.yml down --volumes --remove-orphans tests: @@ -196,7 +196,7 @@ jobs: go-version: '1.21' - name: Start the database - run: docker-compose -f services/docker-database.yml up -d + run: docker compose -f services/docker-database.yml up -d - name: Run identity tests run: | @@ -250,7 +250,7 @@ jobs: coverage xml -o coverage.xml - name: Publish Coverage for workshop - uses: orgoro/coverage@v3.1 + uses: orgoro/coverage@v3.2 with: coverageFile: services/workshop/coverage.xml token: ${{ secrets.GITHUB_TOKEN }} diff --git a/services/identity/src/main/java/com/crapi/utils/GenerateVIN.java b/services/identity/src/main/java/com/crapi/utils/GenerateVIN.java index b3c5a5b8..292c3906 100644 --- a/services/identity/src/main/java/com/crapi/utils/GenerateVIN.java +++ b/services/identity/src/main/java/com/crapi/utils/GenerateVIN.java @@ -18,7 +18,7 @@ public class GenerateVIN { - static String charsequence = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; + static String charsequence = "ABCDEFGHJKLMNPRSTUVWXYZ"; // I, O, Q are excluded static String num = "0123456789"; String vin = ""; String pincode = ""; @@ -38,10 +38,17 @@ public String generatePincode() { return pincode; } - /** @return rendom generate VIN for vehicle */ + /** @return randomly generated VIN */ public String generateVIN() { - vin += getNum(0) + getChar(3) + getNum(1) + getChar(3) + getNum(5); - return vin; + StringBuilder vin = new StringBuilder(); + for (int i = 0; i < 17; i++) { + if (random.nextBoolean()) { + vin.append(randomCharacter()); + } else { + vin.append(randomNumber()); + } + } + return vin.toString(); } public String getChar(int num) { diff --git a/services/web/src/constants/constants.js b/services/web/src/constants/constants.js index 81d5f8ce..3fdea018 100644 --- a/services/web/src/constants/constants.js +++ b/services/web/src/constants/constants.js @@ -23,4 +23,4 @@ export const PASSWORD_VALIDATION = /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[#$@!%&*?])[A-Za-z\d#$@!%&*?]{8,16}$/; export const NAME_VALIDATION = /^[a-zA-Z ]+$/; export const PIN_CODE_VALIDATION = /^[0-9]{4}$/; -export const VIN_VALIDATION = /^[0-9][A-Z]{4}[0-9]{2}[A-Z]{4}[0-9]{6}$/; +export const VIN_VALIDATION = /^[A-HJ-NPR-Z0-9]{17}$/;