1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-11-08 03:22:21 +03:00

Add the testcase() macro. Additional CSE test coverage. (CVS 4951)

FossilOrigin-Name: 492490f9c86e52c7a706d9e1bf0ba216d5bb8aba
This commit is contained in:
drh
2008-04-01 15:06:33 +00:00
parent b3843a82ea
commit c5499bef4b
6 changed files with 185 additions and 31 deletions

View File

@@ -11,7 +11,7 @@
*************************************************************************
** Internal interface definitions for SQLite.
**
** @(#) $Id: sqliteInt.h,v 1.686 2008/04/01 05:07:15 drh Exp $
** @(#) $Id: sqliteInt.h,v 1.687 2008/04/01 15:06:34 drh Exp $
*/
#ifndef _SQLITEINT_H_
#define _SQLITEINT_H_
@@ -48,6 +48,20 @@
typedef int sqlite3_intptr_t;
#endif
/*
** A macro used to aid in coverage testing. When doing coverage
** testing, the condition inside the argument must be evaluated
** both true and false in order to get full branch coverage.
** This macro can be inserted to ensure adequate test coverage
** in places where simple condition/decision coverage is inadequate.
*/
#ifdef SQLITE_COVERAGE_TEST
void sqlite3Coverage(int);
# define testcase(X) if( X ){ sqlite3Coverage(__LINE__); }
#else
# define testcase(X)
#endif
/*
** The macro unlikely() is a hint that surrounds a boolean
@@ -1841,7 +1855,6 @@ void sqlite3WhereEnd(WhereInfo*);
int sqlite3ExprCodeGetColumn(Parse*, Table*, int, int, int, int);
void sqlite3ExprCodeMove(Parse*, int, int);
void sqlite3ExprClearColumnCache(Parse*, int);
void sqlite3ExprColumnCacheDisable(Parse*, int);
void sqlite3ExprCacheAffinityChange(Parse*, int, int);
int sqlite3ExprWritableRegister(Parse*,int,int);
int sqlite3ExprCode(Parse*, Expr*, int);