comparison UnitTests/MemoryCache.cpp @ 507:c4122c3a47c1

access to oldest item in LRUCache
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 16 Aug 2013 10:24:49 +0200
parents f59e4518fd57
children e7841864c97c
comparison
equal deleted inserted replaced
505:f59e4518fd57 507:c4122c3a47c1
22 r.TagAsMostRecent("b"); 22 r.TagAsMostRecent("b");
23 r.TagAsMostRecent("c"); 23 r.TagAsMostRecent("c");
24 r.TagAsMostRecent("d"); 24 r.TagAsMostRecent("d");
25 r.TagAsMostRecent("c"); 25 r.TagAsMostRecent("c");
26 26
27 ASSERT_EQ("a", r.GetOldest());
27 ASSERT_EQ("a", r.RemoveOldest()); 28 ASSERT_EQ("a", r.RemoveOldest());
29 ASSERT_EQ("b", r.GetOldest());
28 ASSERT_EQ("b", r.RemoveOldest()); 30 ASSERT_EQ("b", r.RemoveOldest());
31 ASSERT_EQ("d", r.GetOldest());
29 ASSERT_EQ("d", r.RemoveOldest()); 32 ASSERT_EQ("d", r.RemoveOldest());
33 ASSERT_EQ("c", r.GetOldest());
30 ASSERT_EQ("c", r.RemoveOldest()); 34 ASSERT_EQ("c", r.RemoveOldest());
31 35
32 ASSERT_TRUE(r.IsEmpty()); 36 ASSERT_TRUE(r.IsEmpty());
37
38 ASSERT_THROW(r.GetOldest(), Orthanc::OrthancException);
39 ASSERT_THROW(r.RemoveOldest(), Orthanc::OrthancException);
33 } 40 }
34 41
35 42
36 TEST(LRU, Payload) 43 TEST(LRU, Payload)
37 { 44 {
56 int p; 63 int p;
57 ASSERT_TRUE(r.Contains("a", p)); ASSERT_EQ(420, p); 64 ASSERT_TRUE(r.Contains("a", p)); ASSERT_EQ(420, p);
58 ASSERT_TRUE(r.Contains("c", p)); ASSERT_EQ(422, p); 65 ASSERT_TRUE(r.Contains("c", p)); ASSERT_EQ(422, p);
59 ASSERT_TRUE(r.Contains("d", p)); ASSERT_EQ(423, p); 66 ASSERT_TRUE(r.Contains("d", p)); ASSERT_EQ(423, p);
60 67
68 ASSERT_EQ("a", r.GetOldest());
69 ASSERT_EQ(420, r.GetOldestPayload());
61 ASSERT_EQ("a", r.RemoveOldest(p)); ASSERT_EQ(420, p); 70 ASSERT_EQ("a", r.RemoveOldest(p)); ASSERT_EQ(420, p);
71
72 ASSERT_EQ("d", r.GetOldest());
73 ASSERT_EQ(423, r.GetOldestPayload());
62 ASSERT_EQ("d", r.RemoveOldest(p)); ASSERT_EQ(423, p); 74 ASSERT_EQ("d", r.RemoveOldest(p)); ASSERT_EQ(423, p);
75
76 ASSERT_EQ("c", r.GetOldest());
77 ASSERT_EQ(422, r.GetOldestPayload());
63 ASSERT_EQ("c", r.RemoveOldest(p)); ASSERT_EQ(422, p); 78 ASSERT_EQ("c", r.RemoveOldest(p)); ASSERT_EQ(422, p);
64 79
65 ASSERT_TRUE(r.IsEmpty()); 80 ASSERT_TRUE(r.IsEmpty());
66 } 81 }
67 82