Esempio n. 1
0
    def test_calculate_bounds(self):
        self.assertEqual((0, 1000, 1000),
                         params.bounds(1000,
                                       0,
                                       1,
                                       includes_action_and_meta_data=False))
        self.assertEqual((0, 1000, 2000),
                         params.bounds(1000,
                                       0,
                                       1,
                                       includes_action_and_meta_data=True))

        self.assertEqual((0, 500, 500),
                         params.bounds(1000,
                                       0,
                                       2,
                                       includes_action_and_meta_data=False))
        self.assertEqual((500, 500, 500),
                         params.bounds(1000,
                                       1,
                                       2,
                                       includes_action_and_meta_data=False))

        self.assertEqual((0, 200, 400),
                         params.bounds(800,
                                       0,
                                       4,
                                       includes_action_and_meta_data=True))
        self.assertEqual((400, 200, 400),
                         params.bounds(800,
                                       1,
                                       4,
                                       includes_action_and_meta_data=True))
        self.assertEqual((800, 200, 400),
                         params.bounds(800,
                                       2,
                                       4,
                                       includes_action_and_meta_data=True))
        self.assertEqual((1200, 200, 400),
                         params.bounds(800,
                                       3,
                                       4,
                                       includes_action_and_meta_data=True))

        self.assertEqual((0, 250, 250),
                         params.bounds(2000,
                                       0,
                                       8,
                                       includes_action_and_meta_data=False))
        self.assertEqual((250, 250, 250),
                         params.bounds(2000,
                                       1,
                                       8,
                                       includes_action_and_meta_data=False))
        self.assertEqual((500, 250, 250),
                         params.bounds(2000,
                                       2,
                                       8,
                                       includes_action_and_meta_data=False))
        self.assertEqual((750, 250, 250),
                         params.bounds(2000,
                                       3,
                                       8,
                                       includes_action_and_meta_data=False))
        self.assertEqual((1000, 250, 250),
                         params.bounds(2000,
                                       4,
                                       8,
                                       includes_action_and_meta_data=False))
        self.assertEqual((1250, 250, 250),
                         params.bounds(2000,
                                       5,
                                       8,
                                       includes_action_and_meta_data=False))
        self.assertEqual((1500, 250, 250),
                         params.bounds(2000,
                                       6,
                                       8,
                                       includes_action_and_meta_data=False))
        self.assertEqual((1750, 250, 250),
                         params.bounds(2000,
                                       7,
                                       8,
                                       includes_action_and_meta_data=False))
Esempio n. 2
0
    def test_calculate_bounds(self):
        self.assertEqual((0, 1000, 1000),
                         params.bounds(1000, 0, 1,
                                       params.ActionMetaData.Generate))
        self.assertEqual((0, 1000, 2000),
                         params.bounds(1000, 0, 1,
                                       params.ActionMetaData.SourceFile))

        self.assertEqual((0, 500, 500),
                         params.bounds(1000, 0, 2,
                                       params.ActionMetaData.Generate))
        self.assertEqual((500, 500, 500),
                         params.bounds(1000, 1, 2,
                                       params.ActionMetaData.Generate))

        self.assertEqual((0, 400, 400),
                         params.bounds(800, 0, 2,
                                       params.ActionMetaData.NoMetaData))
        self.assertEqual((400, 400, 400),
                         params.bounds(800, 1, 2,
                                       params.ActionMetaData.NoMetaData))

        self.assertEqual((0, 267, 267),
                         params.bounds(800, 0, 3,
                                       params.ActionMetaData.NoMetaData))
        self.assertEqual((267, 267, 267),
                         params.bounds(800, 1, 3,
                                       params.ActionMetaData.NoMetaData))
        self.assertEqual((534, 266, 266),
                         params.bounds(800, 2, 3,
                                       params.ActionMetaData.NoMetaData))

        self.assertEqual((0, 200, 400),
                         params.bounds(800, 0, 4,
                                       params.ActionMetaData.SourceFile))
        self.assertEqual((400, 200, 400),
                         params.bounds(800, 1, 4,
                                       params.ActionMetaData.SourceFile))
        self.assertEqual((800, 200, 400),
                         params.bounds(800, 2, 4,
                                       params.ActionMetaData.SourceFile))
        self.assertEqual((1200, 200, 400),
                         params.bounds(800, 3, 4,
                                       params.ActionMetaData.SourceFile))

        self.assertEqual((0, 250, 250),
                         params.bounds(2000, 0, 8,
                                       params.ActionMetaData.Generate))
        self.assertEqual((250, 250, 250),
                         params.bounds(2000, 1, 8,
                                       params.ActionMetaData.Generate))
        self.assertEqual((500, 250, 250),
                         params.bounds(2000, 2, 8,
                                       params.ActionMetaData.Generate))
        self.assertEqual((750, 250, 250),
                         params.bounds(2000, 3, 8,
                                       params.ActionMetaData.Generate))
        self.assertEqual((1000, 250, 250),
                         params.bounds(2000, 4, 8,
                                       params.ActionMetaData.Generate))
        self.assertEqual((1250, 250, 250),
                         params.bounds(2000, 5, 8,
                                       params.ActionMetaData.Generate))
        self.assertEqual((1500, 250, 250),
                         params.bounds(2000, 6, 8,
                                       params.ActionMetaData.Generate))
        self.assertEqual((1750, 250, 250),
                         params.bounds(2000, 7, 8,
                                       params.ActionMetaData.Generate))
