예제 #1
0
def test_delete_from_storage():
    storage = Storage('/tmp/thebot.storage')
    storage.clear()

    storage['blah'] = 'minor'
    del storage['blah']

    eq_([], sorted(storage.keys()))
예제 #2
0
파일: tests.py 프로젝트: HounD/thebot
def test_delete_from_storage():
    storage = Storage('/tmp/thebot.storage')
    storage.clear()

    storage['blah'] = 'minor'
    del storage['blah']

    eq_([], sorted(storage.keys()))
예제 #3
0
파일: tests.py 프로젝트: HounD/thebot
def test_simple_storage():
    storage = Storage('/tmp/thebot.storage')
    storage.clear()

    eq_([], storage.keys())

    storage['blah'] = 'minor'
    storage['one'] = {'some': 'dict'}

    eq_(['blah', 'one'], sorted(storage.keys()))
    eq_('minor', storage['blah'])
예제 #4
0
def test_storage_restores_bot_attribute():
    bot = Bot(adapters=[TestAdapter], plugins=[TestPlugin])

    storage = Storage('/tmp/thebot.storage', global_objects=dict(bot=bot))
    storage.clear()

    original = Request('blah')
    original.bot = bot

    storage['request'] = original

    restored = storage['request']
    eq_(restored.bot, original.bot)
예제 #5
0
파일: tests.py 프로젝트: HounD/thebot
def test_storage_restores_bot_attribute():
    bot = Bot(adapters=[TestAdapter], plugins=[TestPlugin])

    storage = Storage('/tmp/thebot.storage', global_objects=dict(bot=bot))
    storage.clear()

    original = Request('blah')
    original.bot = bot

    storage['request'] = original

    restored = storage['request']
    eq_(restored.bot, original.bot)
예제 #6
0
def test_storage_nesting():
    with closing(Storage(STORAGE_FILENAME)) as storage:
        storage.clear()

        first = storage.with_prefix('first:')
        second = storage.with_prefix('second:')

        eq_([], storage.keys())

        first['blah'] = 'minor'
        second['one'] = {'some': 'dict'}

        eq_(['first:blah', 'second:one'], sorted(storage.keys()))
        eq_(['first:blah', 'second:one'], sorted(list(storage)))

        eq_(['blah'], first.keys())
        eq_(['blah'], list(first))

        eq_(['one'], second.keys())
        eq_(['one'], list(second))

        eq_('minor', first['blah'])
        assert_raises(KeyError, lambda: second['blah'])

        first.clear()
        eq_(['second:one'], sorted(storage.keys()))
        eq_(['second:one'], sorted(list(storage)))
예제 #7
0
def test_delete_from_storage():
    with closing(Storage(STORAGE_FILENAME)) as storage:
        storage.clear()

        storage['blah'] = 'minor'
        del storage['blah']

        eq_([], sorted(storage.keys()))
예제 #8
0
def test_simple_storage():
    with closing(Storage(STORAGE_FILENAME)) as storage:
        storage.clear()

        eq_([], storage.keys())

        storage['blah'] = 'minor'
        storage['one'] = {'some': 'dict'}

        eq_(['blah', 'one'], sorted(storage.keys()))
        eq_('minor', storage['blah'])
예제 #9
0
def test_storage_deep_nesting():
    with closing(Storage(STORAGE_FILENAME)) as storage:
        storage.clear()

        first = storage.with_prefix('first:')
        second = first.with_prefix('second:')

        second['blah'] = 'minor'

        eq_(['first:second:blah'], storage.keys())
        eq_(['second:blah'], first.keys())
        eq_(['blah'], second.keys())
예제 #10
0
def test_storage_is_iterable_as_dict():
    with closing(Storage(STORAGE_FILENAME)) as storage:
        storage.clear()

        storage['blah'] = 'minor'
        storage['another'] = 'option'

        eq_(['another', 'blah'], sorted(storage.keys()))
        eq_(['minor', 'option'], sorted(storage.values()))
        eq_([('another', 'option'), ('blah', 'minor')],
            sorted(storage.items()))

        eq_(['another', 'blah'], sorted(item for item in storage))
예제 #11
0
def test_storage_nesting():
    storage = Storage('/tmp/thebot.storage')
    storage.clear()

    first = storage.with_prefix('first:')
    second = storage.with_prefix('second:')

    eq_([], storage.keys())

    first['blah'] = 'minor'
    second['one'] = {'some': 'dict'}

    eq_(['first:blah', 'second:one'], sorted(storage.keys()))
    eq_(['first:blah'], sorted(first.keys()))
    eq_(['second:one'], sorted(second.keys()))

    eq_('minor', first['blah'])
    assert_raises(KeyError, lambda: second['blah'])

    first.clear()
    eq_(['second:one'], sorted(storage.keys()))
예제 #12
0
def test_simple_storage():
    storage = Storage('/tmp/thebot.storage')
    storage.clear()

    eq_([], storage.keys())

    storage['blah'] = 'minor'
    storage['one'] = {'some': 'dict'}

    eq_(['blah', 'one'], sorted(storage.keys()))
    eq_('minor', storage['blah'])
예제 #13
0
파일: tests.py 프로젝트: HounD/thebot
def test_storage_nesting():
    storage = Storage('/tmp/thebot.storage')
    storage.clear()

    first = storage.with_prefix('first:')
    second = storage.with_prefix('second:')

    eq_([], storage.keys())

    first['blah'] = 'minor'
    second['one'] = {'some': 'dict'}

    eq_(['first:blah', 'second:one'], sorted(storage.keys()))
    eq_(['first:blah'], sorted(first.keys()))
    eq_(['second:one'], sorted(second.keys()))

    eq_('minor', first['blah'])
    assert_raises(KeyError, lambda: second['blah'])

    first.clear()
    eq_(['second:one'], sorted(storage.keys()))
예제 #14
0
def test_storage_with_prefix_keeps_global_objects():
    storage = Storage('/tmp/thebot.storage', global_objects=dict(some='value'))
    prefixed = storage.with_prefix('nested:')

    eq_(storage.global_objects, prefixed.global_objects)
예제 #15
0
def test_storage_with_prefix_keeps_global_objects():
    with closing(Storage(STORAGE_FILENAME,
                         global_objects=dict(some='value'))) as storage:
        prefixed = storage.with_prefix('nested:')

        eq_(storage.global_objects, prefixed.global_objects)
예제 #16
0
파일: tests.py 프로젝트: HounD/thebot
def test_storage_with_prefix_keeps_global_objects():
    storage = Storage('/tmp/thebot.storage', global_objects=dict(some='value'))
    prefixed = storage.with_prefix('nested:')

    eq_(storage.global_objects, prefixed.global_objects)