def test_rows_added(self): """ Test that metric data is correctly created.""" extra_info = domain.ExtraInfo(col1="", col2="") extra_info += "val1", {"href": "http://url", "text": "Description"}, \ "val3", {"href": "http://url3", "text": "Description3"} self.assertEqual([{"col1": "val1", "col2": {"href": "http://url", "text": "Description"}}, {"col1": "val3", "col2": {"href": "http://url3", "text": "Description3"}}], extra_info.data)
def test_extra_info(self): """ Test that correct extra info is returned.""" subversion = MagicMock() subversion.unmerged_branches.return_value = [ metric_source.Branch("some_branch", 22, datetime.datetime(2018, 1, 1)) ] subversion.branch_folder_for_branch.return_value = "http://some_branch" project = domain.Project( metric_sources={metric_source.VersionControlSystem: subversion}) subject = domain.Product(metric_source_ids={subversion: '_'}) expected_result = domain.ExtraInfo( link="Branch", comment="Aantal ongemergde revisies__detail-column-number", date_last_change="Datum laatste wijziging__detail-column-number") expected_result.data = \ [{"link": {"href": "http://some_branch", "text": "some_branch"}, "comment": 22, "date_last_change": "01-01-2018"}] obj = metric.UnmergedBranches(project=project, subject=subject) result = obj.extra_info() self.assertDictEqual(expected_result.headers, result.headers) self.assertEqual(expected_result.data, result.data) self.assertEqual('Niet gemergde branches', result.title)
def test_header_created(self): """ Test that header dictionary is correctly created.""" extra_info = domain.ExtraInfo(col1="Col 1 Header", col2="Col 2 Header") self.assertEqual({ "col1": "Col 1 Header", "col2": "Col 2 Header" }, extra_info.headers)
def test_serialization(self): """ Test that metric data is correctly json serialized.""" extra_info = domain.ExtraInfo(col1="C1", col2="C2") extra_info += "val1", {"href": "http://url", "text": "Description"} extra_info.title = "Title" result = json.dumps(extra_info.__dict__) self.assertEqual('{"headers": {"col1": "C1", "col2": "C2"}, "title": "Title", ' '"data": [{"col1": "val1", "col2": {"href": "http://url", "text": "Description"}}]}', result)
def test_row_of_single_elment_added(self): """ Test that metric data is correctly created.""" extra_info = domain.ExtraInfo(col2="") extra_info += {"href": "http://url", "text": "Description"} self.assertEqual([{ "col2": { "href": "http://url", "text": "Description" } }], extra_info.data)
def test_extra_info(self, mock_extra_info_rows): """ Test that extra_info, as a base class function, returns None. """ mock_extra_info_rows.return_value = [('VAL1', 'VAL2')] project = MagicMock() project.metric_sources.return_value = [MagicMock()] metric = domain.Metric(subject=MagicMock(), project=project) metric.extra_info_headers = {"col1": "Col 1", "col2": "Col 2"} result = metric.extra_info() self.assertEqual(domain.ExtraInfo(col1="Col 1", col2="Col 2").headers, result.headers) self.assertEqual([{"col1": "VAL1", "col2": "VAL2"}], result.data)
def test_extra_info(self): """ Test that correct extra info is returned.""" subversion = MagicMock() subversion.unmerged_branches.return_value = {"some_branch": 22} subversion.branch_folder_for_branch.return_value = "http://some_branch" project = domain.Project( metric_sources={metric_source.VersionControlSystem: subversion}) subject = domain.Product(metric_source_ids={subversion: '_'}) expected_result = domain.ExtraInfo( link="Branch", comment="Aantal__detail-column-number") expected_result.data = \ [{"link": {"href": "http://some_branch", "text": "some_branch"}, "comment": "22 ongemergde revisie(s)"}] obj = metric.UnmergedBranches(project=project, subject=subject) result = obj.extra_info() self.assertDictEqual(expected_result.headers, result.headers) self.assertEqual(expected_result.data, result.data) self.assertEqual('Niet gemergde branches', result.title)