test\unit\test_aggregate_metric.py
-- -- --- --- --- --- --- --- ------- ------- ------- | from pathlib import Path
-- -- --- --- --- --- --- --- ------- ------- ------- |
-- -- --- --- --- --- --- --- ------- ------- ------- | import pytest
-- -- --- --- --- --- --- --- ------- ------- ------- |
-- -- --- --- --- --- --- --- ------- ------- ------- | from wily.commands.rank import aggregate_metric
-- -- --- --- --- --- --- --- ------- ------- ------- |
-- -- --- --- --- --- --- --- ------- ------- ------- |
-- 01 001 002 001 002 003 003 0004.75 0002.38 0000.50 | def test_aggregate_metric():
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | # given
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | data = [
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | (
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | Path("wily/config.py"),
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | "27a96be",
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | "an author",
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | "2019-01-15",
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | "82.41669266978485",
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | ),
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | (
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | Path("wily/cache.py"),
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | "27a96be",
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | "an author",
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | "2019-01-15",
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | "82.41669266978485",
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | ),
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | ]
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | expected = ["Total", "---", "---", "---", 164.8333853395697]
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 |
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | # when
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | actual = aggregate_metric(data)
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 |
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | # then
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | assert actual == expected
-- -- --- --- --- --- --- --- ------- ------- ------- |
-- -- --- --- --- --- --- --- ------- ------- ------- |
-- 01 001 002 001 002 003 003 0004.75 0002.38 0000.50 | def test_aggregate_metric_empty():
-- -- 001 002 001 002 003 003 0004.75 0002.38 0000.50 | # given
-- -- --- --- --- --- --- --- ------- ------- ------- | data = []
-- -- --- --- --- --- --- --- ------- ------- ------- | expected = ["Total", "---", "---", "---", 0]
-- -- --- --- --- --- --- --- ------- ------- ------- |
-- -- --- --- --- --- --- --- ------- ------- ------- | # when
-- -- --- --- --- --- --- --- ------- ------- ------- | actual = aggregate_metric(data)
-- -- --- --- --- --- --- --- ------- ------- ------- |
-- -- --- --- --- --- --- --- ------- ------- ------- | # then
-- -- --- --- --- --- --- --- ------- ------- ------- | assert actual == expected