1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-08-07 02:42:48 +03:00

Minor SQLTester test tweaks and have 'make tester' include the out-of-tree tests if they are found.

FossilOrigin-Name: 6c8538d83495ce65dbd7417263b3b06dbbb2a649e9a61a743911944599d75ffc
This commit is contained in:
stephan
2023-08-11 18:59:57 +00:00
parent 7009c43eaf
commit 16c8c96745
5 changed files with 38 additions and 13 deletions

View File

@@ -235,17 +235,38 @@ test: $(SQLite3Jni.class) $(sqlite3-jni.dll)
tester.scripts := $(sort $(wildcard $(dir.src)/tests/*.test)) tester.scripts := $(sort $(wildcard $(dir.src)/tests/*.test))
tester.flags ?= # --verbose tester.flags ?= # --verbose
.PHONY: tester .PHONY: tester tester-local tester-ext
ifeq (1,$(enable.tester)) ifeq (1,$(enable.tester))
tester: $(CLASS_FILES.tester) $(sqlite3-jni.dll) tester-local: $(CLASS_FILES.tester) $(sqlite3-jni.dll)
$(bin.java) -ea -Djava.library.path=$(dir.bld.c) \ $(bin.java) -ea -Djava.library.path=$(dir.bld.c) \
$(java.flags) -cp $(classpath) \ $(java.flags) -cp $(classpath) \
org.sqlite.jni.tester.SQLTester $(tester.flags) $(tester.scripts) org.sqlite.jni.tester.SQLTester $(tester.flags) $(tester.scripts)
tester: tester-local
else else
tester: tester:
@echo "SQLTester support is disabled. Build with enable.tester=1 to enable it." @echo "SQLTester support is disabled. Build with enable.tester=1 to enable it."
endif endif
tester.extdir.default := src/tests/ext
tester.extdir ?= $(tester.extdir.default)
tester.extern-scripts := $(wildcard $(tester.extdir)/*.test)
ifneq (,$(tester.extern-scripts))
tester-ext:
$(bin.java) -ea -Djava.library.path=$(dir.bld.c) \
$(java.flags) -cp $(classpath) \
org.sqlite.jni.tester.SQLTester $(tester.flags) $(tester.extern-scripts)
else
tester-ext:
@echo "******************************************************"; \
echo "*** Include the out-of-tree test suite in the 'tester'"; \
echo "*** target by either symlinking its directory to"; \
echo "*** $(tester.extdir.default) or passing it to make"; \
echo "*** as tester.extdir=/path/to/that/dir."; \
echo "******************************************************";
endif
tester-ext: tester-local
tester: tester-ext
tests: test tester tests: test tester
package.jar.in := $(abspath $(dir.src)/jar.in) package.jar.in := $(abspath $(dir.src)/jar.in)
CLEAN_FILES += $(package.jar.in) CLEAN_FILES += $(package.jar.in)

View File

@@ -4341,11 +4341,14 @@ Java_org_sqlite_jni_SQLite3Jni_init(JENV_CSELF){
}; };
jfieldID fieldId; jfieldID fieldId;
const ConfigFlagEntry * pConfFlag; const ConfigFlagEntry * pConfFlag;
memset(&S3JniGlobal, 0, sizeof(S3JniGlobal)); memset(&S3JniGlobal, 0, sizeof(S3JniGlobal));
if( (*env)->GetJavaVM(env, &S3JniGlobal.jvm) ){ if( (*env)->GetJavaVM(env, &S3JniGlobal.jvm) ){
(*env)->FatalError(env, "GetJavaVM() failure shouldn't be possible."); (*env)->FatalError(env, "GetJavaVM() failure shouldn't be possible.");
return; return;
} }
#if 0
/* Just for sanity checking... */
(void)S3JniGlobal_env_cache(env); (void)S3JniGlobal_env_cache(env);
if( !S3JniGlobal.envCache.aHead ){ if( !S3JniGlobal.envCache.aHead ){
(*env)->FatalError(env, "Could not allocate JNIEnv-specific cache."); (*env)->FatalError(env, "Could not allocate JNIEnv-specific cache.");
@@ -4354,6 +4357,7 @@ Java_org_sqlite_jni_SQLite3Jni_init(JENV_CSELF){
assert( 1 == S3JniGlobal.metrics.envCacheMisses ); assert( 1 == S3JniGlobal.metrics.envCacheMisses );
assert( env == S3JniGlobal.envCache.aHead->env ); assert( env == S3JniGlobal.envCache.aHead->env );
assert( 0 != S3JniGlobal.envCache.aHead->g.cObj ); assert( 0 != S3JniGlobal.envCache.aHead->g.cObj );
#endif
for( pConfFlag = &aLimits[0]; pConfFlag->zName; ++pConfFlag ){ for( pConfFlag = &aLimits[0]; pConfFlag->zName; ++pConfFlag ){
char const * zSig = (JTYPE_BOOL == pConfFlag->jtype) ? "Z" : "I"; char const * zSig = (JTYPE_BOOL == pConfFlag->jtype) ? "Z" : "I";

View File

@@ -396,8 +396,8 @@ public class Tester1 {
affirm( "SELECT 1".equals(sqlite3_sql(stmt)) ); affirm( "SELECT 1".equals(sqlite3_sql(stmt)) );
sqlite3_finalize(stmt); sqlite3_finalize(stmt);
stmt = prepare(db, "SELECT ?"); stmt = prepare(db, "SELECT ?");
sqlite3_bind_text(stmt, 1, "hello"); sqlite3_bind_text(stmt, 1, "hell😃");
affirm( "SELECT 'hello'".equals(sqlite3_expanded_sql(stmt)) ); affirm( "SELECT 'hell😃'".equals(sqlite3_expanded_sql(stmt)) );
sqlite3_finalize(stmt); sqlite3_finalize(stmt);
} }

View File

@@ -1,5 +1,5 @@
C Bind\ssqlite3_sql()\sand\ssqlite3_expanded_sql()\sto\sJNI.\sStart\smarking\sC-side\sfunctions\swhich\swould\sneed\sexplicit\smutex\ssupport\sif\swe\sremove\s'synchronized'\sfrom\stheir\sJava\sentry\spoints\s(but\sthere\sare\smany\smore\sleft\sto\smark). C Minor\sSQLTester\stest\stweaks\sand\shave\s'make\stester'\sinclude\sthe\sout-of-tree\stests\sif\sthey\sare\sfound.
D 2023-08-11T18:04:53.620 D 2023-08-11T18:59:57.958
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@ -231,10 +231,10 @@ F ext/fts5/tool/showfts5.tcl d54da0e067306663e2d5d523965ca487698e722c
F ext/icu/README.txt 7ab7ced8ae78e3a645b57e78570ff589d4c672b71370f5aa9e1cd7024f400fc9 F ext/icu/README.txt 7ab7ced8ae78e3a645b57e78570ff589d4c672b71370f5aa9e1cd7024f400fc9
F ext/icu/icu.c c074519b46baa484bb5396c7e01e051034da8884bad1a1cb7f09bbe6be3f0282 F ext/icu/icu.c c074519b46baa484bb5396c7e01e051034da8884bad1a1cb7f09bbe6be3f0282
F ext/icu/sqliteicu.h fa373836ed5a1ee7478bdf8a1650689294e41d0c89c1daab26e9ae78a32075a8 F ext/icu/sqliteicu.h fa373836ed5a1ee7478bdf8a1650689294e41d0c89c1daab26e9ae78a32075a8
F ext/jni/GNUmakefile d228f18de85e7f2f80e05edce3cc4f32da3c45a308e4e921807ca88279010871 F ext/jni/GNUmakefile 329c441b44c9e91a33366f45eba0e9d0effc74161b9508c177b61f8d15486b19
F ext/jni/README.md 7a614a2fa6c561205f7a53fd8626cf93a7b5711ff454fc1814517f796df398eb F ext/jni/README.md 7a614a2fa6c561205f7a53fd8626cf93a7b5711ff454fc1814517f796df398eb
F ext/jni/jar-dist.make f90a553203a57934bf275bed86479485135a52f48ac5c1cfe6499ae07b0b35a4 F ext/jni/jar-dist.make f90a553203a57934bf275bed86479485135a52f48ac5c1cfe6499ae07b0b35a4
F ext/jni/src/c/sqlite3-jni.c 478c168346b6ee0b600433c8d1b1c59b357fdd7418a1dd18498ce9e73742d685 F ext/jni/src/c/sqlite3-jni.c 1b9fd402d507012b9c6f7f84f2a5998c77189048a893753790569b0329f76495
F ext/jni/src/c/sqlite3-jni.h 8f9e03016fea584627219eb4a14c6b1a6ba9fffbd7bc0df9e14220a6af8cfe18 F ext/jni/src/c/sqlite3-jni.h 8f9e03016fea584627219eb4a14c6b1a6ba9fffbd7bc0df9e14220a6af8cfe18
F ext/jni/src/org/sqlite/jni/Authorizer.java 1308988f7f40579ea0e4deeaec3c6be971630566bd021c31367fe3f5140db892 F ext/jni/src/org/sqlite/jni/Authorizer.java 1308988f7f40579ea0e4deeaec3c6be971630566bd021c31367fe3f5140db892
F ext/jni/src/org/sqlite/jni/AutoExtension.java 18e83f6f463e306df60b2dceb65247d32af1f78af4bbbae9155411a8c6cdb093 F ext/jni/src/org/sqlite/jni/AutoExtension.java 18e83f6f463e306df60b2dceb65247d32af1f78af4bbbae9155411a8c6cdb093
@@ -255,7 +255,7 @@ F ext/jni/src/org/sqlite/jni/ResultCode.java 7cdf993f2037ab7bd244c9a34dbaef2ace3
F ext/jni/src/org/sqlite/jni/RollbackHook.java b04c8abcc6ade44a8a57129e33765793f69df0ba909e49ba18d73f4268d92564 F ext/jni/src/org/sqlite/jni/RollbackHook.java b04c8abcc6ade44a8a57129e33765793f69df0ba909e49ba18d73f4268d92564
F ext/jni/src/org/sqlite/jni/SQLFunction.java 09ce81c1c637e31c3a830d4c859cce95d65f5e02ff45f8bd1985b3479381bc46 F ext/jni/src/org/sqlite/jni/SQLFunction.java 09ce81c1c637e31c3a830d4c859cce95d65f5e02ff45f8bd1985b3479381bc46
F ext/jni/src/org/sqlite/jni/SQLite3Jni.java 23dec2c267ef1882bb0bfc12a2c771e13e091885942344abbde90861f7b795fa F ext/jni/src/org/sqlite/jni/SQLite3Jni.java 23dec2c267ef1882bb0bfc12a2c771e13e091885942344abbde90861f7b795fa
F ext/jni/src/org/sqlite/jni/Tester1.java 7716949ae434308e698da505549e751478a03f40f2775d6b5486b754ded37a79 F ext/jni/src/org/sqlite/jni/Tester1.java 62ba3f547800d6e35263f9e6caca9d82f6a087e6d02e1983d7acf5aab81115b6
F ext/jni/src/org/sqlite/jni/TesterFts5.java cf2d687baafffdeba219b77cf611fd47a0556248820ea794ae3e8259bfbdc5ee F ext/jni/src/org/sqlite/jni/TesterFts5.java cf2d687baafffdeba219b77cf611fd47a0556248820ea794ae3e8259bfbdc5ee
F ext/jni/src/org/sqlite/jni/Tracer.java a5cece9f947b0af27669b8baec300b6dd7ff859c3e6a6e4a1bd8b50f9714775d F ext/jni/src/org/sqlite/jni/Tracer.java a5cece9f947b0af27669b8baec300b6dd7ff859c3e6a6e4a1bd8b50f9714775d
F ext/jni/src/org/sqlite/jni/UpdateHook.java e58645a1727f8a9bbe72dc072ec5b40d9f9362cb0aa24acfe93f49ff56a9016d F ext/jni/src/org/sqlite/jni/UpdateHook.java e58645a1727f8a9bbe72dc072ec5b40d9f9362cb0aa24acfe93f49ff56a9016d
@@ -2090,8 +2090,8 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
P afe190a940441de9bef8835c2dc6d278f861a772c3b7c7a2d399b2eabd4872e3 P c7fb32d1ef30d34449c3289c384ce33317c770927534af20d4b96fa385da40bc
R 2143ed5f6ccc929f2efe052657302ea3 R 5e9293a82d1730feb709386b92ddedeb
U stephan U stephan
Z 2327e5c9841d1baf8b0f3e308e996b38 Z d7446290cc2ea7450bd7ae0421832da3
# Remove this line to create a well-formed Fossil manifest. # Remove this line to create a well-formed Fossil manifest.

View File

@@ -1 +1 @@
c7fb32d1ef30d34449c3289c384ce33317c770927534af20d4b96fa385da40bc 6c8538d83495ce65dbd7417263b3b06dbbb2a649e9a61a743911944599d75ffc