@@ -29,6 +29,7 @@ run_s2i_enable_ssl_test
2929run_upgrade_test
3030run_migration_test
3131run_pgaudit_test
32+ run_locales_test
3233"
3334
3435test $# -eq 1 -a " ${1-} " == --list && echo " $TEST_LIST " && exit 0
@@ -863,6 +864,54 @@ EOSQL"
863864 grep -E ' AUDIT: SESSION,.*,.*,READ,SELECT,,,SELECT' " ${data_dir} " /userdata/log/postgresql-* .log
864865}
865866
867+ function run_locales_test() {
868+ local data_dir config_dir name=pg-test-locales-1
869+ # create a dir for data
870+ create_volume_dir
871+ data_dir=" ${volume_dir} "
872+
873+ DOCKER_ARGS=" -e POSTGRESQL_ADMIN_PASSWORD=Mellon
874+ -e POSTGRESQL_LOCALE=en_GB
875+ -e POSTGRESQL_ENCODING=ISO885915
876+ -v ${data_dir} :/var/lib/pgsql/data:Z" create_container $name
877+
878+ wait_ready " $name "
879+
880+ # LATIN9 is a alias for ISO885915
881+ docker exec -i $( get_cid " $name " ) bash -c " psql <<EOSQL
882+ SHOW SERVER_ENCODING;
883+ EOSQL" | grep LATIN9
884+
885+ docker exec -i $( get_cid " $name " ) bash -c " psql <<EOSQL
886+ SHOW LC_COLLATE;
887+ EOSQL" | grep -vi LC_COLLA | grep en_GB
888+
889+ docker stop " $( get_cid " $name " ) "
890+
891+ name=pg-test-locales-2
892+ # create a dir for data
893+ create_volume_dir
894+ data_dir=" ${volume_dir} "
895+
896+ DOCKER_ARGS=" -e POSTGRESQL_ADMIN_PASSWORD=Natoar23ae
897+ -e POSTGRESQL_LOCALE=C
898+ -e POSTGRESQL_ENCODING=UTF8
899+ -v ${data_dir} :/var/lib/pgsql/data:Z" create_container $name
900+
901+ wait_ready " $name "
902+
903+ docker exec -i $( get_cid " $name " ) bash -c " psql <<EOSQL
904+ SHOW SERVER_ENCODING;
905+ EOSQL" | grep UTF8
906+
907+ docker exec -i $( get_cid " $name " ) bash -c " psql <<EOSQL
908+ SHOW LC_COLLATE;
909+ EOSQL" | grep -vi LC_COLLA | grep C
910+
911+ docker stop " $( get_cid " $name " ) "
912+
913+ }
914+
866915# configuration defaults
867916POSTGRESQL_MAX_CONNECTIONS=100
868917POSTGRESQL_MAX_PREPARED_TRANSACTIONS=0
0 commit comments