1+ using System ;
2+ using NUnit . Framework ;
3+ using ServiceStack . CacheAccess . Providers ;
4+
5+ namespace ServiceStack . CacheAccess . Memcached . Tests
6+ {
7+ [ TestFixture ]
8+ public class MemoryCacheClientTests
9+ {
10+ MemoryCacheClient cache ;
11+
12+ [ TestFixtureSetUp ]
13+ public void TestFixtureSetUp ( )
14+ {
15+ cache = new MemoryCacheClient ( ) ;
16+ }
17+
18+ [ TestFixtureTearDown ]
19+ public void TestFixtureTearDown ( )
20+ {
21+ cache . Dispose ( ) ;
22+ cache = null ;
23+ }
24+
25+ [ Test ]
26+ public void Get_before_Add_local_DateTime_expires ( )
27+ {
28+ cache . FlushAll ( ) ;
29+ string key = "a" ;
30+ string value = "aValue" ;
31+ cache . Add ( key , value , DateTime . Now . AddMilliseconds ( 200 ) ) ;
32+ var retVal = cache . Get ( key ) ;
33+ Assert . That ( retVal , Is . SameAs ( value ) ) ;
34+ }
35+
36+ [ Test ]
37+ public void Get_after_Add_local_DateTime_expires ( )
38+ {
39+ cache . FlushAll ( ) ;
40+ string key = "a" ;
41+ string value = "aValue" ;
42+ cache . Add ( key , value , DateTime . Now . AddMilliseconds ( 200 ) ) ;
43+ System . Threading . Thread . Sleep ( 250 ) ;
44+ var retVal = cache . Get ( key ) ;
45+ Assert . That ( retVal , Is . Null ) ;
46+ }
47+
48+
49+ [ Test ]
50+ public void Get_before_Add_utc_DateTime_expires ( )
51+ {
52+ cache . FlushAll ( ) ;
53+ string key = "a" ;
54+ string value = "aValue" ;
55+ cache . Add ( key , value , DateTime . UtcNow . AddMilliseconds ( 200 ) ) ;
56+ var retVal = cache . Get ( key ) ;
57+ Assert . That ( retVal , Is . SameAs ( value ) ) ;
58+ }
59+
60+ [ Test ]
61+ public void Get_after_Add_utc_DateTime_expires ( )
62+ {
63+ cache . FlushAll ( ) ;
64+ string key = "a" ;
65+ string value = "aValue" ;
66+ cache . Add ( key , value , DateTime . UtcNow . AddMilliseconds ( 200 ) ) ;
67+ System . Threading . Thread . Sleep ( 250 ) ;
68+ var retVal = cache . Get ( key ) ;
69+ Assert . That ( retVal , Is . Null ) ;
70+ }
71+
72+ [ Test ]
73+ public void Get_before_Add_TimeSpan_expires ( )
74+ {
75+ cache . FlushAll ( ) ;
76+ string key = "a" ;
77+ string value = "aValue" ;
78+ cache . Add ( key , value , TimeSpan . FromMilliseconds ( 200 ) ) ;
79+ var retVal = cache . Get ( key ) ;
80+ Assert . That ( retVal , Is . SameAs ( value ) ) ;
81+ }
82+
83+ [ Test ]
84+ public void Get_after_Add_TimeSpan_expires ( )
85+ {
86+ cache . FlushAll ( ) ;
87+ string key = "a" ;
88+ string value = "aValue" ;
89+ cache . Add ( key , value , TimeSpan . FromMilliseconds ( 200 ) ) ;
90+ System . Threading . Thread . Sleep ( 250 ) ;
91+ var retVal = cache . Get ( key ) ;
92+ Assert . That ( retVal , Is . Null ) ;
93+ }
94+
95+ [ Test ]
96+ public void Get_before_Set_local_DateTime_expires ( )
97+ {
98+ cache . FlushAll ( ) ;
99+ string key = "a" ;
100+ string value = "aValue" ;
101+ cache . Set ( key , value , DateTime . Now . AddMilliseconds ( 200 ) ) ;
102+ var retVal = cache . Get ( key ) ;
103+ Assert . That ( retVal , Is . SameAs ( value ) ) ;
104+ }
105+
106+ [ Test ]
107+ public void Get_after_Set_local_DateTime_expires ( )
108+ {
109+ cache . FlushAll ( ) ;
110+ string key = "a" ;
111+ string value = "aValue" ;
112+ cache . Set ( key , value , DateTime . Now . AddMilliseconds ( 200 ) ) ;
113+ System . Threading . Thread . Sleep ( 250 ) ;
114+ var retVal = cache . Get ( key ) ;
115+ Assert . That ( retVal , Is . Null ) ;
116+ }
117+
118+ [ Test ]
119+ public void Get_before_Set_utc_DateTime_expires ( )
120+ {
121+ cache . FlushAll ( ) ;
122+ string key = "a" ;
123+ string value = "aValue" ;
124+ cache . Set ( key , value , DateTime . UtcNow . AddMilliseconds ( 200 ) ) ;
125+ var retVal = cache . Get ( key ) ;
126+ Assert . That ( retVal , Is . SameAs ( value ) ) ;
127+ }
128+
129+ [ Test ]
130+ public void Get_after_Set_utc_DateTime_expires ( )
131+ {
132+ cache . FlushAll ( ) ;
133+ string key = "a" ;
134+ string value = "aValue" ;
135+ cache . Set ( key , value , DateTime . UtcNow . AddMilliseconds ( 200 ) ) ;
136+ System . Threading . Thread . Sleep ( 250 ) ;
137+ var retVal = cache . Get ( key ) ;
138+ Assert . That ( retVal , Is . Null ) ;
139+ }
140+
141+ [ Test ]
142+ public void Get_before_Set_TimeSpan_expires ( )
143+ {
144+ cache . FlushAll ( ) ;
145+ string key = "a" ;
146+ string value = "aValue" ;
147+ cache . Set ( key , value , TimeSpan . FromMilliseconds ( 200 ) ) ;
148+ var retVal = cache . Get ( key ) ;
149+ Assert . That ( retVal , Is . SameAs ( value ) ) ;
150+ }
151+
152+ [ Test ]
153+ public void Get_after_Set_TimeSpan_expires ( )
154+ {
155+ cache . FlushAll ( ) ;
156+ string key = "a" ;
157+ string value = "aValue" ;
158+ cache . Set ( key , value , TimeSpan . FromMilliseconds ( 200 ) ) ;
159+ System . Threading . Thread . Sleep ( 250 ) ;
160+ var retVal = cache . Get ( key ) ;
161+ Assert . That ( retVal , Is . Null ) ;
162+ }
163+
164+ [ Test ]
165+ public void Get_before_Replace_local_DateTime_expires ( )
166+ {
167+ cache . FlushAll ( ) ;
168+ string key = "a" ;
169+ string value = "aValue" ;
170+ cache . Set ( key , value ) ;
171+ cache . Replace ( key , value , DateTime . Now . AddMilliseconds ( 200 ) ) ;
172+ var retVal = cache . Get ( key ) ;
173+ Assert . That ( retVal , Is . SameAs ( value ) ) ;
174+ }
175+
176+ [ Test ]
177+ public void Get_after_Replace_local_DateTime_expires ( )
178+ {
179+ cache . FlushAll ( ) ;
180+ string key = "a" ;
181+ string value = "aValue" ;
182+ cache . Set ( key , value ) ;
183+ cache . Replace ( key , value , DateTime . Now . AddMilliseconds ( 200 ) ) ;
184+ System . Threading . Thread . Sleep ( 250 ) ;
185+ var retVal = cache . Get ( key ) ;
186+ Assert . That ( retVal , Is . Null ) ;
187+ }
188+
189+ [ Test ]
190+ public void Get_before_Replace_utc_DateTime_expires ( )
191+ {
192+ cache . FlushAll ( ) ;
193+ string key = "a" ;
194+ string value = "aValue" ;
195+ cache . Set ( key , value ) ;
196+ cache . Replace ( key , value , DateTime . UtcNow . AddMilliseconds ( 200 ) ) ;
197+ var retVal = cache . Get ( key ) ;
198+ Assert . That ( retVal , Is . SameAs ( value ) ) ;
199+ }
200+
201+ [ Test ]
202+ public void Get_after_Replace_utc_DateTime_expires ( )
203+ {
204+ cache . FlushAll ( ) ;
205+ string key = "a" ;
206+ string value = "aValue" ;
207+ cache . Set ( key , value ) ;
208+ cache . Replace ( key , value , DateTime . UtcNow . AddMilliseconds ( 200 ) ) ;
209+ System . Threading . Thread . Sleep ( 250 ) ;
210+ var retVal = cache . Get ( key ) ;
211+ Assert . That ( retVal , Is . Null ) ;
212+ }
213+
214+ [ Test ]
215+ public void Get_before_Replace_TimeSpan_expires ( )
216+ {
217+ cache . FlushAll ( ) ;
218+ string key = "a" ;
219+ string value = "aValue" ;
220+ cache . Set ( key , value ) ;
221+ cache . Replace ( key , value , TimeSpan . FromMilliseconds ( 200 ) ) ;
222+ var retVal = cache . Get ( key ) ;
223+ Assert . That ( retVal , Is . SameAs ( value ) ) ;
224+ }
225+
226+ [ Test ]
227+ public void Get_after_Replace_TimeSpan_expires ( )
228+ {
229+ cache . FlushAll ( ) ;
230+ string key = "a" ;
231+ string value = "aValue" ;
232+ cache . Set ( key , value ) ;
233+ cache . Replace ( key , value , TimeSpan . FromMilliseconds ( 200 ) ) ;
234+ System . Threading . Thread . Sleep ( 250 ) ;
235+ var retVal = cache . Get ( key ) ;
236+ Assert . That ( retVal , Is . Null ) ;
237+ }
238+ }
239+ }
0 commit comments