I am trying to Mock SlingSettingsService with run modes in Junit5.
In my h.java file, in Activate method I have.
srun = slingSettingsService.getRunModes().contains("runMode");
How do I mock this in my htest.java file? This is for Junit5.
Solved! Go to Solution.
Views
Replies
Total Likes
you can do something like this:
@ExtendWith(AemContextExtension.class)
public class ExampleTest {
private final AemContext context = new AemContext();
Set<String> mockRunModes = new TreeSet<String>();
@Mock
private SlingSettingsService slingSettingsService;
@Before
public void before() {
when(slingSettingsService.getRunModes()).thenReturn(mockRunModes);
}
@Test
public void testSomething() {
mockRunModes.add("publish");
Resource resource = context.resourceResolver().getResource("/content/sample/en");
Page page = resource.adaptTo(MyClass.class);
// further testing
}
}
you can do something like this:
@ExtendWith(AemContextExtension.class)
public class ExampleTest {
private final AemContext context = new AemContext();
Set<String> mockRunModes = new TreeSet<String>();
@Mock
private SlingSettingsService slingSettingsService;
@Before
public void before() {
when(slingSettingsService.getRunModes()).thenReturn(mockRunModes);
}
@Test
public void testSomething() {
mockRunModes.add("publish");
Resource resource = context.resourceResolver().getResource("/content/sample/en");
Page page = resource.adaptTo(MyClass.class);
// further testing
}
}