22
33set +u
44
5- install_wordpress () {
6- if [ -f $WP_CORE_DIR /wp-config.php ]; then
7- echo " Wordpress already installed."
8- return ;
9- fi
10-
5+ composer_wordpress_config () {
116 # Set the wordpress install directory and plugin paths in the composer.json
127 composer config --unset extra.wordpress-install-dir;
138 composer config extra.wordpress-install-dir $WP_CORE_DIR ;
@@ -19,14 +14,30 @@ install_wordpress() {
1914 \" $THEMES_DIR /{\$ name}/\" : [\" type:wordpress-theme\" ]
2015}"
2116
17+ # Set WPackagist repository
18+ composer config repositories.wpackagist composer https://wpackagist.org
19+
20+ # Enable plugins
21+ composer config --no-plugins allow-plugins.composer/installers true
22+ composer config --no-plugins allow-plugins.johnpbloch/wordpress-core-installer true
23+ }
24+
25+ install_wordpress () {
26+ if [ -f $WP_CORE_DIR /wp-config.php ]; then
27+ echo " Wordpress already installed."
28+ return ;
29+ fi
30+
31+ composer_wordpress_config
32+
2233 # Install Wordpress + integrated plugins for testing/development.
2334 composer install
2435 composer require --dev -W \
2536 johnpbloch/wordpress:* \
2637 wp-graphql/wp-graphql-jwt-authentication \
2738 wpackagist-plugin/woocommerce \
2839 wpackagist-plugin/woocommerce-gateway-stripe \
29- wpackagist-plugin/wp-graphql: * \
40+ wpackagist-plugin/wp-graphql \
3041 wpackagist-theme/twentytwentyone \
3142 wp-cli/wp-cli-bundle
3243}
@@ -52,8 +63,11 @@ install_local_test_library() {
5263 # Install testing library dependencies.
5364 composer install
5465 composer require --dev \
55- lucatume/wp-browser \
56- codeception/module-asserts:^1.0 \
66+ lucatume/wp-browser:^3.1 \
67+ codeception/codeception:^4.2 \
68+ symfony/finder:* \
69+ codeception/lib-asserts:^1.0 \
70+ codeception/module-asserts:^1.3.1 \
5771 codeception/module-rest:^2.0 \
5872 codeception/util-universalframework:^1.0 \
5973 wp-graphql/wp-graphql-testcase:^2.3 \
@@ -82,12 +96,25 @@ remove_local_test_library() {
8296 # Remove testing library dependencies.
8397 composer remove --dev wp-graphql/wp-graphql-testcase \
8498 codeception/module-asserts \
99+ codeception/codeception \
100+ codeception/lib-asserts \
101+ symfony/finder \
85102 codeception/module-rest \
86103 codeception/util-universalframework \
87104 lucatume/wp-browser \
88105 stripe/stripe-php
89106}
90107
108+ cleanup_composer_file () {
109+ echo " Removing extra config..."
110+ composer config --unset extra
111+ echo " Removing repositories..."
112+ composer config --unset repositories
113+
114+ composer config --unset config.allow-plugins
115+ echo " composer.json cleaned!"
116+ }
117+
91118cleanup_local_files () {
92119 if [ -n " $( ls -A $WP_CORE_DIR ) " ]; then
93120 echo " Removing final test files..."
@@ -98,7 +125,7 @@ cleanup_local_files() {
98125 fi
99126
100127 echo " Rebuilding lock file..."
101- rm -rf $PROJECT_ROOT_DIR /vendor $PROJECT_ROOT_DIR /composer.lock
128+ rm -rf $PROJECT_ROOT_DIR /vendor
102129 composer install --no-dev
103130}
104131
0 commit comments