summaryrefslogtreecommitdiff
path: root/chromium/third_party/sqlite/sqlite-src-3240000/src/test_init.c
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/sqlite/sqlite-src-3240000/src/test_init.c')
-rw-r--r--chromium/third_party/sqlite/sqlite-src-3240000/src/test_init.c295
1 files changed, 0 insertions, 295 deletions
diff --git a/chromium/third_party/sqlite/sqlite-src-3240000/src/test_init.c b/chromium/third_party/sqlite/sqlite-src-3240000/src/test_init.c
deleted file mode 100644
index 58465785d82..00000000000
--- a/chromium/third_party/sqlite/sqlite-src-3240000/src/test_init.c
+++ /dev/null
@@ -1,295 +0,0 @@
-/*
-** 2009 August 17
-**
-** The author disclaims copyright to this source code. In place of
-** a legal notice, here is a blessing:
-**
-** May you do good and not evil.
-** May you find forgiveness for yourself and forgive others.
-** May you share freely, never taking more than you give.
-**
-*************************************************************************
-**
-** The code in this file is used for testing SQLite. It is not part of
-** the source code used in production systems.
-**
-** Specifically, this file tests the effect of errors while initializing
-** the various pluggable sub-systems from within sqlite3_initialize().
-** If an error occurs in sqlite3_initialize() the following should be
-** true:
-**
-** 1) An error code is returned to the user, and
-** 2) A subsequent call to sqlite3_shutdown() calls the shutdown method
-** of those subsystems that were initialized, and
-** 3) A subsequent call to sqlite3_initialize() attempts to initialize
-** the remaining, uninitialized, subsystems.
-*/
-
-#include "sqliteInt.h"
-#include <string.h>
-#if defined(INCLUDE_SQLITE_TCL_H)
-# include "sqlite_tcl.h"
-#else
-# include "tcl.h"
-#endif
-
-static struct Wrapped {
- sqlite3_pcache_methods2 pcache;
- sqlite3_mem_methods mem;
- sqlite3_mutex_methods mutex;
-
- int mem_init; /* True if mem subsystem is initalized */
- int mem_fail; /* True to fail mem subsystem inialization */
- int mutex_init; /* True if mutex subsystem is initalized */
- int mutex_fail; /* True to fail mutex subsystem inialization */
- int pcache_init; /* True if pcache subsystem is initalized */
- int pcache_fail; /* True to fail pcache subsystem inialization */
-} wrapped;
-
-static int wrMemInit(void *pAppData){
- int rc;
- if( wrapped.mem_fail ){
- rc = SQLITE_ERROR;
- }else{
- rc = wrapped.mem.xInit(wrapped.mem.pAppData);
- }
- if( rc==SQLITE_OK ){
- wrapped.mem_init = 1;
- }
- return rc;
-}
-static void wrMemShutdown(void *pAppData){
- wrapped.mem.xShutdown(wrapped.mem.pAppData);
- wrapped.mem_init = 0;
-}
-static void *wrMemMalloc(int n) {return wrapped.mem.xMalloc(n);}
-static void wrMemFree(void *p) {wrapped.mem.xFree(p);}
-static void *wrMemRealloc(void *p, int n) {return wrapped.mem.xRealloc(p, n);}
-static int wrMemSize(void *p) {return wrapped.mem.xSize(p);}
-static int wrMemRoundup(int n) {return wrapped.mem.xRoundup(n);}
-
-
-static int wrMutexInit(void){
- int rc;
- if( wrapped.mutex_fail ){
- rc = SQLITE_ERROR;
- }else{
- rc = wrapped.mutex.xMutexInit();
- }
- if( rc==SQLITE_OK ){
- wrapped.mutex_init = 1;
- }
- return rc;
-}
-static int wrMutexEnd(void){
- wrapped.mutex.xMutexEnd();
- wrapped.mutex_init = 0;
- return SQLITE_OK;
-}
-static sqlite3_mutex *wrMutexAlloc(int e){
- return wrapped.mutex.xMutexAlloc(e);
-}
-static void wrMutexFree(sqlite3_mutex *p){
- wrapped.mutex.xMutexFree(p);
-}
-static void wrMutexEnter(sqlite3_mutex *p){
- wrapped.mutex.xMutexEnter(p);
-}
-static int wrMutexTry(sqlite3_mutex *p){
- return wrapped.mutex.xMutexTry(p);
-}
-static void wrMutexLeave(sqlite3_mutex *p){
- wrapped.mutex.xMutexLeave(p);
-}
-static int wrMutexHeld(sqlite3_mutex *p){
- return wrapped.mutex.xMutexHeld(p);
-}
-static int wrMutexNotheld(sqlite3_mutex *p){
- return wrapped.mutex.xMutexNotheld(p);
-}
-
-
-
-static int wrPCacheInit(void *pArg){
- int rc;
- if( wrapped.pcache_fail ){
- rc = SQLITE_ERROR;
- }else{
- rc = wrapped.pcache.xInit(wrapped.pcache.pArg);
- }
- if( rc==SQLITE_OK ){
- wrapped.pcache_init = 1;
- }
- return rc;
-}
-static void wrPCacheShutdown(void *pArg){
- wrapped.pcache.xShutdown(wrapped.pcache.pArg);
- wrapped.pcache_init = 0;
-}
-
-static sqlite3_pcache *wrPCacheCreate(int a, int b, int c){
- return wrapped.pcache.xCreate(a, b, c);
-}
-static void wrPCacheCachesize(sqlite3_pcache *p, int n){
- wrapped.pcache.xCachesize(p, n);
-}
-static int wrPCachePagecount(sqlite3_pcache *p){
- return wrapped.pcache.xPagecount(p);
-}
-static sqlite3_pcache_page *wrPCacheFetch(sqlite3_pcache *p, unsigned a, int b){
- return wrapped.pcache.xFetch(p, a, b);
-}
-static void wrPCacheUnpin(sqlite3_pcache *p, sqlite3_pcache_page *a, int b){
- wrapped.pcache.xUnpin(p, a, b);
-}
-static void wrPCacheRekey(
- sqlite3_pcache *p,
- sqlite3_pcache_page *a,
- unsigned b,
- unsigned c
-){
- wrapped.pcache.xRekey(p, a, b, c);
-}
-static void wrPCacheTruncate(sqlite3_pcache *p, unsigned a){
- wrapped.pcache.xTruncate(p, a);
-}
-static void wrPCacheDestroy(sqlite3_pcache *p){
- wrapped.pcache.xDestroy(p);
-}
-
-static void installInitWrappers(void){
- sqlite3_mutex_methods mutexmethods = {
- wrMutexInit, wrMutexEnd, wrMutexAlloc,
- wrMutexFree, wrMutexEnter, wrMutexTry,
- wrMutexLeave, wrMutexHeld, wrMutexNotheld
- };
- sqlite3_pcache_methods2 pcachemethods = {
- 1, 0,
- wrPCacheInit, wrPCacheShutdown, wrPCacheCreate,
- wrPCacheCachesize, wrPCachePagecount, wrPCacheFetch,
- wrPCacheUnpin, wrPCacheRekey, wrPCacheTruncate,
- wrPCacheDestroy
- };
- sqlite3_mem_methods memmethods = {
- wrMemMalloc, wrMemFree, wrMemRealloc,
- wrMemSize, wrMemRoundup, wrMemInit,
- wrMemShutdown,
- 0
- };
-
- memset(&wrapped, 0, sizeof(wrapped));
-
- sqlite3_shutdown();
- sqlite3_config(SQLITE_CONFIG_GETMUTEX, &wrapped.mutex);
- sqlite3_config(SQLITE_CONFIG_GETMALLOC, &wrapped.mem);
- sqlite3_config(SQLITE_CONFIG_GETPCACHE2, &wrapped.pcache);
- sqlite3_config(SQLITE_CONFIG_MUTEX, &mutexmethods);
- sqlite3_config(SQLITE_CONFIG_MALLOC, &memmethods);
- sqlite3_config(SQLITE_CONFIG_PCACHE2, &pcachemethods);
-}
-
-static int SQLITE_TCLAPI init_wrapper_install(
- ClientData clientData, /* Unused */
- Tcl_Interp *interp, /* The TCL interpreter that invoked this command */
- int objc, /* Number of arguments */
- Tcl_Obj *CONST objv[] /* Command arguments */
-){
- int i;
- installInitWrappers();
- for(i=1; i<objc; i++){
- char *z = Tcl_GetString(objv[i]);
- if( strcmp(z, "mem")==0 ){
- wrapped.mem_fail = 1;
- }else if( strcmp(z, "mutex")==0 ){
- wrapped.mutex_fail = 1;
- }else if( strcmp(z, "pcache")==0 ){
- wrapped.pcache_fail = 1;
- }else{
- Tcl_AppendResult(interp, "Unknown argument: \"", z, "\"");
- return TCL_ERROR;
- }
- }
- return TCL_OK;
-}
-
-static int SQLITE_TCLAPI init_wrapper_uninstall(
- ClientData clientData, /* Unused */
- Tcl_Interp *interp, /* The TCL interpreter that invoked this command */
- int objc, /* Number of arguments */
- Tcl_Obj *CONST objv[] /* Command arguments */
-){
- if( objc!=1 ){
- Tcl_WrongNumArgs(interp, 1, objv, "");
- return TCL_ERROR;
- }
-
- sqlite3_shutdown();
- sqlite3_config(SQLITE_CONFIG_MUTEX, &wrapped.mutex);
- sqlite3_config(SQLITE_CONFIG_MALLOC, &wrapped.mem);
- sqlite3_config(SQLITE_CONFIG_PCACHE2, &wrapped.pcache);
- return TCL_OK;
-}
-
-static int SQLITE_TCLAPI init_wrapper_clear(
- ClientData clientData, /* Unused */
- Tcl_Interp *interp, /* The TCL interpreter that invoked this command */
- int objc, /* Number of arguments */
- Tcl_Obj *CONST objv[] /* Command arguments */
-){
- if( objc!=1 ){
- Tcl_WrongNumArgs(interp, 1, objv, "");
- return TCL_ERROR;
- }
-
- wrapped.mem_fail = 0;
- wrapped.mutex_fail = 0;
- wrapped.pcache_fail = 0;
- return TCL_OK;
-}
-
-static int SQLITE_TCLAPI init_wrapper_query(
- ClientData clientData, /* Unused */
- Tcl_Interp *interp, /* The TCL interpreter that invoked this command */
- int objc, /* Number of arguments */
- Tcl_Obj *CONST objv[] /* Command arguments */
-){
- Tcl_Obj *pRet;
-
- if( objc!=1 ){
- Tcl_WrongNumArgs(interp, 1, objv, "");
- return TCL_ERROR;
- }
-
- pRet = Tcl_NewObj();
- if( wrapped.mutex_init ){
- Tcl_ListObjAppendElement(interp, pRet, Tcl_NewStringObj("mutex", -1));
- }
- if( wrapped.mem_init ){
- Tcl_ListObjAppendElement(interp, pRet, Tcl_NewStringObj("mem", -1));
- }
- if( wrapped.pcache_init ){
- Tcl_ListObjAppendElement(interp, pRet, Tcl_NewStringObj("pcache", -1));
- }
-
- Tcl_SetObjResult(interp, pRet);
- return TCL_OK;
-}
-
-int Sqlitetest_init_Init(Tcl_Interp *interp){
- static struct {
- char *zName;
- Tcl_ObjCmdProc *xProc;
- } aObjCmd[] = {
- {"init_wrapper_install", init_wrapper_install},
- {"init_wrapper_query", init_wrapper_query },
- {"init_wrapper_uninstall", init_wrapper_uninstall},
- {"init_wrapper_clear", init_wrapper_clear}
- };
- int i;
-
- for(i=0; i<sizeof(aObjCmd)/sizeof(aObjCmd[0]); i++){
- Tcl_CreateObjCommand(interp, aObjCmd[i].zName, aObjCmd[i].xProc, 0, 0);
- }
-
- return TCL_OK;
-}