Esempio n. 3
0
    def test_calculate_non_multiple_bounds(self):
        # in this test case, each client would need to read 1333.3333 lines. Instead we let most clients read 1333
        # lines and every third client, one line more (1334).
        self.assertEqual((0, 1333, 1333),
                         params.bounds(16000,
                                       0,
                                       12,
                                       includes_action_and_meta_data=False))
        self.assertEqual((1333, 1334, 1334),
                         params.bounds(16000,
                                       1,
                                       12,
                                       includes_action_and_meta_data=False))
        self.assertEqual((2667, 1333, 1333),
                         params.bounds(16000,
                                       2,
                                       12,
                                       includes_action_and_meta_data=False))
        self.assertEqual((4000, 1333, 1333),
                         params.bounds(16000,
                                       3,
                                       12,
                                       includes_action_and_meta_data=False))
        self.assertEqual((5333, 1334, 1334),
                         params.bounds(16000,
                                       4,
                                       12,
                                       includes_action_and_meta_data=False))
        self.assertEqual((6667, 1333, 1333),
                         params.bounds(16000,
                                       5,
                                       12,
                                       includes_action_and_meta_data=False))
        self.assertEqual((8000, 1333, 1333),
                         params.bounds(16000,
                                       6,
                                       12,
                                       includes_action_and_meta_data=False))
        self.assertEqual((9333, 1334, 1334),
                         params.bounds(16000,
                                       7,
                                       12,
                                       includes_action_and_meta_data=False))
        self.assertEqual((10667, 1333, 1333),
                         params.bounds(16000,
                                       8,
                                       12,
                                       includes_action_and_meta_data=False))
        self.assertEqual((12000, 1333, 1333),
                         params.bounds(16000,
                                       9,
                                       12,
                                       includes_action_and_meta_data=False))
        self.assertEqual((13333, 1334, 1334),
                         params.bounds(16000,
                                       10,
                                       12,
                                       includes_action_and_meta_data=False))
        self.assertEqual((14667, 1333, 1333),
                         params.bounds(16000,
                                       11,
                                       12,
                                       includes_action_and_meta_data=False))

        # With 3500 docs and 6 clients, every client needs to read 583.33 docs. We have two lines per doc, which makes it
        # 2 * 583.333 docs = 1166.6666 lines per client. We let them read 1166 and 1168 lines respectively (583 and 584 docs).
        self.assertEqual((0, 583, 1166),
                         params.bounds(3500,
                                       0,
                                       6,
                                       includes_action_and_meta_data=True))
        self.assertEqual((1166, 584, 1168),
                         params.bounds(3500,
                                       1,
                                       6,
                                       includes_action_and_meta_data=True))
        self.assertEqual((2334, 583, 1166),
                         params.bounds(3500,
                                       2,
                                       6,
                                       includes_action_and_meta_data=True))
        self.assertEqual((3500, 583, 1166),
                         params.bounds(3500,
                                       3,
                                       6,
                                       includes_action_and_meta_data=True))
        self.assertEqual((4666, 584, 1168),
                         params.bounds(3500,
                                       4,
                                       6,
                                       includes_action_and_meta_data=True))
        self.assertEqual((5834, 583, 1166),
                         params.bounds(3500,
                                       5,
                                       6,
                                       includes_action_and_meta_data=True))
