Skip to content

Commit

Permalink
Add RelatedItems
Browse files Browse the repository at this point in the history
  • Loading branch information
Reillyhewitson committed Mar 2, 2023
1 parent 768f9d9 commit 27701de
Showing 1 changed file with 47 additions and 0 deletions.
47 changes: 47 additions & 0 deletions util/icat_db_generator.py
Original file line number Diff line number Diff line change
Expand Up @@ -725,6 +725,53 @@ def generate_data_publication_user(self, i):
data_publication_user.create()


class RelatedItemGenerator(Generator):
tier = 4
amount = DataPublicationGenerator.amount * 2

def generate(self):
for i in range(1, self.amount):
RelatedItemGenerator.generate_related_item(self, i)

def generate_related_item(self, i):
related_item = self.client.new("relatedItem")
related_item.identifier = faker.isbn10(separator="-")
related_item.relationType = faker.random_element(
elements=(
"IsCitedBy",
"Cites",
"IsPublishedIn",
"IsReferencedBy",
"References",
"IsReviewedBy",
"Reviews",
"IsObseletedBy",
),
)
related_item.relatedItemType = faker.random_element(
elements=(
"Book",
"ComputationalNotebook",
"ConferencePaper",
"DataPaper",
"Dataset",
"Dissertation",
"Model",
"PeerReview",
"Preprint",
"Report",
"Text",
"Other",
),
)
related_item.title = faker.text()
related_item.fullReference = faker.text()
related_item.publication = self.client.get(
"DataPublication", i % (DataPublicationGenerator.amount - 1) + 1,
)
related_item.create()


class StudyInvestigationGenerator(Generator):
tier = 4
amount = InvestigationGenerator.amount
Expand Down

0 comments on commit 27701de

Please sign in to comment.