Skip to main content
Level 6
August 30, 2022
Solved

JUnit for resourceResolver.getResource(filePath)

My JUnit test is getting stuck in this section resourceResolver.getResource(filePath). My Mock AEM Context resource is having page path, its component details and in this section  resourceResolver.getResource(filePath), I am trying to fetch an asset. How can I handle this?

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Sachin_Arora_
Sachin_Arora_Accepted solution
Community Advisor
August 30, 2022

 

Sample code

 

@ExtendWith({ AemContextExtension.class, MockitoExtension.class })
public class SampleTest {

	private final AemContext aemContext = new AemContext(ResourceResolverType.JCR_MOCK);

	@Mock
    private Resource resource;
	
	@Mock
	private SlingHttpServletRequest request;

	@Mock
	private ResourceResolver resourceresolver;
	
	@BeforeEach
	void setUp() throws Exception {
		lenient().when(request.getResourceResolver()).thenReturn(resourceresolver);
		aemContext.addModelsForClasses(Sample.class);
		aemContext.load().json("/sample/component.json", "/content");
		aemContext.load().json("/sample/assets.json", SAMPLE_DAM_PATH);	
Mockito.when(resourceResolver.getResource(ASSET_PATH_FROM_JSON)).thenReturn(resource); } }

 

 

2 replies

Sachin_Arora_
Community Advisor
Sachin_Arora_Community AdvisorAccepted solution
Community Advisor
August 30, 2022

 

Sample code

 

@ExtendWith({ AemContextExtension.class, MockitoExtension.class })
public class SampleTest {

	private final AemContext aemContext = new AemContext(ResourceResolverType.JCR_MOCK);

	@Mock
    private Resource resource;
	
	@Mock
	private SlingHttpServletRequest request;

	@Mock
	private ResourceResolver resourceresolver;
	
	@BeforeEach
	void setUp() throws Exception {
		lenient().when(request.getResourceResolver()).thenReturn(resourceresolver);
		aemContext.addModelsForClasses(Sample.class);
		aemContext.load().json("/sample/component.json", "/content");
		aemContext.load().json("/sample/assets.json", SAMPLE_DAM_PATH);	
Mockito.when(resourceResolver.getResource(ASSET_PATH_FROM_JSON)).thenReturn(resource); } }

 

 

Translate
Level 6
August 30, 2022

what will be the content structure for  /sample/assets.json , considering assets (nt:file) will have rendition/original etc.

Because I need to adapt the asset original to input stream.

 

Translate