Skip to content

Handle missing relationship methods, string relationship definition

Choose a tag to compare

@michaeldyrynda michaeldyrynda released this 04 May 21:05
· 68 commits to master since this release

Code changes

  • Update docblocks
  • Check that the cascade relationship method exists and that it returns the appropriate type
    • A LogicException is now thrown if the method does not exist, as well as if it does exist and does not implement Illuminate\Database\Eloquent\Relations\Relation
  • Move iterating over the cascadeDeletes property to a getter method, to ensure the trait functions even without the property defined
  • Switch collect to array_filter (minor speed improvement)

Tests

  • Add expected message regular expressions for expected exceptions
  • Ensure we can accept a string in the cascadeDeletes property
  • Ensure we handle relationship methods that don’t exist without triggering a fatal error
  • Extract attaching of comments to a private method