diff --git a/tool/flutter_ci_script_beta.sh b/tool/flutter_ci_script_beta.sh index 3f47091d7..ea497e278 100755 --- a/tool/flutter_ci_script_beta.sh +++ b/tool/flutter_ci_script_beta.sh @@ -2,6 +2,9 @@ set -e +DIR="${BASH_SOURCE%/*}" +source "$DIR/flutter_ci_script_shared.sh" + declare -ar PROJECT_NAMES=( "add_to_app/fullscreen/flutter_module" "add_to_app/prebuilt_module/flutter_module" @@ -30,31 +33,6 @@ declare -ar PROJECT_NAMES=( "experimental/web_dashboard" ) -for PROJECT_NAME in "${PROJECT_NAMES[@]}" -do - echo "== Testing '${PROJECT_NAME}' on Flutter's beta channel ==" - pushd "${PROJECT_NAME}" - - # Grab packages. - flutter pub get - - # Run the analyzer to find any static analysis issues. - flutter analyze - - # Reformat the web plugin registrant, if necessary. - if [ -f "lib/generated_plugin_registrant.dart" ] - then - echo "Renaming $(pwd)/lib/generated_plugin_registrant.dart" - flutter format "lib/generated_plugin_registrant.dart" - fi - - # Run the formatter on all the dart files to make sure everything's linted. - flutter format -n --set-exit-if-changed . - - # Run the actual tests. - flutter test - - popd -done +ci_projects "beta" "${PROJECT_NAMES[@]}" echo "-- Success --" diff --git a/tool/flutter_ci_script_dev.sh b/tool/flutter_ci_script_dev.sh index 670811705..8abda7d21 100755 --- a/tool/flutter_ci_script_dev.sh +++ b/tool/flutter_ci_script_dev.sh @@ -2,6 +2,9 @@ set -e +DIR="${BASH_SOURCE%/*}" +source "$DIR/flutter_ci_script_shared.sh" + declare -ar PROJECT_NAMES=( "add_to_app/fullscreen/flutter_module" "add_to_app/prebuilt_module/flutter_module" @@ -29,34 +32,6 @@ declare -ar PROJECT_NAMES=( "experimental/web_dashboard" ) -for PROJECT_NAME in "${PROJECT_NAMES[@]}" -do - echo "== Testing '${PROJECT_NAME}' on Flutter's dev channel ==" - pushd "${PROJECT_NAME}" - - # Grab packages. - flutter pub get - - # Run the analyzer to find any static analysis issues. - flutter analyze - - # Reformat the web plugin registrant, if necessary. - if [ -f "lib/generated_plugin_registrant.dart" ] - then - echo "Renaming $(pwd)/lib/generated_plugin_registrant.dart" - flutter format "lib/generated_plugin_registrant.dart" - fi - - # Run the formatter on all the dart files to make sure everything's linted. - flutter format -n --set-exit-if-changed . - - # Run the actual tests. - if [ -d "test"] - then - flutter test - fi - - popd -done +ci_projects "dev" "${PROJECT_NAMES[@]}" echo "-- Success --" diff --git a/tool/flutter_ci_script_shared.sh b/tool/flutter_ci_script_shared.sh new file mode 100644 index 000000000..0933e0f02 --- /dev/null +++ b/tool/flutter_ci_script_shared.sh @@ -0,0 +1,34 @@ +function ci_projects () { + local channel="$1" + shift + local arr=("$@") + for PROJECT_NAME in "${arr[@]}" + do + echo "== Testing '${PROJECT_NAME}' on Flutter's $channel channel ==" + pushd "${PROJECT_NAME}" + + # Grab packages. + flutter pub get + + # Run the analyzer to find any static analysis issues. + flutter analyze + + # Reformat the web plugin registrant, if necessary. + if [ -f "lib/generated_plugin_registrant.dart" ] + then + echo "Renaming $(pwd)/lib/generated_plugin_registrant.dart" + flutter format "lib/generated_plugin_registrant.dart" + fi + + # Run the formatter on all the dart files to make sure everything's linted. + flutter format -n --set-exit-if-changed . + + # Run the actual tests. + if [ -d "test"] + then + flutter test + fi + + popd + done +} \ No newline at end of file diff --git a/tool/flutter_ci_script_stable.sh b/tool/flutter_ci_script_stable.sh index 665e0a220..0c5f3fa7e 100755 --- a/tool/flutter_ci_script_stable.sh +++ b/tool/flutter_ci_script_stable.sh @@ -2,6 +2,9 @@ set -e +DIR="${BASH_SOURCE%/*}" +source "$DIR/flutter_ci_script_shared.sh" + declare -ar PROJECT_NAMES=( "add_to_app/fullscreen/flutter_module" "add_to_app/prebuilt_module/flutter_module" @@ -30,31 +33,6 @@ declare -ar PROJECT_NAMES=( "experimental/web_dashboard" ) -for PROJECT_NAME in "${PROJECT_NAMES[@]}" -do - echo "== Testing '${PROJECT_NAME}' on Flutter's stable channel ==" - pushd "${PROJECT_NAME}" - - # Grab packages. - flutter pub get - - # Run the analyzer to find any static analysis issues. - flutter analyze - - # Reformat the web plugin registrant, if necessary. - if [ -f "lib/generated_plugin_registrant.dart" ] - then - echo "Renaming $(pwd)/lib/generated_plugin_registrant.dart" - flutter format "lib/generated_plugin_registrant.dart" - fi - - # Run the formatter on all the dart files to make sure everything's linted. - flutter format -n --set-exit-if-changed . - - # Run the actual tests. - flutter test - - popd -done +ci_projects "stable" "${PROJECT_NAMES[@]}" echo "-- Success --"