You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

BasicDboTest.java 7.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222
  1. package com.luticate.utils;
  2. import com.luticate.utils.dbo.LuBoolDbo;
  3. import com.luticate.utils.dbo.LuDataAccessConfigDbo;
  4. import com.luticate.utils.dbo.LuDoubleDbo;
  5. import com.luticate.utils.dbo.LuIntDbo;
  6. import com.luticate.utils.dbo.LuLongDbo;
  7. import com.luticate.utils.dbo.LuPaginatedDbo;
  8. import com.luticate.utils.dbo.LuStringDbo;
  9. import com.luticate.utils.dbo.LuVoidDbo;
  10. import org.junit.Test;
  11. import java.util.HashMap;
  12. import java.util.List;
  13. import java.util.Map;
  14. import java.util.Vector;
  15. import static org.junit.Assert.*;
  16. /**
  17. * Created by robin on 10/22/16.
  18. */
  19. public class BasicDboTest {
  20. @Test
  21. public void boolTest() throws Exception {
  22. LuBoolDbo dbo = new LuBoolDbo();
  23. dbo.fromJson("{\"value\": true}");
  24. assertTrue(dbo.getBool());
  25. dbo = new LuBoolDbo();
  26. dbo.fromJson("{\"value\": null}");
  27. assertNull(dbo.getBool());
  28. dbo = new LuBoolDbo();
  29. dbo.fromJson("{\"value\": false}");
  30. assertFalse(dbo.getBool());
  31. dbo.setBool(true);
  32. LuBoolDbo dbo2 = new LuBoolDbo();
  33. dbo2.fromJson(dbo.toString());
  34. assertTrue(dbo2.getBool());
  35. dbo = new LuBoolDbo(false);
  36. assertFalse(dbo.getBool());
  37. dbo = new LuBoolDbo(true);
  38. assertTrue(dbo.getBool());
  39. }
  40. @Test
  41. public void intTest() throws Exception {
  42. LuIntDbo dbo = new LuIntDbo();
  43. dbo.fromJson("{\"value\": 42}");
  44. assertEquals(42, dbo.getInt().intValue());
  45. dbo = new LuIntDbo();
  46. dbo.fromJson("{\"value\": null}");
  47. assertNull(dbo.getInt());
  48. dbo = new LuIntDbo();
  49. dbo.fromJson("{\"value\": 24}");
  50. assertEquals(24, dbo.getInt().intValue());
  51. dbo.setInt(4242);
  52. LuIntDbo dbo2 = new LuIntDbo();
  53. dbo2.fromJson(dbo.toString());
  54. assertEquals(4242, dbo2.getInt().intValue());
  55. dbo = new LuIntDbo(42);
  56. assertEquals(42, dbo.getInt().intValue());
  57. dbo = new LuIntDbo(24);
  58. assertEquals(24, dbo.getInt().intValue());
  59. }
  60. @Test
  61. public void longTest() throws Exception {
  62. LuLongDbo dbo = new LuLongDbo();
  63. dbo.fromJson("{\"value\": 42}");
  64. assertEquals(42, dbo.getLong().longValue());
  65. dbo = new LuLongDbo();
  66. dbo.fromJson("{\"value\": null}");
  67. assertNull(dbo.getLong());
  68. dbo = new LuLongDbo();
  69. dbo.fromJson("{\"value\": 24}");
  70. assertEquals(24, dbo.getLong().longValue());
  71. dbo.setLong((long) 4242);
  72. LuLongDbo dbo2 = new LuLongDbo();
  73. dbo2.fromJson(dbo.toString());
  74. assertEquals(4242, dbo2.getLong().longValue());
  75. dbo = new LuLongDbo((long) 42);
  76. assertEquals(42, dbo.getLong().longValue());
  77. dbo = new LuLongDbo((long) 24);
  78. assertEquals(24, dbo.getLong().longValue());
  79. }
  80. @Test
  81. public void doubleTest() throws Exception {
  82. LuDoubleDbo dbo = new LuDoubleDbo();
  83. dbo.fromJson("{\"value\": 42.125}");
  84. assertEquals(42.125, dbo.getDouble(), 0);
  85. dbo = new LuDoubleDbo();
  86. dbo.fromJson("{\"value\": null}");
  87. assertNull(dbo.getDouble());
  88. dbo = new LuDoubleDbo();
  89. dbo.fromJson("{\"value\": 24.125}");
  90. assertEquals(24.125, dbo.getDouble(), 0);
  91. dbo.setDouble(4242.125);
  92. LuDoubleDbo dbo2 = new LuDoubleDbo();
  93. dbo2.fromJson(dbo.toString());
  94. assertEquals(4242.125, dbo2.getDouble(), 0);
  95. dbo = new LuDoubleDbo(42.125);
  96. assertEquals(42.125, dbo.getDouble(), 0);
  97. dbo = new LuDoubleDbo(24.125);
  98. assertEquals(24.125, dbo.getDouble(), 0);
  99. }
  100. @Test
  101. public void stringTest() throws Exception {
  102. LuStringDbo dbo = new LuStringDbo();
  103. dbo.fromJson("{\"value\": \"42\"}");
  104. assertEquals("42", dbo.getString());
  105. dbo = new LuStringDbo();
  106. dbo.fromJson("{\"value\": null}");
  107. assertNull(dbo.getString());
  108. dbo = new LuStringDbo();
  109. dbo.fromJson("{\"value\": \"24\"}");
  110. assertEquals("24", dbo.getString());
  111. dbo.setString("4242");
  112. LuStringDbo dbo2 = new LuStringDbo();
  113. dbo2.fromJson(dbo.toString());
  114. assertEquals("4242", dbo2.getString());
  115. dbo = new LuStringDbo("42 42");
  116. assertEquals("42 42", dbo.getString());
  117. dbo = new LuStringDbo("24 24");
  118. assertEquals("24 24", dbo.getString());
  119. }
  120. @Test
  121. public void paginatedTest() throws Exception {
  122. LuPaginatedDbo<LuIntDbo> dbo = new LuPaginatedDbo<>(LuIntDbo.class);
  123. dbo.fromJson("{\"count\": 42, \"data\": [{\"value\": 1}, {\"value\": 2}, {\"value\": 3}]}");
  124. assertEquals(42, dbo.getCount());
  125. assertNotNull(dbo.getData());
  126. assertEquals(3, dbo.getData().size());
  127. assertEquals(1, dbo.getData().get(0).getInt().intValue());
  128. assertEquals(2, dbo.getData().get(1).getInt().intValue());
  129. assertEquals(3, dbo.getData().get(2).getInt().intValue());
  130. dbo.setCount(24);
  131. List<LuIntDbo> list = new Vector<>();
  132. list.add(new LuIntDbo(10));
  133. list.add(new LuIntDbo(20));
  134. dbo.setData(list);;
  135. assertEquals(24, dbo.getCount());
  136. assertNotNull(dbo.getData());
  137. assertEquals(2, dbo.getData().size());
  138. assertEquals(10, dbo.getData().get(0).getInt().intValue());
  139. assertEquals(20, dbo.getData().get(1).getInt().intValue());
  140. HashMap<String, Object> array = dbo.toArray();
  141. assertEquals(2, array.size());
  142. assertTrue(array.containsKey("count"));
  143. assertEquals(24, array.get("count"));
  144. assertTrue(array.containsKey("data"));
  145. assertEquals(2, ((List)array.get("data")).size());
  146. }
  147. @Test
  148. public void dataAccessConfigTest() throws Exception {
  149. LuDataAccessConfigDbo dbo = new LuDataAccessConfigDbo();
  150. dbo.fromJson("{\"baseUrl\": \"http://api/\", \"httpUsername\": \"root\", \"httpPassword\": \"toor42\"}");
  151. assertEquals("http://api/", dbo.getBaseUrl());
  152. assertEquals("root", dbo.getHttpUsername());
  153. assertEquals("toor42", dbo.getHttpPassword());
  154. Map<String, String> headers = dbo.getHeaders();
  155. assertEquals(1, headers.size());
  156. assertTrue(headers.containsKey("Authorization"));
  157. assertEquals("Basic cm9vdDp0b29yNDI=", headers.get("Authorization"));
  158. dbo = new LuDataAccessConfigDbo();
  159. dbo.fromJson("{\"baseUrl\": \"http://api2/\"}");
  160. assertEquals("http://api2/", dbo.getBaseUrl());
  161. assertNull(dbo.getHttpUsername());
  162. assertNull(dbo.getHttpPassword());
  163. headers = dbo.getHeaders();
  164. assertEquals(0, headers.size());
  165. dbo.setBaseUrl("http://api/");
  166. dbo.setHttpUsername("root");
  167. dbo.setHttpPassword("toor42");
  168. assertEquals("http://api/", dbo.getBaseUrl());
  169. assertEquals("root", dbo.getHttpUsername());
  170. assertEquals("toor42", dbo.getHttpPassword());
  171. HashMap<String, Object> array = dbo.toArray();
  172. assertEquals(3, array.size());
  173. assertTrue(array.containsKey("baseUrl"));
  174. assertEquals("http://api/", array.get("baseUrl"));
  175. assertTrue(array.containsKey("httpUsername"));
  176. assertEquals("root", array.get("httpUsername"));
  177. assertTrue(array.containsKey("httpPassword"));
  178. assertEquals("toor42", array.get("httpPassword"));
  179. }
  180. }