root/coldbox/trunk/testing/tests/cases/cache/util/cacheStatsTest.cfc @ 1647

Revision 1647, 4.1 kB (checked in by lmajano, 5 years ago)

cleanup + tons of testing.

Line 
1<cfcomponent name="cacheStatsTest" extends="coldbox.testing.tests.resources.baseMockCase">
2        <!--- setup and teardown --->
3       
4        <cffunction name="setUp" returntype="void" access="public">
5                <cfscript>
6                        super.setup();
7                        cm = mockFactory.createMock('coldbox.system.cache.cacheManager');
8                        stats = createObject("component","coldbox.system.cache.util.cacheStats").init(cm);             
9                </cfscript>
10        </cffunction>
11
12        <cffunction name="tearDown" returntype="void" access="public">
13                <!--- Any code needed to return your environment to normal goes here --->
14        </cffunction>
15       
16        <!--- Begin specific tests --->
17       
18        <cffunction name="testclearStats" access="public" returnType="void">
19                <cfscript>
20                        stats.clearStats();
21                        assertTrue(stats.getHits() eq 0);
22                        assertTrue(stats.getMisses() eq 0);
23                        assertTrue(stats.getEvictionCount() eq 0);
24                        assertTrue(stats.getGarbageCollections() eq 0);                 
25                </cfscript>
26        </cffunction>           
27       
28        <cffunction name="testevictionHit" access="public" returnType="void">
29                <cfscript>
30                        AssertEquals( stats.getEvictionCount(), 0);
31                        stats.evictionHit();
32                        AssertEquals( stats.getEvictionCount(), 1);
33                </cfscript>
34        </cffunction>           
35       
36        <cffunction name="testgcHit" access="public" returnType="void">
37                <cfscript>
38                        AssertEquals( stats.getGarbageCollections(), 0);
39                        stats.gcHit();
40                        AssertEquals( stats.getGarbageCollections(), 1);
41                </cfscript>
42        </cffunction>           
43               
44        <cffunction name="testgetCachePerformanceRatio" access="public" returnType="void">
45                <cfscript>
46                        hits = 100;
47                        misses = 10;
48                        requests = hits+misses;
49                       
50                        stats.setHits(hits);
51                        stats.setMisses(misses);
52                        ratio = stats.getCachePerformanceRatio();
53                       
54                        AssertEquals(ratio, (hits/requests)*100 );
55                </cfscript>
56        </cffunction>           
57       
58        <cffunction name="testgetEvictionCount" access="public" returnType="void">
59                <cfscript>
60                        AssertEquals( stats.getEvictionCount(), 0);
61                </cfscript>
62        </cffunction>           
63       
64        <cffunction name="testgetGarbageCollections" access="public" returnType="void">
65                <cfscript>
66                        AssertEquals( stats.getGarbageCollections(), 0);
67                </cfscript>
68        </cffunction>           
69       
70        <cffunction name="testgethits" access="public" returnType="void">
71                <cfscript>
72                        AssertEquals( stats.getHits(), 0);
73                        stats.setHits(10);
74                        AssertEquals( stats.getHits(), 10);
75                </cfscript>
76        </cffunction>   
77                <cffunction name="testgetmisses" access="public" returnType="void">
78                <cfscript>
79                        AssertEquals( stats.getMisses(), 0);
80                        stats.setMisses(10);
81                        AssertEquals( stats.getMisses(), 10);
82                </cfscript>
83        </cffunction>           
84       
85        <cffunction name="testgetlastReapDatetime" access="public" returnType="void">
86                <cfscript>
87                        AssertTrue( isDate(stats.getlastReapDatetime()) );
88                </cfscript>
89        </cffunction>           
90       
91        <cffunction name="testgetObjectCount" access="public" returnType="void">
92                <cfscript>
93                        cm.mockMethod('getSize').returns(100);
94                        AssertEquals( stats.getObjectCount(),100);
95                </cfscript>
96        </cffunction>           
97       
98        <cffunction name="testhit" access="public" returnType="void">
99                <cfscript>
100                        AssertEquals( stats.getHits(), 0);
101                        stats.hit();
102                        AssertEquals( stats.getHits(), 1);
103                        stats.hit();
104                        AssertEquals( stats.getHits(), 2);
105                </cfscript>
106        </cffunction>           
107       
108        <cffunction name="testmiss" access="public" returnType="void">
109                <cfscript>
110                        AssertEquals( stats.getMisses(), 0);
111                        stats.miss();
112                        AssertEquals( stats.getMisses(), 1);
113                        stats.miss();
114                        AssertEquals( stats.getMisses(), 2);
115                </cfscript>
116        </cffunction>           
117       
118        <cffunction name="testsetEvictionCount" access="public" returnType="void">
119                <cfscript>
120                        stats.setEvictionCount(40);
121                        AssertEquals(stats.getEvictionCount(),40);
122                </cfscript>
123        </cffunction>           
124       
125        <cffunction name="testsetGarbageCollections" access="public" returnType="void">
126                <cfscript>
127                        stats.setGarbageCollections(40);
128                        AssertEquals(stats.getGarbageCollections(),40);
129                </cfscript>
130        </cffunction>           
131       
132       
133        <cffunction name="testsetlastReapDatetime" access="public" returnType="void">
134                <cfscript>
135                        myDate = now();
136                       
137                        stats.setlastReapDatetime(mydate);
138                       
139                        AssertEquals(myDate, stats.getLastReapDateTime());
140                </cfscript>
141        </cffunction>           
142               
143
144</cfcomponent>
145
Note: See TracBrowser for help on using the browser.