[Groonga-mysql-commit] mroonga/mroonga [master] test: support passing *.test directly!

Back to archive index

Kouhei Sutou null+****@clear*****
Sun Apr 14 23:33:22 JST 2013


Kouhei Sutou	2013-04-14 23:33:22 +0900 (Sun, 14 Apr 2013)

  New Revision: 18c3dbd4ee0076718a07fac4268ac40a19e90413
  https://github.com/mroonga/mroonga/commit/18c3dbd4ee0076718a07fac4268ac40a19e90413

  Message:
    test: support passing *.test directly!

  Modified files:
    test/run-sql-test.sh

  Modified: test/run-sql-test.sh (+33 -10)
===================================================================
--- test/run-sql-test.sh    2013-04-14 23:08:59 +0900 (bc2cb03)
+++ test/run-sql-test.sh    2013-04-14 23:33:22 +0900 (2600438)
@@ -144,23 +144,40 @@ if [ -n "${plugins_dir}" ]; then
 fi
 
 test_suite_names=""
+test_names=""
 while [ $# -gt 0 ]; do
     case "$1" in
 	--*)
 	    break
 	    ;;
 	*)
-	    if [ -d "$1" ]; then
-		test_suite_name=$(cd "$1" && pwd)
-	    else
-		test_suite_name="$1"
-	    fi
+	    case "$1" in
+		*/t/*.test)
+		    test_suite_name=$(echo "$1" | sed -e 's,/t/.*\.test,,g')
+		    test_suite_name=$(cd "$test_suite_name" && pwd)
+		    test_name=$(echo "$1" | sed -e 's,.*/t/\(.*\)\.test,\1,g')
+		    ;;
+		*)
+		    if [ -d "$1" ]; then
+			test_suite_name=$(cd "$1" && pwd)
+		    else
+			test_suite_name="$1"
+		    fi
+		    test_name=""
+		    ;;
+	    esac
 	    shift
 	    test_suite_name=$(echo "$test_suite_name" | sed -e "s,^${suite_dir},,")
 	    if [ -n "${test_suite_names}" ]; then
 		test_suite_names="${test_suite_names},"
 	    fi
 	    test_suite_names="${test_suite_names}${test_suite_name}"
+	    if [ -n "${test_name}" ]; then
+		if [ -n "${test_names}" ]; then
+		    test_names="${test_names},"
+		fi
+		test_names="${test_names}${test_name}"
+	    fi
 	    ;;
     esac
 done
@@ -169,11 +186,17 @@ if [ -z "$test_suite_names" ]; then
     test_suite_names="${all_test_suite_names}"
 fi
 
+mysql_test_run_args=""
+mysql_test_run_args="${mysql_test_run_args} --no-check-testcases"
+mysql_test_run_args="${mysql_test_run_args} --parallel=${n_processors}"
+mysql_test_run_args="${mysql_test_run_args} --retry=1"
+mysql_test_run_args="${mysql_test_run_args} --suite=${test_suite_names}"
+mysql_test_run_args="${mysql_test_run_args} --force"
+if [ -n "$test_names" ]; then
+    mysql_test_run_args="${mysql_test_run_args} --do-test=${test_names}"
+fi
+
 (cd "$build_mysql_test_dir" && \
     ./mysql-test-run.pl \
-    --no-check-testcases \
-    --parallel="${n_processors}" \
-    --retry=1 \
-    --suite="${test_suite_names}" \
-    --force \
+    ${mysql_test_run_args} \
     "$@")
-------------- next part --------------
HTML����������������������������...
Download 



More information about the Groonga-mysql-commit mailing list
Back to archive index