Search in sources :

Example 1 with Strain

use of org.jbei.ice.storage.model.Strain in project ice by JBEI.

the class TestEntryCreator method createTestStrain.

public static Strain createTestStrain(Account account) throws Exception {
    Strain strain = new Strain();
    strain.setName("sTrain");
    strain = (Strain) new EntryCreator().createEntry(account, strain, null);
    return strain;
}
Also used : EntryCreator(org.jbei.ice.lib.entry.EntryCreator) Strain(org.jbei.ice.storage.model.Strain)

Example 2 with Strain

use of org.jbei.ice.storage.model.Strain in project ice by JBEI.

the class TestEntryCreator method createTestAccountAndStrain.

public static Strain createTestAccountAndStrain(String userId) throws Exception {
    Account account = AccountCreator.createTestAccount(userId, false);
    Assert.assertNotNull(account);
    Strain strain = new Strain();
    strain.setName("sTrain");
    strain.setBioSafetyLevel(BioSafetyOption.LEVEL_ONE.ordinal());
    strain.setShortDescription("test strain");
    strain = (Strain) new EntryCreator().createEntry(account, strain, null);
    return strain;
}
Also used : Account(org.jbei.ice.storage.model.Account) EntryCreator(org.jbei.ice.lib.entry.EntryCreator) Strain(org.jbei.ice.storage.model.Strain)

Example 3 with Strain

use of org.jbei.ice.storage.model.Strain in project ice by JBEI.

the class TransferredPartsTest method createStrainObject.

private Strain createStrainObject(Account owner) {
    Strain strain = new Strain();
    strain.setName("sTrain");
    strain.setOwner(owner.getFullName());
    strain.setOwnerEmail(owner.getEmail());
    strain.setCreator(strain.getOwner());
    strain.setCreatorEmail(strain.getOwnerEmail());
    strain.setCreationTime(new Date());
    return strain;
}
Also used : Date(java.util.Date) Strain(org.jbei.ice.storage.model.Strain)

Example 4 with Strain

use of org.jbei.ice.storage.model.Strain in project ice by JBEI.

the class TransferredPartsTest method testReceiveTransferredEntry.

@Test
public void testReceiveTransferredEntry() throws Exception {
    Account account = AccountCreator.createTestAccount("testReceivedTransferredEntry", false);
    Strain strain = createStrainObject(account);
    Plasmid plasmid = createPlasmidObject(account);
    // link the two
    PartData strainData = strain.toDataTransferObject();
    PartData plasmidData = plasmid.toDataTransferObject();
    strainData.getLinkedParts().add(plasmidData);
    strainData = parts.receiveTransferredEntry(strainData);
    Assert.assertNotNull(strainData);
    strain = (Strain) DAOFactory.getEntryDAO().get(strainData.getId());
    Assert.assertNotNull(strain);
    Assert.assertTrue(strain.getVisibility() == Visibility.TRANSFERRED.getValue());
    plasmid = (Plasmid) DAOFactory.getEntryDAO().get(strainData.getLinkedParts().get(0).getId());
    Assert.assertNotNull(plasmid);
    Assert.assertTrue(plasmid.getVisibility() == Visibility.TRANSFERRED.getValue());
    Assert.assertTrue(strain.getLinkedEntries().contains(plasmid));
    // create new plasmid
    Plasmid plasmid2 = createPlasmidObject(account);
    strainData.getLinkedParts().add(plasmid2.toDataTransferObject());
    Assert.assertEquals(2, strainData.getLinkedParts().size());
    // transfer strain (with 2 linked plasmids)
    PartData received = parts.receiveTransferredEntry(strainData);
    Assert.assertNotNull(received);
    // check return
    strain = (Strain) DAOFactory.getEntryDAO().get(strainData.getId());
    Assert.assertNotNull(strain);
    plasmid = (Plasmid) DAOFactory.getEntryDAO().get(strainData.getLinkedParts().get(0).getId());
    Assert.assertNotNull(plasmid);
    Assert.assertTrue(strain.getLinkedEntries().contains(plasmid));
    plasmid2 = (Plasmid) DAOFactory.getEntryDAO().get(strainData.getLinkedParts().get(1).getId());
    Assert.assertNotNull(plasmid2);
    Assert.assertTrue(strain.getLinkedEntries().contains(plasmid2));
}
Also used : Plasmid(org.jbei.ice.storage.model.Plasmid) Account(org.jbei.ice.storage.model.Account) PartData(org.jbei.ice.lib.dto.entry.PartData) Strain(org.jbei.ice.storage.model.Strain) Test(org.junit.Test)

