SFDO-Community / declarative-lookup-rollup-summaries

Declarative Lookup Rollup Summaries (DLRS) is a community built and maintained Salesforce application that allows you to create cross object roll-ups declaratively - no code! For install instructions and documentation, visit our website https://sfdo-community-sprints.github.io/DLRS-Documentation/
https://sfdo-community-sprints.github.io/DLRS-Documentation/
BSD 3-Clause "New" or "Revised" License
696 stars 238 forks source link

In the upcoming Winter 25 release, the DLRS test dlrs.RollupSummariesTest.testBadCriteria() will fail due to an error message change #1489

Closed anand13s closed 2 months ago

anand13s commented 3 months ago

Describe the bug In the upcoming release, the DLRS test dlrs.RollupSummariesTest.testBadCriteria() will fail due to an error message change

To Reproduce Steps to reproduce the behavior: Run apex test dlrs.RollupSummariesTest.testBadCriteria() against an org which has been upgraded to Winter 25

The test will fail System.AssertException: Assertion Failed: Expected: Relationship Criteria 'StageName Equals Won' is not valid, see SOQL documentation http://www.salesforce.com/us/developer/docs/soql_sosl/Content/sforce_api_calls_soql_select_conditionexpression.htm, error is 'unexpected token: 'Equals'', Actual: Relationship Criteria 'StageName Equals Won' is not valid, see SOQL documentation http://www.salesforce.com/us/developer/docs/soql_sosl/Content/sforce_api_calls_soql_select_conditionexpression.htm, error is 'unexpected token: 'StageName Equals'' Call Stack: Class.dlrs.RollupSummariesTest.testBadCriteria: line 60, column 1

This fails due to an error message change Before Relationship Criteria 'StageName Equals Won' is not valid

After 'unexpected token: 'StageName Equals'

Expected behavior Test should pass

Screenshots N/A

Additional context See Winter 25 release notes about new SOQL parser error messages.

aheber commented 3 months ago

@anand13s I'm going to need a lot more context here and expectations for urgency and timing needs.

As far as I know Winter '25 is not public facing and the release notes aren't available at this time. I don't think I can request a preview scratch org to be able to run these tests and update them. Maybe I've missed a public announcement?

As for fixing this error, this shouldn't be affecting any customer orgs as they are not expected to successfully execute the package tests. I would have expected this to be a problem that we handle with the normal routine of development and package release. Is there a reason this should be handled differently?

Is this behavior API versioned? That would change how we need to handle a fix for this and the timing of when we could commit the changes.

aheber commented 2 months ago

We're not able to see this in w25 orgs. We've adjusted the test criteria. Thanks!

anand13s commented 1 month ago

@aheber please see release notes https://help.salesforce.com/s/articleView?id=release-notes.rn_apex_soql.htm&release=252&type=5 this will still happen and break your package.

aheber commented 1 month ago

@anand13s I wrote the above wrong. Should have been "We're able to see this..." and we merged code to handle it, thank you for the heads up and sorry for the confusion. The updated code works in both Summer '24 and Winter '25.

anand13s commented 1 month ago

awesome!