Skip to content

Commit cac27b5

Browse files
committed
Fixed #722, #723, #724
1 parent 4482264 commit cac27b5

File tree

3 files changed

+47
-9
lines changed

3 files changed

+47
-9
lines changed

gwt-material/src/main/java/gwt/material/design/client/ui/MaterialListValueBox.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -151,8 +151,10 @@ public void unload() {
151151

152152
@Override
153153
public void reload() {
154-
unload();
155-
load();
154+
if (isAttached()) {
155+
unload();
156+
load();
157+
}
156158
}
157159

158160
public void add(T value) {

gwt-material/src/test/java/gwt/material/design/client/ui/MaterialListBoxTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ protected MaterialListBox createWidget() {
4141
@Override
4242
public void testValues() {
4343
// given
44-
MaterialListBox listBox = (MaterialListBox)getWidget();
44+
MaterialListBox listBox = (MaterialListBox) getWidget();
4545

4646
List<String> users = new ArrayList<>();
4747
for (int i = 1; i <= 5; i++) {
@@ -53,12 +53,12 @@ public void testValues() {
5353
}
5454

5555
public void testChildren() {
56+
// UiBinder
5657
// given
5758
MaterialListBox listBox = (MaterialListBox)getWidget();
5859

5960
// when / then
6061
assertEquals(3, listBox.getChildren().size());
61-
6262
assertTrue(listBox.getWidget(0) instanceof ListBox);
6363
assertTrue(listBox.getWidget(1) instanceof Label);
6464
assertTrue(listBox.getWidget(2) instanceof MaterialLabel);

gwt-material/src/test/java/gwt/material/design/client/ui/MaterialListValueBoxTest.java

Lines changed: 41 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -100,26 +100,54 @@ public void testValues() {
100100
}
101101

102102
public void testProperties() {
103+
// UiBinder
103104
// given
104-
MaterialListValueBox<T> listValueBox = getWidget();
105+
MaterialListValueBox<T> listValueBox = getWidget(false);
105106

107+
// when / then
108+
checkProperties(listValueBox);
109+
110+
attachWidget();
111+
112+
// Standard
113+
// given
114+
checkProperties(listValueBox);
115+
}
116+
117+
protected void checkProperties(MaterialListValueBox listValueBox) {
106118
// when / then
107119
listValueBox.setMultipleSelect(true);
108120
assertTrue(listValueBox.isMultipleSelect());
109121
}
110122

111123
public void testBrowserDefault() {
124+
// UiBinder
112125
// given
113-
MaterialListValueBox<T> listValueBox = getWidget();
126+
MaterialListValueBox<T> listValueBox = getWidget(false);
127+
128+
// when / then
129+
checkBrowserDefault(listValueBox, false);
130+
131+
// Standard
132+
// given
133+
attachWidget();
114134

115135
// when / then
136+
checkBrowserDefault(listValueBox, true);
137+
}
138+
139+
protected void checkBrowserDefault(MaterialListValueBox listValueBox, boolean checkElement) {
116140
listValueBox.setOld(true);
117141
assertTrue(listValueBox.isOld());
118-
assertTrue(listValueBox.getListBox().getElement().hasClassName("browser-default"));
142+
if (checkElement) {
143+
assertTrue(listValueBox.getListBox().getElement().hasClassName("browser-default"));
144+
}
119145

120146
listValueBox.setOld(false);
121147
assertFalse(listValueBox.isOld());
122-
assertFalse(listValueBox.getListBox().getElement().hasClassName("browser-default"));
148+
if (checkElement) {
149+
assertFalse(listValueBox.getListBox().getElement().hasClassName("browser-default"));
150+
}
123151
}
124152

125153
public void testEnabled() {
@@ -154,8 +182,16 @@ public void testErrorSuccess() {
154182
}
155183

156184
public void testPlaceholder() {
185+
// UiBinder
157186
// given
158-
MaterialListValueBox<T> valueBox = getWidget();
187+
MaterialListValueBox<T> valueBox = getWidget(false);
188+
189+
// when / then
190+
checkPlaceholder(valueBox);
191+
192+
// Standard
193+
// given
194+
attachWidget();
159195

160196
// when / then
161197
checkPlaceholder(valueBox);

0 commit comments

Comments
 (0)