Example #1
0
    def testReturnsLogsWhenJustOnePlugin(self):
        hunt_urn = self.RunHuntWithOutputPlugins([self.output_plugins[0]])
        result = self.handler.Handle(
            hunt_plugin.ApiListHuntOutputPluginLogsArgs(
                hunt_id=hunt_urn.Basename(),
                plugin_id=test_plugins.DummyHuntTestOutputPlugin.__name__ +
                "_0"),
            token=self.token)

        self.assertEqual(result.total_count, 5)
        self.assertEqual(len(result.items), 5)
        for item in result.items:
            self.assertEqual("foo",
                             item.plugin_descriptor.plugin_args.filename_regex)
Example #2
0
    def testReturnsLogsWhenMultiplePlugins(self):
        hunt_urn = self.RunHuntWithOutputPlugins(self.output_plugins)
        result = self.handler.Render(
            hunt_plugin.ApiListHuntOutputPluginLogsArgs(
                hunt_id=hunt_urn.Basename(),
                plugin_id=DummyHuntTestOutputPlugin.__name__ + "_1"),
            token=self.token)

        self.assertEqual(result["count"], 5)
        self.assertEqual(result["total_count"], 5)
        self.assertEqual(len(result["items"]), 5)
        for item in result["items"]:
            self.assertEqual(
                "bar", item["value"]["plugin_descriptor"]["value"]
                ["plugin_args"]["value"]["filename_regex"]["value"])
Example #3
0
    def Run(self):
        with test_lib.FakeTime(42, increment=1):
            hunt_urn = self.StartHunt(
                description="the hunt",
                output_plugins=[
                    output_plugin.OutputPluginDescriptor(
                        plugin_name=test_plugins.DummyHuntTestOutputPlugin.
                        __name__,
                        plugin_args=test_plugins.DummyHuntTestOutputPlugin.
                        args_type(filename_regex="blah!", fetch_binaries=True))
                ])

            self.client_ids = self.SetupClients(2)
            for index, client_id in enumerate(self.client_ids):
                self.AssignTasksToClients(client_ids=[client_id])
                self.RunHunt(failrate=-1)
                with test_lib.FakeTime(100042 + index * 100):
                    self.ProcessHuntOutputPlugins()

        self.Check("ListHuntOutputPluginLogs",
                   args=hunt_plugin.ApiListHuntOutputPluginLogsArgs(
                       hunt_id=hunt_urn.Basename(),
                       plugin_id="DummyHuntTestOutputPlugin_0"),
                   replace={hunt_urn.Basename(): "H:123456"})