def test_append(self): adapter = ListAdapter() with adapter: event = tevent() expect = event.json adapter.emit(expect) got = adapter.pop() assert expect == got
def test_errors_close_still_calls_on_adapters(self): t = ListAdapter() adapter = MultiAdapter(t, RaisingAdapter(AdapterClosedError)) t.open() assert adapter.closed is True assert t.closed is False with pytest.raises(AdapterClosedError): adapter.open() assert adapter.closed is True assert t.closed is True
def test_str(self): adapter = ListAdapter() with adapter: event_json = tevent().json adapter.emit(event_json) adapter_str = str(adapter) assert event_json in adapter got = adapter.pop() assert event_json == got expect_lines = event_json.split('\n') for expect_line in expect_lines: assert expect_line in adapter_str
def test_one_closed(self): adapter = MultiAdapter(*[ListAdapter() for adapter in range(10)]) assert adapter.closed is True adapter.open() assert adapter.closed is False adapter.adapters[5].close() assert adapter.closed is True
def temitter(**kwargs): if not ('adapter' in kwargs): kwargs['adapter'] = ListAdapter() if not ('transport' in kwargs): if not ('worker_class' in kwargs): kwargs['worker_class'] = Worker kwargs['transport'] = Transport( kwargs['adapter'], worker_class=kwargs['worker_class']) del kwargs['adapter'] del kwargs['worker_class'] if not ('event_stack' in kwargs): kwargs['event_stack'] = tevent_stack() return Emitter(**kwargs)
def test_close_has_error(self): t = ListAdapter() tr = RaisingAdapter(AdapterClosedError, raising=False) adapter = MultiAdapter(t, tr) with adapter: assert adapter.closed is False assert tr.closed is False assert t.closed is False tr.raising = True assert adapter.closed is True assert tr.closed is True assert t.closed is True
def test_record(self): adapter = ListAdapter() with adapter: expect = tjson() adapter._emit(expect) assert expect == adapter[0] assert adapter[0].flushed is False adapter.flush() assert adapter[0].flushed is True
def test_cmp(self): adapter = ListAdapter() with adapter: expected = [tjson(), tjson(), tjson()] for index, expect in enumerate(expected): adapter._emit(expect) assert expect == adapter[index] assert adapter[index].flushed is False adapter.flush() assert adapter[index].flushed is True assert adapter == expected
def test_multi(self): for i in range(1, 10): adapters = [ListAdapter() for adapter in range(i)] adapter = MultiAdapter(*adapters) expect = tevent().json assert all(chk_adapter.closed is True for chk_adapter in adapters) assert adapter.closed is True with adapter: assert all(chk_adapter.closed is False for chk_adapter in adapters) assert adapter.closed is False adapter.emit(expect) for chk_adapter in adapters: got = chk_adapter.pop() assert expect == got assert all(chk_adapter.closed is True for chk_adapter in adapters) assert adapter.closed is True for chk_adapter in adapters: assert len(chk_adapter) == 0
def adapter_factory(): return MultiAdapter(ListAdapter())
def test_open(self): adapter = ListAdapter() assert adapter.closed is True with adapter: assert adapter.closed is False assert adapter.closed is True