Esempio n. 1
0
    def test_task_received(self):
        state = EventsState()
        state.get_or_create_worker('worker1')
        state.get_or_create_worker('worker2')
        events = [
            Event('worker-online', hostname='worker1'),
            Event('worker-online', hostname='worker2'),
            Event('task-received',
                  uuid=uuid(),
                  name='task1',
                  args='(2, 2)',
                  kwargs="{'foo': 'bar'}",
                  retries=0,
                  eta=None,
                  hostname='worker1')
        ]
        for i, e in enumerate(events):
            e['clock'] = i
            e['local_received'] = time.time()
            state.event(e)

        self.app.events.state = state

        r = self.get('/dashboard')

        table = HtmlTableParser()
        table.parse(str(r.body))

        self.assertEqual(200, r.code)
        self.assertEqual(2, len(table.rows()))

        self.assertEqual(['worker1', 'True', '0', '1', '0', '0', '0', None],
                         table.get_row('worker1'))
        self.assertEqual(['worker2', 'True', '0', '0', '0', '0', '0', None],
                         table.get_row('worker2'))
Esempio n. 2
0
    def test_task_received(self):
        state = EventsState()
        state.get_or_create_worker("worker1")
        state.get_or_create_worker("worker2")
        events = [
            Event("worker-online", hostname="worker1"),
            Event("worker-online", hostname="worker2"),
            Event(
                "task-received",
                uuid=uuid(),
                name="task1",
                args="(2, 2)",
                kwargs="{'foo': 'bar'}",
                retries=0,
                eta=None,
                hostname="worker1",
            ),
        ]
        for i, e in enumerate(events):
            e["clock"] = i
            e["local_received"] = time.time()
            state.event(e)

        self.app.events.state = state

        r = self.get("/dashboard")

        table = HtmlTableParser()
        table.parse(str(r.body))

        self.assertEqual(200, r.code)
        self.assertEqual(2, len(table.rows()))

        self.assertEqual(["worker1", "True", "0", "1", "0", "0", "0", None], table.get_row("worker1"))
        self.assertEqual(["worker2", "True", "0", "0", "0", "0", "0", None], table.get_row("worker2"))
Esempio n. 3
0
    def test_tasks(self):
        state = EventsState()
        state.get_or_create_worker("worker1")
        state.get_or_create_worker("worker2")
        state.get_or_create_worker("worker3")
        events = [Event("worker-online", hostname="worker1"), Event("worker-online", hostname="worker2")]
        for i in range(100):
            events += task_succeeded_events(worker="worker1")
        for i in range(10):
            events += task_succeeded_events(worker="worker3")
        for i in range(13):
            events += task_failed_events(worker="worker3")
        for i, e in enumerate(events):
            e["clock"] = i
            e["local_received"] = time.time()
            state.event(e)

        self.app.events.state = state

        r = self.get("/dashboard")

        table = HtmlTableParser()
        table.parse(str(r.body))

        self.assertEqual(200, r.code)
        self.assertEqual(3, len(table.rows()))

        self.assertEqual(["worker1", "True", "0", "100", "0", "100", "0", None], table.get_row("worker1"))
        self.assertEqual(["worker2", "True", "0", "0", "0", "0", "0", None], table.get_row("worker2"))
        self.assertEqual(["worker3", "True", "0", "23", "13", "10", "0", None], table.get_row("worker3"))
Esempio n. 4
0
    def test_single_workers_online(self):
        state = EventsState()
        state.get_or_create_worker("worker1")
        state.event(Event("worker-online", hostname="worker1", local_received=time.time()))
        self.app.events.state = state

        r = self.get("/dashboard")

        table = HtmlTableParser()
        table.parse(str(r.body))

        self.assertEqual(200, r.code)
        self.assertEqual(1, len(table.rows()))
        self.assertTrue(table.get_row("worker1"))
        self.assertEqual(["worker1", "True", "0", "0", "0", "0", "0", None], table.get_row("worker1"))
        self.assertFalse(table.get_row("worker2"))
Esempio n. 5
0
    def test_single_workers_online(self):
        state = EventsState()
        state.get_or_create_worker('worker1')
        state.event(
            Event('worker-online',
                  hostname='worker1',
                  local_received=time.time()))
        self.app.events.state = state

        r = self.get('/dashboard')

        table = HtmlTableParser()
        table.parse(str(r.body))

        self.assertEqual(200, r.code)
        self.assertEqual(1, len(table.rows()))
        self.assertTrue(table.get_row('worker1'))
        self.assertEqual(['worker1', 'True', '0', '0', '0', '0', '0', None],
                         table.get_row('worker1'))
        self.assertFalse(table.get_row('worker2'))
Esempio n. 6
0
    def test_tasks(self):
        state = EventsState()
        state.get_or_create_worker('worker1')
        state.get_or_create_worker('worker2')
        state.get_or_create_worker('worker3')
        events = [
            Event('worker-online', hostname='worker1'),
            Event('worker-online', hostname='worker2')
        ]
        for i in range(100):
            events += task_succeeded_events(worker='worker1')
        for i in range(10):
            events += task_succeeded_events(worker='worker3')
        for i in range(13):
            events += task_failed_events(worker='worker3')
        for i, e in enumerate(events):
            e['clock'] = i
            e['local_received'] = time.time()
            state.event(e)

        self.app.events.state = state

        r = self.get('/dashboard')

        table = HtmlTableParser()
        table.parse(str(r.body))

        self.assertEqual(200, r.code)
        self.assertEqual(3, len(table.rows()))

        self.assertEqual(
            ['worker1', 'True', '0', '100', '0', '100', '0', None],
            table.get_row('worker1'))
        self.assertEqual(['worker2', 'True', '0', '0', '0', '0', '0', None],
                         table.get_row('worker2'))
        self.assertEqual(['worker3', 'True', '0', '23', '13', '10', '0', None],
                         table.get_row('worker3'))