diff --git a/ext/amalgalite/amalgalite3_constants.c b/ext/amalgalite/amalgalite3_constants.c index 60946f6..efa6612 100644 --- a/ext/amalgalite/amalgalite3_constants.c +++ b/ext/amalgalite/amalgalite3_constants.c @@ -16,14 +16,76 @@ void Init_amalgalite3_constants( ) * module encapsulating all the SQLite C extension constants */ VALUE mC = rb_define_module_under( mas, "Constants"); + /** + * module encapsulating the SQLite3 C extension constants for Config + */ + VALUE mC_Config = rb_define_module_under(mC, "Config"); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Config, "GETMALLOC", INT2FIX(SQLITE_CONFIG_GETMALLOC)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Config, "GETMUTEX", INT2FIX(SQLITE_CONFIG_GETMUTEX)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Config, "GETPCACHE", INT2FIX(SQLITE_CONFIG_GETPCACHE)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Config, "HEAP", INT2FIX(SQLITE_CONFIG_HEAP)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Config, "LOG", INT2FIX(SQLITE_CONFIG_LOG)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Config, "LOOKASIDE", INT2FIX(SQLITE_CONFIG_LOOKASIDE)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Config, "MALLOC", INT2FIX(SQLITE_CONFIG_MALLOC)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Config, "MEMSTATUS", INT2FIX(SQLITE_CONFIG_MEMSTATUS)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Config, "MULTITHREAD", INT2FIX(SQLITE_CONFIG_MULTITHREAD)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Config, "MUTEX", INT2FIX(SQLITE_CONFIG_MUTEX)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Config, "PAGECACHE", INT2FIX(SQLITE_CONFIG_PAGECACHE)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Config, "PCACHE", INT2FIX(SQLITE_CONFIG_PCACHE)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Config, "SCRATCH", INT2FIX(SQLITE_CONFIG_SCRATCH)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Config, "SERIALIZED", INT2FIX(SQLITE_CONFIG_SERIALIZED)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Config, "SINGLETHREAD", INT2FIX(SQLITE_CONFIG_SINGLETHREAD)); + /** * module encapsulating the SQLite3 C extension constants for DBStatus */ VALUE mC_DBStatus = rb_define_module_under(mC, "DBStatus"); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_DBStatus, "CACHE_USED", INT2FIX(SQLITE_DBSTATUS_CACHE_USED)); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ rb_define_const(mC_DBStatus, "LOOKASIDE_USED", INT2FIX(SQLITE_DBSTATUS_LOOKASIDE_USED)); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_DBStatus, "MAX", INT2FIX(SQLITE_DBSTATUS_MAX)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_DBStatus, "SCHEMA_USED", INT2FIX(SQLITE_DBSTATUS_SCHEMA_USED)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_DBStatus, "STMT_USED", INT2FIX(SQLITE_DBSTATUS_STMT_USED)); + /** * module encapsulating the SQLite3 C extension constants for DataType */ @@ -49,15 +111,60 @@ void Init_amalgalite3_constants( ) */ VALUE mC_Open = rb_define_module_under(mC, "Open"); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Open, "AUTOPROXY", INT2FIX(SQLITE_OPEN_AUTOPROXY)); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ rb_define_const(mC_Open, "CREATE", INT2FIX(SQLITE_OPEN_CREATE)); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Open, "DELETEONCLOSE", INT2FIX(SQLITE_OPEN_DELETEONCLOSE)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Open, "EXCLUSIVE", INT2FIX(SQLITE_OPEN_EXCLUSIVE)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Open, "FULLMUTEX", INT2FIX(SQLITE_OPEN_FULLMUTEX)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Open, "MAIN_DB", INT2FIX(SQLITE_OPEN_MAIN_DB)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Open, "MAIN_JOURNAL", INT2FIX(SQLITE_OPEN_MAIN_JOURNAL)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Open, "MASTER_JOURNAL", INT2FIX(SQLITE_OPEN_MASTER_JOURNAL)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Open, "NOMUTEX", INT2FIX(SQLITE_OPEN_NOMUTEX)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Open, "PRIVATECACHE", INT2FIX(SQLITE_OPEN_PRIVATECACHE)); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ rb_define_const(mC_Open, "READONLY", INT2FIX(SQLITE_OPEN_READONLY)); /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ rb_define_const(mC_Open, "READWRITE", INT2FIX(SQLITE_OPEN_READWRITE)); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Open, "SHAREDCACHE", INT2FIX(SQLITE_OPEN_SHAREDCACHE)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Open, "SUBJOURNAL", INT2FIX(SQLITE_OPEN_SUBJOURNAL)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Open, "TEMP_DB", INT2FIX(SQLITE_OPEN_TEMP_DB)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Open, "TEMP_JOURNAL", INT2FIX(SQLITE_OPEN_TEMP_JOURNAL)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Open, "TRANSIENT_DB", INT2FIX(SQLITE_OPEN_TRANSIENT_DB)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Open, "WAL", INT2FIX(SQLITE_OPEN_WAL)); + /** * module encapsulating the SQLite3 C extension constants for ResultCode */ @@ -72,9 +179,15 @@ void Init_amalgalite3_constants( ) /* 5 -- The database file is locked */ rb_define_const(mC_ResultCode, "BUSY", INT2FIX(SQLITE_BUSY)); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_ResultCode, "BUSY_RECOVERY", INT2FIX(SQLITE_BUSY_RECOVERY)); + /* 14 -- Unable to open the database file */ rb_define_const(mC_ResultCode, "CANTOPEN", INT2FIX(SQLITE_CANTOPEN)); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_ResultCode, "CANTOPEN_NOTEMPDIR", INT2FIX(SQLITE_CANTOPEN_NOTEMPDIR)); + /* 19 -- Abort due to constraint violation */ rb_define_const(mC_ResultCode, "CONSTRAINT", INT2FIX(SQLITE_CONSTRAINT)); @@ -105,12 +218,24 @@ void Init_amalgalite3_constants( ) /* 10 -- Some kind of disk I/O error occurred */ rb_define_const(mC_ResultCode, "IOERR", INT2FIX(SQLITE_IOERR)); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_ResultCode, "IOERR_ACCESS", INT2FIX(SQLITE_IOERR_ACCESS)); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ rb_define_const(mC_ResultCode, "IOERR_BLOCKED", INT2FIX(SQLITE_IOERR_BLOCKED)); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_ResultCode, "IOERR_CHECKRESERVEDLOCK", INT2FIX(SQLITE_IOERR_CHECKRESERVEDLOCK)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_ResultCode, "IOERR_CLOSE", INT2FIX(SQLITE_IOERR_CLOSE)); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ rb_define_const(mC_ResultCode, "IOERR_DELETE", INT2FIX(SQLITE_IOERR_DELETE)); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_ResultCode, "IOERR_DIR_CLOSE", INT2FIX(SQLITE_IOERR_DIR_CLOSE)); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ rb_define_const(mC_ResultCode, "IOERR_DIR_FSYNC", INT2FIX(SQLITE_IOERR_DIR_FSYNC)); @@ -120,6 +245,9 @@ void Init_amalgalite3_constants( ) /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ rb_define_const(mC_ResultCode, "IOERR_FSYNC", INT2FIX(SQLITE_IOERR_FSYNC)); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_ResultCode, "IOERR_LOCK", INT2FIX(SQLITE_IOERR_LOCK)); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ rb_define_const(mC_ResultCode, "IOERR_NOMEM", INT2FIX(SQLITE_IOERR_NOMEM)); @@ -129,6 +257,15 @@ void Init_amalgalite3_constants( ) /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ rb_define_const(mC_ResultCode, "IOERR_READ", INT2FIX(SQLITE_IOERR_READ)); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_ResultCode, "IOERR_SHMLOCK", INT2FIX(SQLITE_IOERR_SHMLOCK)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_ResultCode, "IOERR_SHMOPEN", INT2FIX(SQLITE_IOERR_SHMOPEN)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_ResultCode, "IOERR_SHMSIZE", INT2FIX(SQLITE_IOERR_SHMSIZE)); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ rb_define_const(mC_ResultCode, "IOERR_SHORT_READ", INT2FIX(SQLITE_IOERR_SHORT_READ)); @@ -144,6 +281,9 @@ void Init_amalgalite3_constants( ) /* 6 -- A table in the database is locked */ rb_define_const(mC_ResultCode, "LOCKED", INT2FIX(SQLITE_LOCKED)); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_ResultCode, "LOCKED_SHAREDCACHE", INT2FIX(SQLITE_LOCKED_SHAREDCACHE)); + /* 20 -- Data type mismatch */ rb_define_const(mC_ResultCode, "MISMATCH", INT2FIX(SQLITE_MISMATCH)); @@ -186,11 +326,28 @@ void Init_amalgalite3_constants( ) /* 18 -- String or BLOB exceeds size limit */ rb_define_const(mC_ResultCode, "TOOBIG", INT2FIX(SQLITE_TOOBIG)); + /** + * module encapsulating the SQLite3 C extension constants for StatementStatus + */ + VALUE mC_StatementStatus = rb_define_module_under(mC, "StatementStatus"); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_StatementStatus, "AUTOINDEX", INT2FIX(SQLITE_STMTSTATUS_AUTOINDEX)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_StatementStatus, "FULLSCAN_STEP", INT2FIX(SQLITE_STMTSTATUS_FULLSCAN_STEP)); + + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_StatementStatus, "SORT", INT2FIX(SQLITE_STMTSTATUS_SORT)); + /** * module encapsulating the SQLite3 C extension constants for Status */ VALUE mC_Status = rb_define_module_under(mC, "Status"); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ + rb_define_const(mC_Status, "MALLOC_COUNT", INT2FIX(SQLITE_STATUS_MALLOC_COUNT)); + /* no meaningful autogenerated documentation -- constant is self explanatory ?*/ rb_define_const(mC_Status, "MALLOC_SIZE", INT2FIX(SQLITE_STATUS_MALLOC_SIZE)); diff --git a/ext/amalgalite/gen_constants.rb b/ext/amalgalite/gen_constants.rb index 42c0eb6..cf372aa 100755 --- a/ext/amalgalite/gen_constants.rb +++ b/ext/amalgalite/gen_constants.rb @@ -32,18 +32,30 @@ "ROW" => "SQLITE_ROW", "DONE" => "SQLITE_DONE", - "IOERR_READ" => "SQLITE_IOERR_READ", - "IOERR_SHORT_READ" => "SQLITE_IOERR_SHORT_READ", - "IOERR_WRITE" => "SQLITE_IOERR_WRITE", - "IOERR_FSYNC" => "SQLITE_IOERR_FSYNC", - "IOERR_DIR_FSYNC" => "SQLITE_IOERR_DIR_FSYNC", - "IOERR_TRUNCATE" => "SQLITE_IOERR_TRUNCATE", - "IOERR_FSTAT" => "SQLITE_IOERR_FSTAT", - "IOERR_UNLOCK" => "SQLITE_IOERR_UNLOCK", - "IOERR_RDLOCK" => "SQLITE_IOERR_RDLOCK", - "IOERR_DELETE" => "SQLITE_IOERR_DELETE", - "IOERR_BLOCKED" => "SQLITE_IOERR_BLOCKED", - "IOERR_NOMEM" => "SQLITE_IOERR_NOMEM", + "IOERR_READ" => "SQLITE_IOERR_READ", + "IOERR_SHORT_READ" => "SQLITE_IOERR_SHORT_READ", + "IOERR_WRITE" => "SQLITE_IOERR_WRITE", + "IOERR_FSYNC" => "SQLITE_IOERR_FSYNC", + "IOERR_DIR_FSYNC" => "SQLITE_IOERR_DIR_FSYNC", + "IOERR_TRUNCATE" => "SQLITE_IOERR_TRUNCATE", + "IOERR_FSTAT" => "SQLITE_IOERR_FSTAT", + "IOERR_UNLOCK" => "SQLITE_IOERR_UNLOCK", + "IOERR_RDLOCK" => "SQLITE_IOERR_RDLOCK", + "IOERR_DELETE" => "SQLITE_IOERR_DELETE", + "IOERR_BLOCKED" => "SQLITE_IOERR_BLOCKED", + "IOERR_NOMEM" => "SQLITE_IOERR_NOMEM", + "IOERR_ACCESS" => "SQLITE_IOERR_ACCESS", + "IOERR_CHECKRESERVEDLOCK" => "SQLITE_IOERR_CHECKRESERVEDLOCK", + "IOERR_LOCK" => "SQLITE_IOERR_LOCK", + "IOERR_CLOSE" => "SQLITE_IOERR_CLOSE", + "IOERR_DIR_CLOSE" => "SQLITE_IOERR_DIR_CLOSE", + "IOERR_SHMOPEN" => "SQLITE_IOERR_SHMOPEN", + "IOERR_SHMSIZE" => "SQLITE_IOERR_SHMSIZE", + "IOERR_SHMLOCK" => "SQLITE_IOERR_SHMLOCK", + + "LOCKED_SHAREDCACHE" => "SQLITE_LOCKED_SHAREDCACHE", + "BUSY_RECOVERY" => "SQLITE_BUSY_RECOVERY", + "CANTOPEN_NOTEMPDIR" => "SQLITE_CANTOPEN_NOTEMPDIR", }, @@ -55,25 +67,72 @@ "TEXT" => "SQLITE_TEXT", }, + "Config" => { + "SINGLETHREAD" => "SQLITE_CONFIG_SINGLETHREAD", + "MULTITHREAD" => "SQLITE_CONFIG_MULTITHREAD", + "SERIALIZED" => "SQLITE_CONFIG_SERIALIZED", + "MALLOC" => "SQLITE_CONFIG_MALLOC", + "GETMALLOC" => "SQLITE_CONFIG_GETMALLOC", + "SCRATCH" => "SQLITE_CONFIG_SCRATCH", + "PAGECACHE" => "SQLITE_CONFIG_PAGECACHE", + "HEAP" => "SQLITE_CONFIG_HEAP", + "MEMSTATUS" => "SQLITE_CONFIG_MEMSTATUS", + "MUTEX" => "SQLITE_CONFIG_MUTEX", + "GETMUTEX" => "SQLITE_CONFIG_GETMUTEX", + "LOOKASIDE" => "SQLITE_CONFIG_LOOKASIDE", + "PCACHE" => "SQLITE_CONFIG_PCACHE", + "GETPCACHE" => "SQLITE_CONFIG_GETPCACHE", + "LOG" => "SQLITE_CONFIG_LOG", + }, + "Open" => { - "READONLY" => "SQLITE_OPEN_READONLY", - "READWRITE" => "SQLITE_OPEN_READWRITE", - "CREATE" => "SQLITE_OPEN_CREATE", + "READONLY" => "SQLITE_OPEN_READONLY", + "READWRITE" => "SQLITE_OPEN_READWRITE", + "CREATE" => "SQLITE_OPEN_CREATE", + "DELETEONCLOSE" => "SQLITE_OPEN_DELETEONCLOSE", + "EXCLUSIVE" => "SQLITE_OPEN_EXCLUSIVE", + "AUTOPROXY" => "SQLITE_OPEN_AUTOPROXY", + "MAIN_DB" => "SQLITE_OPEN_MAIN_DB", + "TEMP_DB" => "SQLITE_OPEN_TEMP_DB", + "TRANSIENT_DB" => "SQLITE_OPEN_TRANSIENT_DB", + "MAIN_JOURNAL" => "SQLITE_OPEN_MAIN_JOURNAL", + "TEMP_JOURNAL" => "SQLITE_OPEN_TEMP_JOURNAL", + "SUBJOURNAL" => "SQLITE_OPEN_SUBJOURNAL", + "MASTER_JOURNAL" => "SQLITE_OPEN_MASTER_JOURNAL", + "NOMUTEX" => "SQLITE_OPEN_NOMUTEX", + "FULLMUTEX" => "SQLITE_OPEN_FULLMUTEX", + "SHAREDCACHE" => "SQLITE_OPEN_SHAREDCACHE", + "PRIVATECACHE" => "SQLITE_OPEN_PRIVATECACHE", + "WAL" => "SQLITE_OPEN_WAL", }, "Status" => { - "MEMORY_USED" => "SQLITE_STATUS_MEMORY_USED", - "PAGECACHE_USED" => "SQLITE_STATUS_PAGECACHE_USED", - "PAGECACHE_OVERFLOW"=> "SQLITE_STATUS_PAGECACHE_OVERFLOW", - "SCRATCH_USED" => "SQLITE_STATUS_SCRATCH_USED", - "SCRATCH_OVERFLOW" => "SQLITE_STATUS_SCRATCH_OVERFLOW", - "MALLOC_SIZE" => "SQLITE_STATUS_MALLOC_SIZE", - "PARSER_STACK" => "SQLITE_STATUS_PARSER_STACK", - "PAGECACHE_SIZE" => "SQLITE_STATUS_PAGECACHE_SIZE", - "SCRATCH_SIZE" => "SQLITE_STATUS_SCRATCH_SIZE" + "MEMORY_USED" => "SQLITE_STATUS_MEMORY_USED", + "PAGECACHE_USED" => "SQLITE_STATUS_PAGECACHE_USED", + "PAGECACHE_OVERFLOW" => "SQLITE_STATUS_PAGECACHE_OVERFLOW", + "SCRATCH_USED" => "SQLITE_STATUS_SCRATCH_USED", + "SCRATCH_OVERFLOW" => "SQLITE_STATUS_SCRATCH_OVERFLOW", + "MALLOC_SIZE" => "SQLITE_STATUS_MALLOC_SIZE", + "PARSER_STACK" => "SQLITE_STATUS_PARSER_STACK", + "PAGECACHE_SIZE" => "SQLITE_STATUS_PAGECACHE_SIZE", + "SCRATCH_SIZE" => "SQLITE_STATUS_SCRATCH_SIZE", + "MALLOC_COUNT" => "SQLITE_STATUS_MALLOC_COUNT", }, - "DBStatus" => { "LOOKASIDE_USED" => "SQLITE_DBSTATUS_LOOKASIDE_USED" } + "DBStatus" => { + "LOOKASIDE_USED" => "SQLITE_DBSTATUS_LOOKASIDE_USED", + "CACHE_USED" => "SQLITE_DBSTATUS_CACHE_USED", + "SCHEMA_USED" => "SQLITE_DBSTATUS_SCHEMA_USED", + "STMT_USED" => "SQLITE_DBSTATUS_STMT_USED", + "MAX" => "SQLITE_DBSTATUS_MAX", + }, + + "StatementStatus" => { + "FULLSCAN_STEP" => "SQLITE_STMTSTATUS_FULLSCAN_STEP", + "SORT" => "SQLITE_STMTSTATUS_SORT", + "AUTOINDEX" => "SQLITE_STMTSTATUS_AUTOINDEX", + } + } fname = File.expand_path(File.join(File.dirname(__FILE__), "amalgalite3_constants.c")) diff --git a/lib/amalgalite/sqlite3/constants.rb b/lib/amalgalite/sqlite3/constants.rb index 7c970cb..8b0a0dc 100644 --- a/lib/amalgalite/sqlite3/constants.rb +++ b/lib/amalgalite/sqlite3/constants.rb @@ -41,16 +41,16 @@ def value_from_name( name ) # DataType defines the namespace for all possible SQLite data types. # module DataType + extend Helpers end - DataType.freeze ## # Open defines the namespace for all possible flags to the Database.open # method # module Open + extend Helpers end - Open.freeze ## # Status defines the namespace for all the possible status flags for @@ -60,7 +60,6 @@ module Status extend Helpers end - ## # DBStatus defines the namespace for all the possible status codes for the # Amalgalite::SQlite3::Database::Status objects. @@ -76,5 +75,21 @@ module DBStatus module ResultCode extend Helpers end # end ResultCode + + ## + # Config defines the namespace for all possible parameter for the + # sqlite config API. + # + module Config + extend Helpers + end + + ## + # StatementStatus defines the namespace for all the possible status codes + # for the SQLite prepared statements + # + module StatementStatus + extend Helpers + end end end diff --git a/spec/sqlite3/constants_spec.rb b/spec/sqlite3/constants_spec.rb index fea2692..8f3e517 100644 --- a/spec/sqlite3/constants_spec.rb +++ b/spec/sqlite3/constants_spec.rb @@ -7,13 +7,6 @@ it "has Open constants" do Amalgalite::SQLite3::Constants::Open::READONLY.should > 0 end - - it "has DataType constants" do - Amalgalite::SQLite3::Constants::DataType::BLOB.should > 0 - end - - it "has ResultCode constants" do - end describe 'ResultCode' do it "has constants" do @@ -31,6 +24,40 @@ end end + describe "DataType" do + it "has constants" do + Amalgalite::SQLite3::Constants::DataType::NULL.should == 5 + end + + it "can return the constant from a number" do + c = Amalgalite::SQLite3::Constants::DataType.name_from_value( 5 ) + c.should == "NULL" + end + + it "can return the number from a name" do + v = Amalgalite::SQLite3::Constants::DataType.value_from_name( "Null" ) + v.should == 5 + end + + end + + describe "Config" do + it "has constants" do + Amalgalite::SQLite3::Constants::Config::HEAP.should == 8 + end + + it "can return the constant from a number" do + c = Amalgalite::SQLite3::Constants::Config.name_from_value( 8 ) + c.should == "HEAP" + end + + it "can return the number from a name" do + v = Amalgalite::SQLite3::Constants::Config.value_from_name( "heap" ) + v.should == 8 + end + + end + describe 'Status' do it "has constants" do Amalgalite::SQLite3::Constants::Status::MEMORY_USED.should == 0 @@ -40,7 +67,7 @@ c = Amalgalite::SQLite3::Constants::Status.name_from_value( 3 ) c.should == "SCRATCH_USED" end - + it "can return the number from a name" do v = Amalgalite::SQLite3::Constants::Status.value_from_name( "memory_used" ) v.should == 0 @@ -56,10 +83,26 @@ c = Amalgalite::SQLite3::Constants::DBStatus.name_from_value( 0 ) c.should == "LOOKASIDE_USED" end - + it "can return the number from a name" do v = Amalgalite::SQLite3::Constants::DBStatus.value_from_name( "lookaside_used" ) v.should == 0 end end + + describe "StatementStatus" do + it "has constants" do + Amalgalite::SQLite3::Constants::StatementStatus::AUTOINDEX.should == 3 + end + + it "can return the constant from a number" do + c = Amalgalite::SQLite3::Constants::StatementStatus.name_from_value( 3 ) + c.should == "AUTOINDEX" + end + + it "can return the number from a name" do + v = Amalgalite::SQLite3::Constants::StatementStatus.value_from_name( "autoindex" ) + v.should == 3 + end + end end diff --git a/spec/sqlite3/database_status_spec.rb b/spec/sqlite3/database_status_spec.rb index b454267..386e45f 100644 --- a/spec/sqlite3/database_status_spec.rb +++ b/spec/sqlite3/database_status_spec.rb @@ -13,7 +13,7 @@ after(:each) do @db.close - FileUtils.rm_f "lookaside-test.db" + ::FileUtils.rm_f "lookaside-test.db" end