Esempio n. 1
0
def test_get_db():
    db = get_db(filename=None, isolation_level="DEFERRED", journal_mode='OFF')
    assert isinstance(db, SQLiteDB)
    db.close()

    filename = NamedTemporaryFile().name
    db = get_db(filename=filename, isolation_level="DEFERRED", journal_mode='OFF')
    assert isinstance(db, SQLiteDB)
    assert os.path.exists(filename)
    mode = list(db.execute('pragma journal_mode'))[0]
    assert mode == {'journal_mode': 'off'}
    db.close()
Esempio n. 2
0
def test_get_tables():
    db = get_db(filename=None)
    assert list_tables(db) == []
    table_name = 'foo'
    create_lookup_table(db, table_name, key_type='TEXT', value_type='TEXT',
                        drop_first=False)
    tables = get_tables(db)
    assert tables == ['foo']
Esempio n. 3
0
def test_get_db_journal_modes():
    journal_modes = ['DELETE', 'TRUNCATE', 'PERSIST', 'MEMORY', 'WAL', 'OFF']
    for journal_mode in journal_modes:
        filename = NamedTemporaryFile().name
        db = get_db(filename=filename, isolation_level="DEFERRED", journal_mode=journal_mode)
        assert isinstance(db, SQLiteDB)
        assert os.path.exists(filename)
        mode = list(db.execute('pragma journal_mode'))[0]
        assert mode == {'journal_mode': journal_mode.lower()}
        db.close()
Esempio n. 4
0
def test_create_lookup_table():
    db = get_db(filename=None)
    assert list_tables(db) == []
    table_name = 'foo'
    create_lookup_table(db, table_name, key_type='TEXT', value_type='TEXT',
                        drop_first=False)
    assert list_tables(db) == [{'name': 'foo'}]

    drop_table(db, table_name)
    assert list_tables(db) == []

    db.close()
Esempio n. 5
0
    def __init__(self, db_file, isolation_level=None, journal_mode=None):
        if isolation_level is None:
            isolation_level = "DEFERRED"
        if journal_mode is None:
            journal_mode = "OFF"

        super().__init__()
        self.db_file = db_file
        self.db = get_db(filename=db_file,
                         isolation_level=isolation_level,
                         journal_mode=journal_mode)
        self.db_type = 'sqlite'

        logger.info('Tables: %s' % self.tables.__repr__())
Esempio n. 6
0
def test_db_is_open():
    db = get_db(filename=None, isolation_level="DEFERRED", journal_mode='OFF')
    assert isinstance(db, SQLiteDB)
    assert db_is_open(db)
    db.close()
    assert not db_is_open(db)