2 // Getdown - application installer, patcher and launcher
3 // Copyright (C) 2004-2018 Getdown authors
4 // https://github.com/threerings/getdown/blob/master/LICENSE
6 package com.threerings.getdown.data;
9 import static org.junit.Assert.*;
11 public class SysPropsTest {
13 @After public void clearProps () {
14 System.clearProperty("delay");
15 System.clearProperty("appbase_domain");
16 System.clearProperty("appbase_override");
19 private static final String[] APPBASES = {
20 "http://foobar.com/myapp",
21 "https://foobar.com/myapp",
22 "http://foobar.com:8080/myapp",
23 "https://foobar.com:8080/myapp"
26 @Test public void testStartDelay () {
28 assertEquals(0, SysProps.startDelay());
30 System.setProperty("delay", "x");
31 assertEquals(0, SysProps.startDelay());
33 System.setProperty("delay", "-7");
34 assertEquals(0, SysProps.startDelay());
36 System.setProperty("delay", "7");
37 assertEquals(7, SysProps.startDelay());
39 System.setProperty("delay", "1440");
40 assertEquals(1440, SysProps.startDelay());
42 System.setProperty("delay", "1441");
43 assertEquals(1440, SysProps.startDelay());
46 @Test public void testAppbaseDomain () {
47 System.setProperty("appbase_domain", "https://barbaz.com");
48 for (String appbase : APPBASES) {
49 assertEquals("https://barbaz.com/myapp", SysProps.overrideAppbase(appbase));
51 System.setProperty("appbase_domain", "http://barbaz.com");
52 for (String appbase : APPBASES) {
53 assertEquals("http://barbaz.com/myapp", SysProps.overrideAppbase(appbase));
57 @Test public void testAppbaseOverride () {
58 System.setProperty("appbase_override", "https://barbaz.com/newapp");
59 for (String appbase : APPBASES) {
60 assertEquals("https://barbaz.com/newapp", SysProps.overrideAppbase(appbase));