Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

BetweenTest.java 5.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181
  1. package com.vaadin.v7.data.util.sqlcontainer.filters;
  2. import static org.junit.Assert.assertEquals;
  3. import static org.junit.Assert.assertFalse;
  4. import static org.junit.Assert.assertTrue;
  5. import org.easymock.EasyMock;
  6. import org.junit.Test;
  7. import com.vaadin.v7.data.Item;
  8. import com.vaadin.v7.data.Property;
  9. import com.vaadin.v7.data.util.filter.Between;
  10. public class BetweenTest {
  11. private Item itemWithPropertyValue(Object propertyId, Object value) {
  12. Property<?> property = EasyMock.createMock(Property.class);
  13. property.getValue();
  14. EasyMock.expectLastCall().andReturn(value).anyTimes();
  15. EasyMock.replay(property);
  16. Item item = EasyMock.createMock(Item.class);
  17. item.getItemProperty(propertyId);
  18. EasyMock.expectLastCall().andReturn(property).anyTimes();
  19. EasyMock.replay(item);
  20. return item;
  21. }
  22. @Test
  23. public void passesFilter_valueIsInRange_shouldBeTrue() {
  24. Item item = itemWithPropertyValue("foo", 15);
  25. Between between = new Between("foo", 1, 30);
  26. assertTrue(between.passesFilter("foo", item));
  27. }
  28. @Test
  29. public void passesFilter_valueIsOutOfRange_shouldBeFalse() {
  30. Item item = itemWithPropertyValue("foo", 15);
  31. Between between = new Between("foo", 0, 2);
  32. assertFalse(between.passesFilter("foo", item));
  33. }
  34. @Test
  35. public void passesFilter_valueNotComparable_shouldBeFalse() {
  36. Item item = itemWithPropertyValue("foo", new Object());
  37. Between between = new Between("foo", 0, 2);
  38. assertFalse(between.passesFilter("foo", item));
  39. }
  40. @Test
  41. public void appliesToProperty_differentProperties_shoudlBeFalse() {
  42. Between between = new Between("foo", 0, 2);
  43. assertFalse(between.appliesToProperty("bar"));
  44. }
  45. @Test
  46. public void appliesToProperty_sameProperties_shouldBeTrue() {
  47. Between between = new Between("foo", 0, 2);
  48. assertTrue(between.appliesToProperty("foo"));
  49. }
  50. @Test
  51. public void hashCode_equalInstances_shouldBeEqual() {
  52. Between b1 = new Between("foo", 0, 2);
  53. Between b2 = new Between("foo", 0, 2);
  54. assertEquals(b1.hashCode(), b2.hashCode());
  55. }
  56. @Test
  57. public void equals_differentObjects_shouldBeFalse() {
  58. Between b1 = new Between("foo", 0, 2);
  59. Object obj = new Object();
  60. assertFalse(b1.equals(obj));
  61. }
  62. @Test
  63. public void equals_sameInstance_shouldBeTrue() {
  64. Between b1 = new Between("foo", 0, 2);
  65. Between b2 = b1;
  66. assertTrue(b1.equals(b2));
  67. }
  68. @Test
  69. public void equals_equalInstances_shouldBeTrue() {
  70. Between b1 = new Between("foo", 0, 2);
  71. Between b2 = new Between("foo", 0, 2);
  72. assertTrue(b1.equals(b2));
  73. }
  74. @Test
  75. public void equals_equalInstances2_shouldBeTrue() {
  76. Between b1 = new Between(null, null, null);
  77. Between b2 = new Between(null, null, null);
  78. assertTrue(b1.equals(b2));
  79. }
  80. @Test
  81. public void equals_secondValueDiffers_shouldBeFalse() {
  82. Between b1 = new Between("foo", 0, 1);
  83. Between b2 = new Between("foo", 0, 2);
  84. assertFalse(b1.equals(b2));
  85. }
  86. @Test
  87. public void equals_firstAndSecondValueDiffers_shouldBeFalse() {
  88. Between b1 = new Between("foo", 0, null);
  89. Between b2 = new Between("foo", 1, 2);
  90. assertFalse(b1.equals(b2));
  91. }
  92. @Test
  93. public void equals_propertyAndFirstAndSecondValueDiffers_shouldBeFalse() {
  94. Between b1 = new Between("foo", null, 1);
  95. Between b2 = new Between("bar", 1, 2);
  96. assertFalse(b1.equals(b2));
  97. }
  98. @Test
  99. public void equals_propertiesDiffer_shouldBeFalse() {
  100. Between b1 = new Between(null, 0, 1);
  101. Between b2 = new Between("bar", 0, 1);
  102. assertFalse(b1.equals(b2));
  103. }
  104. @Test
  105. public void hashCode_nullStartValue_shouldBeEqual() {
  106. Between b1 = new Between("foo", null, 2);
  107. Between b2 = new Between("foo", null, 2);
  108. assertEquals(b1.hashCode(), b2.hashCode());
  109. }
  110. @Test
  111. public void hashCode_nullEndValue_shouldBeEqual() {
  112. Between b1 = new Between("foo", 0, null);
  113. Between b2 = new Between("foo", 0, null);
  114. assertEquals(b1.hashCode(), b2.hashCode());
  115. }
  116. @Test
  117. public void hashCode_nullPropertyId_shouldBeEqual() {
  118. Between b1 = new Between(null, 0, 2);
  119. Between b2 = new Between(null, 0, 2);
  120. assertEquals(b1.hashCode(), b2.hashCode());
  121. }
  122. @Test
  123. public void passesFilter_nullValue_filterIsPassed() {
  124. String id = "id";
  125. Between between = new Between(id, null, null);
  126. assertTrue(between.passesFilter(id, itemWithPropertyValue(id, null)));
  127. }
  128. @Test
  129. public void passesFilter_nullStartValue_filterIsPassed() {
  130. String id = "id";
  131. Between between = new Between(id, null, 2);
  132. assertTrue(between.passesFilter(id, itemWithPropertyValue(id, 1)));
  133. }
  134. @Test
  135. public void passesFilter_nullEndValue_filterIsPassed() {
  136. String id = "id";
  137. Between between = new Between(id, 0, null);
  138. assertTrue(between.passesFilter(id, itemWithPropertyValue(id, 1)));
  139. }
  140. @Test
  141. public void passesFilter_nullStartValueAndEndValue_filterIsPassed() {
  142. String id = "id";
  143. Between between = new Between(id, null, null);
  144. assertTrue(between.passesFilter(id, itemWithPropertyValue(id, 1)));
  145. }
  146. @Test
  147. public void passesFilter_nullStartValueAndEndValueAndValueIsNotComparable_filterIsNotPassed() {
  148. String id = "id";
  149. Between between = new Between(id, null, null);
  150. assertFalse(between.passesFilter(id,
  151. itemWithPropertyValue(id, new Object())));
  152. }
  153. }