Clover icon

Magnolia Module EhCache 5.5.9

  1. Project Clover database Mon Nov 25 2019 16:52:57 CET
  2. Package info.magnolia.module.cache.ehcache

File AbstractEhCacheTest.java

 

Coverage histogram

../../../../../img/srcFileCovDistChart10.png
0% of files have more coverage

Code metrics

2
19
3
1
89
46
5
0.26
6.33
3
1.67

Classes

Class Line # Actions
AbstractEhCacheTest 52 19 0% 5 0
1.0100%
 

Contributing tests

No tests hitting this source file were found.

Source view

1    /**
2    * This file Copyright (c) 2013-2018 Magnolia International
3    * Ltd. (http://www.magnolia-cms.com). All rights reserved.
4    *
5    *
6    * This file is dual-licensed under both the Magnolia
7    * Network Agreement and the GNU General Public License.
8    * You may elect to use one or the other of these licenses.
9    *
10    * This file is distributed in the hope that it will be
11    * useful, but AS-IS and WITHOUT ANY WARRANTY; without even the
12    * implied warranty of MERCHANTABILITY or FITNESS FOR A
13    * PARTICULAR PURPOSE, TITLE, or NONINFRINGEMENT.
14    * Redistribution, except as permitted by whichever of the GPL
15    * or MNA you select, is prohibited.
16    *
17    * 1. For the GPL license (GPL), you can redistribute and/or
18    * modify this file under the terms of the GNU General
19    * Public License, Version 3, as published by the Free Software
20    * Foundation. You should have received a copy of the GNU
21    * General Public License, Version 3 along with this program;
22    * if not, write to the Free Software Foundation, Inc., 51
23    * Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
24    *
25    * 2. For the Magnolia Network Agreement (MNA), this file
26    * and the accompanying materials are made available under the
27    * terms of the MNA which accompanies this distribution, and
28    * is available at http://www.magnolia-cms.com/mna.html
29    *
30    * Any modifications to this file must keep this entire header
31    * intact.
32    *
33    */
34    package info.magnolia.module.cache.ehcache;
35   
36    import static org.mockito.Mockito.mock;
37    import static org.mockito.Mockito.when;
38   
39    import info.magnolia.init.DefaultMagnoliaInitPaths;
40    import info.magnolia.init.MagnoliaConfigurationProperties;
41    import info.magnolia.module.ModuleLifecycleContext;
42    import info.magnolia.module.ModuleLifecycleContextImpl;
43    import info.magnolia.module.cache.AbstractCacheTest;
44    import info.magnolia.module.cache.CacheModule;
45    import info.magnolia.test.ComponentsTestUtil;
46   
47    import org.junit.After;
48    import org.junit.Before;
49   
50    import net.sf.ehcache.config.PersistenceConfiguration;
51   
 
52    public class AbstractEhCacheTest extends AbstractCacheTest {
53   
54    protected EhCacheFactory factory;
55    protected ModuleLifecycleContextImpl moduleLifecycleContext = new ModuleLifecycleContextImpl();
56    protected MagnoliaConfigurationProperties magnoliaConfigurationProperties = mock(MagnoliaConfigurationProperties.class);
57   
 
58  26 toggle @Before
59    public void setUp() throws Exception {
60  26 super.setUp();
61  26 DefaultMagnoliaInitPaths magnoliaInitPaths = mock(DefaultMagnoliaInitPaths.class);
62  26 when(magnoliaInitPaths.getRootPath()).thenReturn("/rootPath");
63  26 factory = new EhCacheFactory(null, cacheModule, magnoliaInitPaths, magnoliaConfigurationProperties);
64  26 moduleLifecycleContext.setPhase(ModuleLifecycleContext.PHASE_SYSTEM_STARTUP);
65  26 ComponentsTestUtil.setInstance(CacheModule.class, cacheModule);
66    }
67   
 
68  26 toggle @After
69    public void tearDown() throws Exception {
70  26 super.tearDown();
71  26 ComponentsTestUtil.clear();
72  26 if (factory != null && factory.getWrappedCacheManager() != null) {
73  21 moduleLifecycleContext.setPhase(ModuleLifecycleContext.PHASE_SYSTEM_SHUTDOWN);
74  21 factory.stop(false);
75    }
76    }
77   
 
78  11 toggle protected EhCacheConfiguration newCacheConfigForTest() {
79  11 EhCacheConfiguration config = new EhCacheConfiguration();
80  11 EhCachePersistenceConfiguration persistenceConfiguration = new EhCachePersistenceConfiguration();
81  11 persistenceConfiguration.setStrategy(PersistenceConfiguration.Strategy.LOCALTEMPSWAP);
82  11 persistenceConfiguration.setSynchronousWrites(false);
83    // config.setPersistence(persistenceConfiguration); //not supported, see http://jira.magnolia-cms.com/browse/MGNLCACHE-67
84  11 config.setTimeToIdleSeconds(0);
85  11 config.setTimeToLiveSeconds(0);
86  11 config.setMaxEntriesLocalHeap(1);
87  11 return config;
88    }
89    }