Hi everyone, I am having problems to test Pages in my unit tests. I have the following code:
Resource resource = context.load().json(PAGE_PATH + JSON_EXT, PAGE_PATH);
Page page = resource.adaptTo(Page.class);
The answer of adapTo is always null.
I am working with SlingMocks, and this is my resource
public final SlingContext context = new SlingContext();
There is a option to do this? I know its possible with wcm.io but I don't want to include that just for this kind of tests.
Thanks in advance.
Solved! Go to Solution.
Views
Replies
Total Likes
Dear Jora,
Sling does not know about AEM WCM Page Api, therefore, it won't handle it OOTB. Of course you can wring your custom logic to Sling Mock's it how to handle Page API, but then you are re-implementing wcm.io.
Regards,Peter
Views
Replies
Total Likes
Dear Jora,
Have you looked at [1]
[1] Usage | AEM Mocks :
public class ExampleTest {
@Rule
public final AemContext context = new AemContext();
@Test
public void testSomething() {
Resource resource = context.resourceResolver().getResource("/content/sample/en");
Page page = resource.adaptTo(Page.class);
// further testing
}
}
shows basic dummy example [2]
[2] GitHub - xuanuy/mock-testing
Regards,
Peter
Views
Replies
Total Likes
Thanks for the answer Peter.
Yes, I already saw that, but I'm wondering if this is possible without wcm.io (that's where it comes from AemContext), now I just use Apache Sling Mocks. I'm looking for solutions using just this dependency, and if is not possible I will jump to the other one.
Views
Replies
Total Likes
Dear Jora,
Sling does not know about AEM WCM Page Api, therefore, it won't handle it OOTB. Of course you can wring your custom logic to Sling Mock's it how to handle Page API, but then you are re-implementing wcm.io.
Regards,Peter
Views
Replies
Total Likes
There should not be too much risk(check with your penetration security team before adding any dependency) adding wcm.io, if you declare it as <scope>test</scope> time dependency in maven. It's only initialised for testing then.
Regards,
Peter
Views
Replies
Total Likes
Thanks Peter! I will look whats its the more convenient solution for us.
Views
Replies
Total Likes
Views
Likes
Replies
Views
Likes
Replies