You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2022/09/13 16:17:15 UTC
[isis] branch master updated: ISIS-3209: wkt vwr test fixes
This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git
The following commit(s) were added to refs/heads/master by this push:
new dc24d43bf5 ISIS-3209: wkt vwr test fixes
dc24d43bf5 is described below
commit dc24d43bf5aea447f4decdad62954ab123ba9174
Author: Andi Huber <ah...@apache.org>
AuthorDate: Tue Sep 13 18:17:08 2022 +0200
ISIS-3209: wkt vwr test fixes
---
.../model/models/test/EntityModel_hintsTest.java | 128 +++++++++++++--------
1 file changed, 81 insertions(+), 47 deletions(-)
diff --git a/viewers/wicket/model/src/test/java/org/apache/isis/viewer/wicket/model/models/test/EntityModel_hintsTest.java b/viewers/wicket/model/src/test/java/org/apache/isis/viewer/wicket/model/models/test/EntityModel_hintsTest.java
index c364b02ff3..6604e83863 100644
--- a/viewers/wicket/model/src/test/java/org/apache/isis/viewer/wicket/model/models/test/EntityModel_hintsTest.java
+++ b/viewers/wicket/model/src/test/java/org/apache/isis/viewer/wicket/model/models/test/EntityModel_hintsTest.java
@@ -18,63 +18,96 @@
*/
package org.apache.isis.viewer.wicket.model.models.test;
+import java.util.Map;
+import java.util.Set;
+
import org.apache.wicket.Component;
import org.apache.wicket.MarkupContainer;
+import org.apache.wicket.Page;
+import org.apache.wicket.RuntimeConfigurationType;
+import org.apache.wicket.Session;
+import org.apache.wicket.ThreadContext;
+import org.apache.wicket.request.Request;
+import org.apache.wicket.request.Response;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
-import org.junit.jupiter.api.extension.ExtendWith;
-import org.mockito.Mock;
-import org.mockito.junit.jupiter.MockitoExtension;
+import org.mockito.Mockito;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.CoreMatchers.nullValue;
import static org.hamcrest.MatcherAssert.assertThat;
+import org.apache.isis.applib.services.bookmark.Bookmark;
+import org.apache.isis.applib.services.hint.HintStore;
+import org.apache.isis.commons.internal.collections._Maps;
import org.apache.isis.core.metamodel._testing.MetaModelContext_forTesting;
+import org.apache.isis.core.metamodel.context.HasMetaModelContext;
import org.apache.isis.core.metamodel.context.MetaModelContext;
import org.apache.isis.viewer.wicket.model.models.EntityModel;
-import lombok.val;
+import lombok.Getter;
+import lombok.RequiredArgsConstructor;
-//FIXME[ISIS-3207] eclipse refuses to build
-//@DisabledIfSystemProperty(named = "isRunningWithSurefire", matches = "true")
-@ExtendWith(MockitoExtension.class)
class EntityModel_hintsTest {
- @Mock MarkupContainer mockParent;
- @Mock Component mockComponent1;
- @Mock Component mockComponent2;
+ MarkupContainer mockParent;
+ Component mockComponent1;
+ Component mockComponent2;
EntityModel target;
MetaModelContext metaModelContext;
+ HintStore_forTesting hintStore;
+
+ @RequiredArgsConstructor
+ static class WicketAppStup
+ extends org.apache.wicket.Application
+ implements HasMetaModelContext {
+ @Getter final MetaModelContext metaModelContext;
+ @Override public String getApplicationKey() {
+ return null; }
+ @Override public RuntimeConfigurationType getConfigurationType() {
+ return null; }
+ @Override public Class<? extends Page> getHomePage() {
+ return null; }
+ @Override public Session newSession(final Request request, final Response response) {
+ return null; }
+ }
+
+ static class HintStore_forTesting implements HintStore {
+ private final Map<String, String> map = _Maps.newHashMap();
+ @Override public String get(final Bookmark bookmark, final String hintKey) {
+ return map.get(hintKey);}
+ @Override public void set(final Bookmark bookmark, final String hintKey, final String value) {
+ map.put(hintKey, value); }
+ @Override public void remove(final Bookmark bookmark, final String hintKey) {
+ map.remove(hintKey); }
+ @Override public void removeAll(final Bookmark bookmark) {
+ map.clear(); }
+ @Override public Set<String> findHintKeys(final Bookmark bookmark) {
+ return map.keySet(); }
+ @Override public String toString() {
+ return map.toString(); }
+ }
@BeforeEach
public void setUp() throws Exception {
- metaModelContext = MetaModelContext_forTesting.buildDefault();
- val commonContext = metaModelContext;
-
- target = EntityModel.ofBookmark(commonContext, null);
-
- // mockParent = context.mock(MarkupContainer.class, "parent");
- // mockComponent1 = context.mock(Component.class, "component1");
- // mockComponent2 = context.mock(Component.class, "component2");
-
- //FIXME[ISIS-3207]
- // context.checking(new Expectations() {{
- // allowing(mockParent).getId();
- // will(returnValue("parent"));
- //
- // allowing(mockComponent1).getId();
- // will(returnValue("id1"));
- //
- // allowing(mockComponent2).getId();
- // will(returnValue("id2"));
- //
- // ignoring(mockComponent1);
- // ignoring(mockComponent2);
- //
- // }});
+ metaModelContext = MetaModelContext_forTesting.builder()
+ .singleton(hintStore = new HintStore_forTesting())
+ .build();
+
+ ThreadContext.setApplication(new WicketAppStup(metaModelContext));
+
+ target = EntityModel.ofBookmark(metaModelContext,
+ Bookmark.forLogicalTypeNameAndIdentifier("hi", "there"));
+
+ mockParent = Mockito.mock(MarkupContainer.class);
+ mockComponent1 = Mockito.mock(Component.class);
+ mockComponent2 = Mockito.mock(Component.class);
+
+ Mockito.when(mockParent.getId()).thenReturn("parent");
+ Mockito.when(mockComponent1.getId()).thenReturn("id1");
+ Mockito.when(mockComponent2.getId()).thenReturn("id2");
mockComponent1.setParent(mockParent);
mockComponent2.setParent(mockParent);
@@ -125,19 +158,20 @@ class EntityModel_hintsTest {
@Test
public void smoke() throws Exception {
- target.setHint(mockComponent1, "X", "1.X");
- target.setHint(mockComponent1, "A", "1.A");
- target.setHint(mockComponent1, "B", "1.B");
- target.setHint(mockComponent1, "C", "1.C");
- target.setHint(mockComponent2, "X", "2.X");
- target.setHint(mockComponent2, "P", "2.P");
- target.setHint(mockComponent2, "Q", "2.Q");
- target.setHint(mockComponent2, "R", "2.R");
-
- assertThat(target.getHint(mockComponent1, "id-X"), is("1.X"));
- assertThat(target.getHint(mockComponent1, "id2-X"), is("2.X"));
- assertThat(target.getHint(mockComponent1, "id1-B"), is("1.B"));
- assertThat(target.getHint(mockComponent1, "id2-R"), is("2.R"));
+ target.setHint(mockComponent1, "X", "11");
+ target.setHint(mockComponent1, "A", "12");
+ target.setHint(mockComponent1, "B", "13");
+ target.setHint(mockComponent1, "C", "14");
+
+ target.setHint(mockComponent2, "X", "21");
+ target.setHint(mockComponent2, "P", "22");
+ target.setHint(mockComponent2, "Q", "23");
+ target.setHint(mockComponent2, "R", "24");
+
+ assertThat(target.getHint(mockComponent1, "X"), is("11"));
+ assertThat(target.getHint(mockComponent2, "X"), is("21"));
+ assertThat(target.getHint(mockComponent1, "B"), is("13"));
+ assertThat(target.getHint(mockComponent2, "R"), is("24"));
}
}