Esempio n. 4
0
    def test_calculate_bounds(self):
        self.assertEqual((0, 1000, 1000), params.bounds(1000, 0, 1, includes_action_and_meta_data=False))
        self.assertEqual((0, 1000, 2000), params.bounds(1000, 0, 1, includes_action_and_meta_data=True))

        self.assertEqual((0, 500, 500), params.bounds(1000, 0, 2, includes_action_and_meta_data=False))
        self.assertEqual((500, 500, 500), params.bounds(1000, 1, 2, includes_action_and_meta_data=False))

        self.assertEqual((0, 200, 400), params.bounds(800, 0, 4, includes_action_and_meta_data=True))
        self.assertEqual((400, 200, 400), params.bounds(800, 1, 4, includes_action_and_meta_data=True))
        self.assertEqual((800, 200, 400), params.bounds(800, 2, 4, includes_action_and_meta_data=True))
        self.assertEqual((1200, 200, 400), params.bounds(800, 3, 4, includes_action_and_meta_data=True))

        self.assertEqual((0, 250, 250), params.bounds(2000, 0, 8, includes_action_and_meta_data=False))
        self.assertEqual((250, 250, 250), params.bounds(2000, 1, 8, includes_action_and_meta_data=False))
        self.assertEqual((500, 250, 250), params.bounds(2000, 2, 8, includes_action_and_meta_data=False))
        self.assertEqual((750, 250, 250), params.bounds(2000, 3, 8, includes_action_and_meta_data=False))
        self.assertEqual((1000, 250, 250), params.bounds(2000, 4, 8, includes_action_and_meta_data=False))
        self.assertEqual((1250, 250, 250), params.bounds(2000, 5, 8, includes_action_and_meta_data=False))
        self.assertEqual((1500, 250, 250), params.bounds(2000, 6, 8, includes_action_and_meta_data=False))
        self.assertEqual((1750, 250, 250), params.bounds(2000, 7, 8, includes_action_and_meta_data=False))
Esempio n. 5
0
    def test_calculate_bounds(self):
        self.assertEqual((0, 1000), params.bounds(1000, 0, 1))

        self.assertEqual((0, 500), params.bounds(1000, 0, 2))
        self.assertEqual((500, 500), params.bounds(1000, 1, 2))

        self.assertEqual((0, 400), params.bounds(800, 0, 2))
        self.assertEqual((400, 400), params.bounds(800, 1, 2))

        self.assertEqual((0, 267), params.bounds(800, 0, 3))
        self.assertEqual((267, 267), params.bounds(800, 1, 3))
        self.assertEqual((534, 266), params.bounds(800, 2, 3))

        self.assertEqual((0, 250), params.bounds(2000, 0, 8))
        self.assertEqual((250, 250), params.bounds(2000, 1, 8))
        self.assertEqual((500, 250), params.bounds(2000, 2, 8))
        self.assertEqual((750, 250), params.bounds(2000, 3, 8))
        self.assertEqual((1000, 250), params.bounds(2000, 4, 8))
        self.assertEqual((1250, 250), params.bounds(2000, 5, 8))
        self.assertEqual((1500, 250), params.bounds(2000, 6, 8))
        self.assertEqual((1750, 250), params.bounds(2000, 7, 8))
Esempio n. 6
0
    def test_calculate_bounds(self):
        self.assertEqual((0, 1000, 1000), params.bounds(1000, 0, 1, params.ActionMetaData.Generate))
        self.assertEqual((0, 1000, 2000), params.bounds(1000, 0, 1, params.ActionMetaData.SourceFile))

        self.assertEqual((0, 500, 500), params.bounds(1000, 0, 2, params.ActionMetaData.Generate))
        self.assertEqual((500, 500, 500), params.bounds(1000, 1, 2, params.ActionMetaData.Generate))

        self.assertEqual((0, 400, 400), params.bounds(800, 0, 2, params.ActionMetaData.NoMetaData))
        self.assertEqual((400, 400, 400), params.bounds(800, 1, 2, params.ActionMetaData.NoMetaData))

        self.assertEqual((0, 267, 267), params.bounds(800, 0, 3, params.ActionMetaData.NoMetaData))
        self.assertEqual((267, 267, 267), params.bounds(800, 1, 3, params.ActionMetaData.NoMetaData))
        self.assertEqual((534, 266, 266), params.bounds(800, 2, 3, params.ActionMetaData.NoMetaData))

        self.assertEqual((0, 200, 400), params.bounds(800, 0, 4, params.ActionMetaData.SourceFile))
        self.assertEqual((400, 200, 400), params.bounds(800, 1, 4, params.ActionMetaData.SourceFile))
        self.assertEqual((800, 200, 400), params.bounds(800, 2, 4, params.ActionMetaData.SourceFile))
        self.assertEqual((1200, 200, 400), params.bounds(800, 3, 4, params.ActionMetaData.SourceFile))

        self.assertEqual((0, 250, 250), params.bounds(2000, 0, 8, params.ActionMetaData.Generate))
        self.assertEqual((250, 250, 250), params.bounds(2000, 1, 8, params.ActionMetaData.Generate))
        self.assertEqual((500, 250, 250), params.bounds(2000, 2, 8, params.ActionMetaData.Generate))
        self.assertEqual((750, 250, 250), params.bounds(2000, 3, 8, params.ActionMetaData.Generate))
        self.assertEqual((1000, 250, 250), params.bounds(2000, 4, 8, params.ActionMetaData.Generate))
        self.assertEqual((1250, 250, 250), params.bounds(2000, 5, 8, params.ActionMetaData.Generate))
        self.assertEqual((1500, 250, 250), params.bounds(2000, 6, 8, params.ActionMetaData.Generate))
        self.assertEqual((1750, 250, 250), params.bounds(2000, 7, 8, params.ActionMetaData.Generate))