Stefan Seifert created SLING-11548: -------------------------------------- Summary: sling-mock: Introduce RESOURCEPROVIDER_MOCK resource resolver type Key: SLING-11548 URL: https://issues.apache.org/jira/browse/SLING-11548 Project: Sling Issue Type: New Feature Components: Testing Reporter: Stefan Seifert Assignee: Stefan Seifert Fix For: Testing Sling Mock 3.4.0
based on the new MockResourceProvider implemention in resourceresolver-mock (SLING-11455) we introduce a new resource resolver type {{RESOURCEPROVIDER_MOCK}} that's uses the ResourceProvider implementation instead of the MockResourceResolver. with this change we remove the additional wrapper layers for MockResourceResolverFactory and MockResourceResolver in sling-mock there were introduced for SLING-5922/SLING-10753 and caused various trouble because the wrapper layer was too simplicisty (examples for problems: SLING-10937, SLING-11252, [WTES-74|https://wcm-io.atlassian.net/browse/WTES-74]) benefits of {{RESOURCEPROVIDER_MOCK}} compared to {{{}RESOURCERESOLVER_MOCK{}}}: * it used the "real" sling resource resolver implementation with full support for combinding multiple ResourceProvider * fully supports loading folders of JSON or FileVault XML content as described in SLING-5922/SLING-10753. this feature is no longer supported with {{RESOURCERESOLVER_MOCK}} and the error message indicated to switch to {{RESOURCEPROVIDER_MOCK}} for those tests that make use of this feature. * overall the resourceresolver behaves "closer" to the real resourceresolver than using MockResourceResolver alone drawbacks: * the test execution has more overhead initializing the sling resourceresolver implementation with a lot of magic happening behinde the scenes that's why we introduced a new resource resolver type, and did not just change the implementation of {{{}RESOURCERESOLVER_MOCK{}}}, and {{RESOURCERESOLVER_MOCK}} is still the default mode as it still serves well for the majority of typical use cases -- This message was sent by Atlassian Jira (v8.20.10#820010)