public void setUp() throws Exception { super.setUp(); theDaemon = getMockLockssDaemon(); tempDir = getTempDir(); String tempDirPath = tempDir.getAbsolutePath(); System.setProperty("java.io.tmpdir", tempDirPath); Properties p = new Properties(); p.setProperty(IdentityManager.PARAM_IDDB_DIR, tempDirPath + "iddb"); p.setProperty(ConfigManager.PARAM_PLATFORM_DISK_SPACE_LIST, tempDirPath); p.setProperty(IdentityManager.PARAM_LOCAL_IP, "127.0.0.1"); p.setProperty(V3LcapMessage.PARAM_REPAIR_DATA_THRESHOLD, "4096"); ConfigurationUtil.setCurrentConfigFromProps(p); IdentityManager idmgr = theDaemon.getIdentityManager(); idmgr.startService(); mPollMgr = new MockPollManager(); theDaemon.setPollManager(mPollMgr); try { m_testID = idmgr.stringToPeerIdentity("127.0.0.1"); } catch (IOException ex) { fail("can't open test host 127.0.0.1: " + ex); } m_repairProps = new CIProperties(); m_repairProps.setProperty("key1", "val1"); m_repairProps.setProperty("key2", "val2"); m_repairProps.setProperty("key3", "val3"); m_testVoteBlocks = V3TestUtils.makeVoteBlockList(10); m_testMsg = this.makeTestVoteMessage(m_testVoteBlocks); }
public void testGetRepositoryList() throws Exception { assertEmpty(mgr.getRepositoryList()); String tempDirPath = setUpDiskSpace(); assertEquals(ListUtil.list("local:" + tempDirPath), mgr.getRepositoryList()); String tempdir2 = getTempDir().getAbsolutePath() + File.separator; ConfigurationUtil.setFromArgs( "org.lockss.platform.diskSpacePaths", tempdir2 + ";" + tempDirPath); assertEquals( ListUtil.list("local:" + tempdir2, "local:" + tempDirPath), mgr.getRepositoryList()); }
public void testConfig() throws Exception { MyMockLockssRepositoryImpl repo1 = makeRepo("foo"); assertEquals(RepositoryManager.DEFAULT_MAX_PER_AU_CACHE_SIZE, repo1.nodeCacheSize); ConfigurationUtil.setFromArgs(RepositoryManager.PARAM_MAX_PER_AU_CACHE_SIZE, "4"); MyMockLockssRepositoryImpl repo2 = makeRepo("bar"); assertEquals(4, repo1.nodeCacheSize); assertEquals(4, repo2.nodeCacheSize); repo1.cnt = 0; ConfigurationUtil.setFromArgs(RepositoryManager.PARAM_MAX_PER_AU_CACHE_SIZE, "37"); assertEquals(37, repo1.nodeCacheSize); assertEquals(37, repo2.nodeCacheSize); assertEquals(1, repo1.cnt); // ensure setNodeCacheSize doesn't get called if param doesn't change ConfigurationUtil.setFromArgs( RepositoryManager.PARAM_MAX_PER_AU_CACHE_SIZE, "37", "org.lockss.somethingElse", "bar"); assertEquals(1, repo1.cnt); PlatformUtil.DF warn = mgr.getDiskWarnThreshold(); PlatformUtil.DF full = mgr.getDiskFullThreshold(); assertEquals(5000 * 1024, warn.getAvail()); assertEquals(0.98, warn.getPercent(), .00001); assertEquals(100 * 1024, full.getAvail()); assertEquals(0.99, full.getPercent(), .00001); Properties p = new Properties(); p.put(RepositoryManager.PARAM_DISK_WARN_FRRE_MB, "17"); p.put(RepositoryManager.PARAM_DISK_WARN_FRRE_PERCENT, "20"); p.put(RepositoryManager.PARAM_DISK_FULL_FRRE_MB, "7"); p.put(RepositoryManager.PARAM_DISK_FULL_FRRE_PERCENT, "10"); ConfigurationUtil.setCurrentConfigFromProps(p); warn = mgr.getDiskWarnThreshold(); full = mgr.getDiskFullThreshold(); assertEquals(17 * 1024, warn.getAvail()); assertEquals(0.80, warn.getPercent(), .00001); assertEquals(7 * 1024, full.getAvail()); assertEquals(0.90, full.getPercent(), .00001); }
private void initRequiredServices() { theDaemon = getMockLockssDaemon(); pollmanager = new LocalPollManager(); pollmanager.initService(theDaemon); theDaemon.setPollManager(pollmanager); theDaemon.getPluginManager(); testau = PollTestPlugin.PTArchivalUnit.createFromListOfRootUrls(rootV1urls); PluginTestUtil.registerArchivalUnit(testau); String tempDirPath = null; try { tempDirPath = getTempDir().getAbsolutePath() + File.separator; } catch (IOException ex) { fail("unable to create a temporary directory"); } Properties p = new Properties(); p.setProperty(IdentityManager.PARAM_IDDB_DIR, tempDirPath + "iddb"); p.setProperty(LockssRepositoryImpl.PARAM_CACHE_LOCATION, tempDirPath); p.setProperty(ConfigManager.PARAM_PLATFORM_DISK_SPACE_LIST, tempDirPath); p.setProperty(IdentityManager.PARAM_LOCAL_IP, "127.0.0.1"); p.setProperty(ConfigManager.PARAM_NEW_SCHEDULER, "false"); // XXX we need to disable verification of votes because the // voter isn't really there p.setProperty(V1Poll.PARAM_AGREE_VERIFY, "0"); p.setProperty(V1Poll.PARAM_DISAGREE_VERIFY, "0"); ConfigurationUtil.setCurrentConfigFromProps(p); idmgr = theDaemon.getIdentityManager(); idmgr.startService(); // theDaemon.getSchedService().startService(); theDaemon.getHashService().startService(); theDaemon.getDatagramRouterManager().startService(); theDaemon.getRouterManager().startService(); theDaemon.getSystemMetrics().startService(); theDaemon.getActivityRegulator(testau).startService(); theDaemon.setNodeManager(new MockNodeManager(), testau); pollmanager.startService(); }