Opened 5 years ago

Closed 5 years ago

#2039 closed defect (fixed)

Item list with derived bioassays that sync from child rawbioassays doesn't traverse to grandparents

Reported by: Nicklas Nordborg Owned by: everyone
Priority: major Milestone: BASE 3.10
Component: core Version:
Keywords: Cc:

Description

To reproduce:

  • Create two derived bioassays having different subtype. The derived bioassays should have a parent/child relationship
  • Create a raw bioassay with the child derived bioassay as its parent.
  • Create an item list for derived bioassays with a subtype matching the topmost parent derived bioassay
  • Add a sync filter "Child item" of type "Raw bioassay" that matches filter must exists. Use a filter that matches the raw bioassay.
  • Save and then use "Resync". No derived bioassays are included in the item list. It was expected that the topmost parent derived bioassay should have been included in the list.
  • Create a copy of the item list but change the subtype to match the child derived bioassay. This time the "Resync" action will find and add the derived bioassay to the list.

Change History (1)

comment:1 Changed 5 years ago by Nicklas Nordborg

Resolution: fixed
Status: newclosed

(In [7219]) Fixes #2039: Item list with derived bioassays that sync from child rawbioassays doesn't traverse to grandparents

There was an extra "else" statement in the factory that builds the transformation chain that caused the DerivedBioAssayToParentDerivedBioAssayTransformer (which is responsible for walking up the chain of derived bioassays) to be not be included when starting at the raw bioassay level.

Also checked the other factories for similar mistakes but could not find any more.

Note: See TracTickets for help on using tickets.