def test_update_new_result_existing_dataset(self): new_result = metadata_eval_result( model_pretty_name="RoBERTa fine-tuned on ReactionGIF", task_pretty_name="Text Classification", task_id="text-classification", metrics_pretty_name="Recall", metrics_id="recall", metrics_value=0.7762102282047272, dataset_pretty_name="ReactionGIF", dataset_id="julien-c/reactiongif", ) metadata_update(f"{USER}/{self.REPO_NAME}", new_result, token=self._token, overwrite=False) expected_metadata = copy.deepcopy(self.existing_metadata) expected_metadata["model-index"][0]["results"][0]["metrics"].append( new_result["model-index"][0]["results"][0]["metrics"][0]) self.repo.git_pull() updated_metadata = metadata_load(self.repo_path / self.REPO_NAME / "README.md") self.assertDictEqual(updated_metadata, expected_metadata)
def test_metadata_load(self): filepath = Path(REPOCARD_DIR) / REPOCARD_NAME filepath.write_text(DUMMY_MODELCARD) data = metadata_load(filepath) self.assertDictEqual(data, { "license": "mit", "datasets": ["foo", "bar"] })
def test_update_dataset_name(self): new_datasets_data = {"datasets": "['test/test_dataset']"} metadata_update(f"{USER}/{self.REPO_NAME}", new_datasets_data, token=self._token) self.repo.git_pull() updated_metadata = metadata_load(self.repo_path / self.REPO_NAME / "README.md") expected_metadata = copy.deepcopy(self.existing_metadata) expected_metadata.update(new_datasets_data) self.assertDictEqual(updated_metadata, expected_metadata)
def test_update_existing_result_with_overwrite(self): new_metadata = copy.deepcopy(self.existing_metadata) new_metadata["model-index"][0]["results"][0]["metrics"][0][ "value"] = 0.2862102282047272 metadata_update(f"{USER}/{self.REPO_NAME}", new_metadata, token=self._token, overwrite=True) self.repo.git_pull() updated_metadata = metadata_load(self.repo_path / self.REPO_NAME / "README.md") self.assertDictEqual(updated_metadata, new_metadata)
def test_no_metadata_returns_none(self): filename = "dummy_target_3.md" filepath = Path(REPOCARD_DIR) / filename filepath.write_text(DUMMY_MODELCARD_TARGET_NO_TAGS) data = metadata_load(filepath) self.assertEqual(data, None)