Пример #1
0
def _get_ahringer_384_parent(child_stock):
    """
    Get the 384-format LibraryStock corresponding to a 96-format child stock.

    Assumes standard Ahringer naming conventions.

    If the parent doesn't exist, creates it, assuming same parent
    as the child.
    """
    child_plate_parts = child_stock.plate.id.split('-')
    parent_plate_name = child_plate_parts[0] + '-' + child_plate_parts[1]
    parent_plate = get_library_plate(parent_plate_name)

    child_well = child_stock.well
    parent_well = get_384_parent_well(child_plate_parts[2], child_well)

    parent_pk = generate_library_stock_name(parent_plate_name, parent_well)

    try:
        parent_stock = LibraryStock.objects.get(pk=parent_pk)

    except ObjectDoesNotExist:
        parent_stock = LibraryStock(
            id=parent_pk,
            plate=parent_plate,
            well=parent_well,
            parent_stock=None,
            intended_clone=child_stock.intended_clone,
        )

        parent_stock.save()

    return parent_stock
Пример #2
0
def _get_ahringer_384_parent(child_stock):
    """
    Get the 384-format LibraryStock corresponding to a 96-format child stock.

    Assumes standard Ahringer naming conventions.

    If the parent doesn't exist, creates it, assuming same parent
    as the child.
    """
    child_plate_parts = child_stock.plate.id.split('-')
    parent_plate_name = child_plate_parts[0] + '-' + child_plate_parts[1]
    parent_plate = get_library_plate(parent_plate_name)

    child_well = child_stock.well
    parent_well = get_384_parent_well(child_plate_parts[2], child_well)

    parent_pk = generate_library_stock_name(parent_plate_name, parent_well)

    try:
        parent_stock = LibraryStock.objects.get(pk=parent_pk)

    except ObjectDoesNotExist:
        parent_stock = LibraryStock(
            id=parent_pk,
            plate=parent_plate,
            well=parent_well,
            parent_stock=None,
            intended_clone=child_stock.intended_clone,
        )

        parent_stock.save()

    return parent_stock
Пример #3
0
 def test_lower_right_corner(self):
     self.assertEqual(get_384_parent_well('A1', 'H12'), 'O23')
     self.assertEqual(get_384_parent_well('A2', 'H12'), 'O24')
     self.assertEqual(get_384_parent_well('B1', 'H12'), 'P23')
     self.assertEqual(get_384_parent_well('B2', 'H12'), 'P24')
Пример #4
0
 def test_lower_left_corner(self):
     self.assertEqual(get_384_parent_well('A1', 'H01'), 'O01')
     self.assertEqual(get_384_parent_well('A2', 'H01'), 'O02')
     self.assertEqual(get_384_parent_well('B1', 'H01'), 'P01')
     self.assertEqual(get_384_parent_well('B2', 'H01'), 'P02')
Пример #5
0
 def test_upper_right_corner(self):
     self.assertEqual(get_384_parent_well('A1', 'A12'), 'A23')
     self.assertEqual(get_384_parent_well('A2', 'A12'), 'A24')
     self.assertEqual(get_384_parent_well('B1', 'A12'), 'B23')
     self.assertEqual(get_384_parent_well('B2', 'A12'), 'B24')
Пример #6
0
 def test_upper_left_corner(self):
     self.assertEqual(get_384_parent_well('A1', 'A01'), 'A01')
     self.assertEqual(get_384_parent_well('A2', 'A01'), 'A02')
     self.assertEqual(get_384_parent_well('B1', 'A01'), 'B01')
     self.assertEqual(get_384_parent_well('B2', 'A01'), 'B02')
Пример #7
0
 def test_lower_right_corner(self):
     self.assertEqual(get_384_parent_well('A1', 'H12'), 'O23')
     self.assertEqual(get_384_parent_well('A2', 'H12'), 'O24')
     self.assertEqual(get_384_parent_well('B1', 'H12'), 'P23')
     self.assertEqual(get_384_parent_well('B2', 'H12'), 'P24')
Пример #8
0
 def test_lower_left_corner(self):
     self.assertEqual(get_384_parent_well('A1', 'H01'), 'O01')
     self.assertEqual(get_384_parent_well('A2', 'H01'), 'O02')
     self.assertEqual(get_384_parent_well('B1', 'H01'), 'P01')
     self.assertEqual(get_384_parent_well('B2', 'H01'), 'P02')
Пример #9
0
 def test_upper_right_corner(self):
     self.assertEqual(get_384_parent_well('A1', 'A12'), 'A23')
     self.assertEqual(get_384_parent_well('A2', 'A12'), 'A24')
     self.assertEqual(get_384_parent_well('B1', 'A12'), 'B23')
     self.assertEqual(get_384_parent_well('B2', 'A12'), 'B24')
Пример #10
0
 def test_upper_left_corner(self):
     self.assertEqual(get_384_parent_well('A1', 'A01'), 'A01')
     self.assertEqual(get_384_parent_well('A2', 'A01'), 'A02')
     self.assertEqual(get_384_parent_well('B1', 'A01'), 'B01')
     self.assertEqual(get_384_parent_well('B2', 'A01'), 'B02')