From bbfe394bb6e1ac8851b3c73826ea6fa5e7a0c94c Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Tue, 15 Mar 2016 15:45:20 +0000 Subject: [PATCH] Bug 16044: Make tests from t/Cache.t pass The timeout does not impact the L1 cache (it would be to time consuming and not really useful to do that for this cache). To simulate the real timeout, we need to flush this L1 cache when needed. It would be also done adding a disable_L1_cache method. Signed-off-by: Jesse Weaver Signed-off-by: Tomas Cohen Arazi Signed-off-by: Brendan A Gallagher --- t/Cache.t | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/t/Cache.t b/t/Cache.t index 4c50a2b409..0548a6202c 100644 --- a/t/Cache.t +++ b/t/Cache.t @@ -43,6 +43,7 @@ SKIP: { # test expiry time in cache $cache->set_in_cache( "timeout", "I AM DATA", 1 ); # expiry time of 1 second sleep 2; + $cache->flush_L1_cache(); is( $cache->get_from_cache("timeout"), undef, "fetching expired item from cache" ); @@ -88,7 +89,9 @@ SKIP: { ); ok( defined($myscalar), 'Created tied scalar' ); is( $$myscalar, 1, 'Constructor called to first initialize' ); + $cache->flush_L1_cache(); is( $$myscalar, 1, 'Data retrieved from cache' ); + $cache->flush_L1_cache(); sleep 2; is( $$myscalar, 2, 'Constructor called again when timeout reached' ); $$myscalar = 5; @@ -119,6 +122,7 @@ SKIP: { is($myhash->{'key2'}, 'surprise', 'Setting hash member worked'); $hash{'key2'} = 'nosurprise'; sleep 2; + $cache->flush_L1_cache(); is($myhash->{'key2'}, 'nosurprise', 'Cache change caught'); @@ -134,6 +138,7 @@ SKIP: { $hash{'anotherkey'} = 'anothervalue'; sleep 2; + $cache->flush_L1_cache(); ok(exists $myhash->{'anotherkey'}, 'Cache reset properly');