def test_simple(): store = eventstore.EventStore() assert not store.data sig_add = mock.Mock(spec=lambda: 42) sig_refresh = mock.Mock(spec=lambda: 42) store.sig_add.connect(sig_add) store.sig_refresh.connect(sig_refresh) assert not sig_add.called assert not sig_refresh.called # test .log() store.log(log.LogEntry("test", "info")) assert store.data assert sig_add.called assert not sig_refresh.called # test .clear() sig_add.reset_mock() store.clear() assert not store.data assert not sig_add.called assert sig_refresh.called
def __init__(self, options, with_termlog=True): super().__init__(options) self.view = view.View() self.view.sig_view_add.connect(self._sig_view_add) self.view.sig_view_remove.connect(self._sig_view_remove) self.view.sig_view_update.connect(self._sig_view_update) self.view.sig_view_refresh.connect(self._sig_view_refresh) self.events = eventstore.EventStore() self.events.sig_add.connect(self._sig_events_add) self.events.sig_refresh.connect(self._sig_events_refresh) self.options.changed.connect(self._sig_options_update) self.options.changed.connect(self._sig_settings_update) self.addons.add(*addons.default_addons()) self.addons.add( webaddons.WebAddon(), intercept.Intercept(), readfile.ReadFile(), static_viewer.StaticViewer(), self.view, self.events, ) if with_termlog: self.addons.add(termlog.TermLog(), termstatus.TermStatus()) self.app = app.Application( self, self.options.web_debug )
def __init__(self, opts): super().__init__(opts) self.start_err: typing.Optional[log.LogEntry] = None self.view: view.View = view.View() self.events = eventstore.EventStore() self.events.sig_add.connect(self.sig_add_log) self.stream_path = None self.keymap = keymap.Keymap(self) defaultkeys.map(self.keymap) self.options.errored.connect(self.options_error) self.view_stack = [] self.addons.add(*addons.default_addons()) self.addons.add( intercept.Intercept(), self.view, self.events, readfile.ReadFile(), consoleaddons.ConsoleAddon(self), keymap.KeymapConfig(), ) def sigint_handler(*args, **kwargs): self.prompt_for_exit() signal.signal(signal.SIGINT, sigint_handler) self.window = None
def __init__(self, options, server, with_termlog=True): super().__init__(options, server) self.view = view.View() self.view.sig_view_add.connect(self._sig_view_add) self.view.sig_view_remove.connect(self._sig_view_remove) self.view.sig_view_update.connect(self._sig_view_update) self.view.sig_view_refresh.connect(self._sig_view_refresh) self.events = eventstore.EventStore() self.events.sig_add.connect(self._sig_events_add) self.events.sig_refresh.connect(self._sig_events_refresh) self.options.changed.connect(self._sig_options_update) self.addons.add(*addons.default_addons()) self.addons.add( intercept.Intercept(), self.view, self.events, ) if with_termlog: self.addons.add(termlog.TermLog(), termstatus.TermStatus()) self.app = app.Application(self, self.options.web_debug) # This line is just for type hinting self.options = self.options # type: Options
def __init__(self, options, server, with_termlog=True): super().__init__(options, server) self.view = view.View() self.view.sig_view_add.connect(self._sig_view_add) self.view.sig_view_remove.connect(self._sig_view_remove) self.view.sig_view_update.connect(self._sig_view_update) self.view.sig_view_refresh.connect(self._sig_view_refresh) self.events = eventstore.EventStore() self.events.sig_add.connect(self._sig_events_add) self.events.sig_refresh.connect(self._sig_events_refresh) self.options.changed.connect(self._sig_options_update) self.addons.add(*addons.default_addons()) self.addons.add( intercept.Intercept(), self.view, self.events, ) if with_termlog: self.addons.add(termlog.TermLog()) self.app = app.Application(self, self.options.wdebug) # This line is just for type hinting self.options = self.options # type: Options if options.rfile: try: self.load_flows_file(options.rfile) except exceptions.FlowReadException as v: self.add_log("Could not read flow file: %s" % v, "error")
def __init__(self, opts): super().__init__(opts) self.view: view.View = view.View() self.events = eventstore.EventStore() self.events.sig_add.connect(self.sig_add_log) self.stream_path = None self.keymap = keymap.Keymap(self) defaultkeys.map(self.keymap) self.options.errored.connect(self.options_error) self.view_stack = [] self.addons.add(*addons.default_addons()) self.addons.add( intercept.Intercept(), self.view, self.events, readfile.ReadFile(), consoleaddons.ConsoleAddon(self), keymap.KeymapConfig(), errorcheck.ErrorCheck(log_to_stderr=True), ) self.window = None
def test_max_size(): store = eventstore.EventStore(3) assert store.size == 3 store.add_log(log.LogEntry("foo", "info")) store.add_log(log.LogEntry("bar", "info")) store.add_log(log.LogEntry("baz", "info")) assert len(store.data) == 3 assert ["foo", "bar", "baz"] == [x.msg for x in store.data] # overflow store.add_log(log.LogEntry("boo", "info")) assert len(store.data) == 3 assert ["bar", "baz", "boo"] == [x.msg for x in store.data]