github.com/drud/ddev@v1.21.5-alpha1.0.20230226034409-94fcc4b94453/containers/ddev-dbserver/test/basic_database.bats (about)

     1  #!/usr/bin/env bats
     2  
     3  # Run these tests from the repo root directory, for example
     4  # ./test/bats tests
     5  
     6  load functions.sh
     7  
     8  function setup {
     9    basic_setup
    10  
    11    echo "# Starting container using: docker run --rm -u "$MOUNTUID:$MOUNTGID" -v $VOLUME:/var/lib/mysql --name=$CONTAINER_NAME -p $HOSTPORT:3306 -d $IMAGE" >&3
    12    docker run -u "$MOUNTUID:$MOUNTGID" -v $VOLUME:/var/lib/mysql:nocopy --name=$CONTAINER_NAME -p $HOSTPORT:3306 -d $IMAGE
    13    containercheck
    14  }
    15  
    16  
    17  @test "test user root and db access for ${DB_TYPE} ${DB_VERSION}" {
    18    mysql --user=root --password=root --database=mysql --host=127.0.0.1 --port=$HOSTPORT -e "SELECT 1;"
    19    mysql -udb -pdb --database=db --host=127.0.0.1 --port=$HOSTPORT -e "SHOW TABLES;"
    20  }
    21  
    22  @test "make sure trigger capability works correctly on ${DB_TYPE} ${DB_VERSION}" {
    23      mysql -udb -pdb --database=db --host=127.0.0.1 --port=$HOSTPORT -e 'CREATE TABLE account (acct_num INT, amount DECIMAL(10,2)); CREATE TRIGGER ins_sum BEFORE INSERT ON account
    24             FOR EACH ROW SET @sum = @sum + NEW.amount;'
    25  }
    26  
    27  @test "check correct mysql/mariadb version for ${DB_TYPE} ${DB_VERSION}" {
    28      reported_version=$(mysql --user=root --password=root --skip-column-names --host=127.0.0.1 --port=$HOSTPORT -e "SHOW VARIABLES like \"version\";" | awk '{sub( /\.[0-9]+(-.*)?$/, "", $2); print $2 }')
    29      echo "# Reported mysql/mariadb version=$reported_version and DB_VERSION=${DB_VERSION}"
    30      [ "${reported_version}" = ${DB_VERSION} ]
    31  }
    32  
    33  @test "look for utf8mb4_general_ci configured on ${DB_TYPE} ${DB_VERSION}" {
    34      mysql --user=root --password=root --skip-column-names --host=127.0.0.1 --port=$HOSTPORT -e "SHOW GLOBAL VARIABLES like \"collation_server\";" | grep "utf8mb4_general_ci"
    35  }
    36