Example 5 with Strain

use of org.jbei.ice.storage.model.Strain in project ice by JBEI.

the class EntryLinksTest method testAddLink.

@Test
public void testAddLink() throws Exception {
    Account account = AccountCreator.createTestAccount("testAddLink", false);
    String userId = account.getEmail();
    Account differentAccount = AccountCreator.createTestAccount("testAddLink2", false);
    //create strain and plasmid
    Strain strain = TestEntryCreator.createTestStrain(account);
    Plasmid plasmid = TestEntryCreator.createTestPlasmid(differentAccount);
    // give each account read permissions
    AccessPermission accessPermission = new AccessPermission(AccessPermission.Article.ACCOUNT, account.getId(), AccessPermission.Type.READ_ENTRY, plasmid.getId(), "");
    PermissionsController permissionsController = new PermissionsController();
    Assert.assertNotNull(permissionsController.addPermission(differentAccount.getEmail(), accessPermission));
    accessPermission = new AccessPermission(AccessPermission.Article.ACCOUNT, differentAccount.getId(), AccessPermission.Type.READ_ENTRY, strain.getId(), "");
    Assert.assertNotNull(permissionsController.addPermission(account.getEmail(), accessPermission));
    // add plasmid links to strain
    EntryLinks entryLinks = new EntryLinks(userId, Long.toString(strain.getId()));
    // attempt to add as a parent (expected to fail)
    Assert.assertFalse(entryLinks.addLink(plasmid.toDataTransferObject(), LinkType.PARENT));
    // now add as a child
    Assert.assertTrue(entryLinks.addLink(plasmid.toDataTransferObject(), LinkType.CHILD));
    // add second plasmid
    Plasmid plasmid2 = TestEntryCreator.createTestPlasmid(account);
    Assert.assertTrue(entryLinks.addLink(plasmid2.toDataTransferObject(), LinkType.CHILD));
}
Also used : Plasmid(org.jbei.ice.storage.model.Plasmid) Account(org.jbei.ice.storage.model.Account) AccessPermission(org.jbei.ice.lib.dto.access.AccessPermission) Strain(org.jbei.ice.storage.model.Strain) PermissionsController(org.jbei.ice.lib.access.PermissionsController) Test(org.junit.Test)

Aggregations

Strain (org.jbei.ice.storage.model.Strain)23 Account (org.jbei.ice.storage.model.Account)20 Test (org.junit.Test)19 Plasmid (org.jbei.ice.storage.model.Plasmid)6 PartData (org.jbei.ice.lib.dto.entry.PartData)5 PartSample (org.jbei.ice.lib.dto.sample.PartSample)4 ArrayList (java.util.ArrayList)3 StorageLocation (org.jbei.ice.lib.dto.StorageLocation)3 EntryCreator (org.jbei.ice.lib.entry.EntryCreator)3 HashSet (java.util.HashSet)2 ByteArrayInputStream (java.io.ByteArrayInputStream)1 Date (java.util.Date)1 HashMap (java.util.HashMap)1 PermissionsController (org.jbei.ice.lib.access.PermissionsController)1 FeaturedDNASequence (org.jbei.ice.lib.dto.FeaturedDNASequence)1 AccessPermission (org.jbei.ice.lib.dto.access.AccessPermission)1 UserComment (org.jbei.ice.lib.dto.comment.UserComment)1 PageParameters (org.jbei.ice.lib.dto.common.PageParameters)1 SequenceInfo (org.jbei.ice.lib.dto.entry.SequenceInfo)1 FolderDetails (org.jbei.ice.lib.dto.folder.FolderDetails)1