SystemGlobalsTest.java
Upload User: gdxydsw
Upload Date: 2019-01-29
Package Size: 16721k
Code Size: 3k
Category:

Java Develop

Development Platform:

Java

  1. /*
  2.  * Copyright (c) 2003, Rafael Steil
  3.  * All rights reserved.
  4.  * 
  5.  * Redistribution and use in source and binary forms, 
  6.  * with or without modification, are permitted provided 
  7.  * that the following conditions are met:
  8.  * 
  9.  * 1) Redistributions of source code must retain the above 
  10.  * copyright notice, this list of conditions and the 
  11.  * following  disclaimer.
  12.  * 2)  Redistributions in binary form must reproduce the 
  13.  * above copyright notice, this list of conditions and 
  14.  * the following disclaimer in the documentation and/or 
  15.  * other materials provided with the distribution.
  16.  * 3) Neither the name of "Rafael Steil" nor 
  17.  * the names of its contributors may be used to endorse 
  18.  * or promote products derived from this software without 
  19.  * specific prior written permission.
  20.  * 
  21.  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT 
  22.  * HOLDERS AND CONTRIBUTORS "AS IS" AND ANY 
  23.  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, 
  24.  * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 
  25.  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR 
  26.  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL 
  27.  * THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE 
  28.  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 
  29.  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES 
  30.  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
  31.  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, 
  32.  * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
  33.  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER 
  34.  * IN CONTRACT, STRICT LIABILITY, OR TORT 
  35.  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 
  36.  * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 
  37.  * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE
  38.  * 
  39.  * This file creation date: 01/10/2004 - 15:23:32
  40.  * The JForum Project
  41.  * http://www.jforum.net
  42.  */
  43. package net.jforum.util.preferences;
  44. import junit.framework.TestCase;
  45. import net.jforum.TestCaseUtils;
  46. /**
  47.  * @author Rafael Steil
  48.  * @version $Id: SystemGlobalsTest.java,v 1.5 2005/07/26 04:01:23 diegopires Exp $
  49.  */
  50. public class SystemGlobalsTest extends TestCase
  51. {
  52. private static final String USER_DEFAULTS = "userDefaultsTest.properties";
  53. private static final String GLOBALS = "/WEB-INF/tests/config/SystemGlobalsTest.properties";
  54. /** 
  55.  * @see junit.framework.TestCase#setUp()
  56.  */
  57. public void setUp() throws Exception
  58. {
  59. SystemGlobals.initGlobals(TestCaseUtils.getRootDir(), 
  60. TestCaseUtils.getRootDir() + GLOBALS);
  61. }
  62. public void testLoad()
  63. {
  64. assertEquals(TestCaseUtils.getRootDir() + "/WEB-INF", 
  65. SystemGlobals.getApplicationResourceDir());
  66. assertEquals(SystemGlobals.getApplicationResourceDir() + "/config", 
  67. SystemGlobals.getValue("config.dir"));
  68. assertEquals("some value", SystemGlobals.getValue("some.key"));
  69. }
  70. public void testTypes()
  71. {
  72. assertEquals(123, SystemGlobals.getIntValue("int.key"));
  73. assertEquals(true, SystemGlobals.getBoolValue("bool.key"));
  74. assertEquals(false, SystemGlobals.getBoolValue("bool.key.2"));
  75. assertEquals("some string", SystemGlobals.getValue("string.key"));
  76. }
  77. public void testUserDefaults() throws Exception
  78. {
  79. SystemGlobals.loadAdditionalDefaults(TestCaseUtils.getRootDir()
  80. + "/WEB-INF/tests/config/" + USER_DEFAULTS);
  81. assertEquals("user value 1", SystemGlobals.getValue("user.key.1"));
  82. assertEquals("user value 2", SystemGlobals.getValue("user.key.2"));
  83. assertEquals("some user value", SystemGlobals.getValue("some.key"));
  84. try {
  85. SystemGlobals.getValue("blablabla");
  86. }
  87. catch (RuntimeException e) {
  88. assertEquals("unknown property: blablabla", e.getMessage());
  89. }
  90. }
  91. }