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.

ConfigTargetTest.java 6.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182
  1. /*
  2. * Copyright (c) 2006-2015 DMDirc Developers
  3. *
  4. * Permission is hereby granted, free of charge, to any person obtaining a copy
  5. * of this software and associated documentation files (the "Software"), to deal
  6. * in the Software without restriction, including without limitation the rights
  7. * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  8. * copies of the Software, and to permit persons to whom the Software is
  9. * furnished to do so, subject to the following conditions:
  10. *
  11. * The above copyright notice and this permission notice shall be included in
  12. * all copies or substantial portions of the Software.
  13. *
  14. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  15. * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  16. * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  17. * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  18. * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  19. * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  20. * SOFTWARE.
  21. */
  22. package com.dmdirc.config;
  23. import org.junit.Test;
  24. import static org.junit.Assert.*;
  25. public class ConfigTargetTest {
  26. @Test
  27. public void testDefault() {
  28. final ConfigTarget target = new ConfigTarget();
  29. assertEquals(ConfigTarget.TYPE.GLOBAL, target.getType());
  30. assertTrue(target.toString().toLowerCase().matches("global.*config"));
  31. }
  32. @Test
  33. public void testSetGlobal() {
  34. final ConfigTarget target = new ConfigTarget();
  35. target.setGlobal();
  36. assertEquals(ConfigTarget.TYPE.GLOBAL, target.getType());
  37. assertEquals("global", target.getTypeName());
  38. assertTrue(target.toString().toLowerCase().matches("global.*config"));
  39. }
  40. @Test
  41. public void testSetGlobalDefault() {
  42. final ConfigTarget target = new ConfigTarget();
  43. target.setGlobalDefault();
  44. assertEquals(ConfigTarget.TYPE.GLOBALDEFAULT, target.getType());
  45. assertEquals("globaldefault", target.getTypeName());
  46. assertTrue(target.toString().toLowerCase().matches("global.*defaults"));
  47. }
  48. @Test
  49. public void testSetTheme() {
  50. final ConfigTarget target = new ConfigTarget();
  51. target.setTheme();
  52. assertEquals(ConfigTarget.TYPE.THEME, target.getType());
  53. assertEquals("theme", target.getTypeName());
  54. assertTrue(target.toString().toLowerCase().matches("theme"));
  55. }
  56. @Test
  57. public void testSetProfile() {
  58. final ConfigTarget target = new ConfigTarget();
  59. target.setCustom("profile");
  60. assertEquals(ConfigTarget.TYPE.CUSTOM, target.getType());
  61. assertEquals("custom", target.getTypeName());
  62. assertEquals("profile", target.getData());
  63. assertEquals("custom: profile", target.toString().toLowerCase());
  64. }
  65. @Test
  66. public void testSetProtocol() {
  67. final ConfigTarget target = new ConfigTarget();
  68. target.setProtocol("irc");
  69. assertEquals(ConfigTarget.TYPE.PROTOCOL, target.getType());
  70. assertEquals("protocol", target.getTypeName());
  71. assertEquals("irc", target.getData());
  72. assertTrue(target.toString().toLowerCase().matches("protocol.*: irc"));
  73. }
  74. @Test
  75. public void testSetIrcd() {
  76. final ConfigTarget target = new ConfigTarget();
  77. target.setIrcd("ircd_name");
  78. assertEquals(ConfigTarget.TYPE.IRCD, target.getType());
  79. assertEquals("ircd", target.getTypeName());
  80. assertEquals("ircd_name", target.getData());
  81. assertTrue(target.toString().toLowerCase().matches("ircd.*: ircd_name"));
  82. }
  83. @Test
  84. public void testSetNetwork() {
  85. final ConfigTarget target = new ConfigTarget();
  86. target.setNetwork("net_name");
  87. assertEquals(ConfigTarget.TYPE.NETWORK, target.getType());
  88. assertEquals("network", target.getTypeName());
  89. assertEquals("net_name", target.getData());
  90. assertTrue(target.toString().toLowerCase().matches("network.*: net_name"));
  91. }
  92. @Test
  93. public void testSetServer() {
  94. final ConfigTarget target = new ConfigTarget();
  95. target.setServer("server_name");
  96. assertEquals(ConfigTarget.TYPE.SERVER, target.getType());
  97. assertEquals("server", target.getTypeName());
  98. assertEquals("server_name", target.getData());
  99. assertTrue(target.toString().toLowerCase().matches("server.*: server_name"));
  100. }
  101. @Test
  102. public void testSetChannel() {
  103. final ConfigTarget target = new ConfigTarget();
  104. target.setChannel("channel_name");
  105. assertEquals(ConfigTarget.TYPE.CHANNEL, target.getType());
  106. assertEquals("channel", target.getTypeName());
  107. assertEquals("channel_name", target.getData());
  108. assertTrue(target.toString().toLowerCase().matches("channel.*: channel_name"));
  109. }
  110. @Test
  111. public void testEquals() {
  112. final ConfigTarget t1 = new ConfigTarget();
  113. final ConfigTarget t2 = new ConfigTarget();
  114. final ConfigTarget t3 = new ConfigTarget();
  115. final ConfigTarget t4 = new ConfigTarget();
  116. final ConfigTarget t5 = new ConfigTarget();
  117. t1.setChannel("abc");
  118. t2.setChannel("def");
  119. t3.setServer("alpha");
  120. t4.setServer("abc");
  121. t5.setChannel("abc");
  122. assertEquals(t1, t1);
  123. assertFalse(t1.equals(t2));
  124. assertFalse(t1.equals(t3));
  125. assertFalse(t1.equals(t4));
  126. assertEquals(t1, t5);
  127. assertFalse(t2.equals(t1));
  128. assertEquals(t2, t2);
  129. assertFalse(t2.equals(t3));
  130. assertFalse(t2.equals(t4));
  131. assertFalse(t2.equals(t5));
  132. assertFalse(t3.equals(t1));
  133. assertFalse(t3.equals(t2));
  134. assertEquals(t3, t3);
  135. assertFalse(t3.equals(t4));
  136. assertFalse(t3.equals(t5));
  137. assertFalse(t4.equals(t1));
  138. assertFalse(t4.equals(t2));
  139. assertFalse(t4.equals(t3));
  140. assertEquals(t4, t4);
  141. assertFalse(t4.equals(t5));
  142. assertEquals(t5, t1);
  143. assertFalse(t5.equals(t2));
  144. assertFalse(t5.equals(t3));
  145. assertFalse(t5.equals(t4));
  146. assertEquals(t5, t5);
  147. assertEquals(t1.hashCode(), t5.hashCode());
  148. }
  149. }