@@ -118,7 +118,51 @@ public void WhenItemIsAddedThenRetrievedHitRatioIsHalf()
118118 lru . GetOrAdd ( 1 , valueFactory . Create ) ;
119119 bool result = lru . TryGet ( 1 , out var value ) ;
120120
121+ #pragma warning disable CS0618 // Type or member is obsolete
121122 lru . HitRatio . Should ( ) . Be ( 0.5 ) ;
123+ #pragma warning restore CS0618 // Type or member is obsolete
124+ }
125+
126+ [ Fact ]
127+ public void MetricsAreEnabled ( )
128+ {
129+ lru . Metrics . IsEnabled . Should ( ) . BeTrue ( ) ;
130+ }
131+
132+ [ Fact ]
133+ public void WhenItemIsAddedThenRetrievedMetricHitRatioIsHalf ( )
134+ {
135+ lru . GetOrAdd ( 1 , valueFactory . Create ) ;
136+ bool result = lru . TryGet ( 1 , out var value ) ;
137+
138+ lru . Metrics . HitRatio . Should ( ) . Be ( 0.5 ) ;
139+ }
140+
141+ [ Fact ]
142+ public void WhenItemIsAddedThenRetrievedMetricHitsIs1 ( )
143+ {
144+ lru . GetOrAdd ( 1 , valueFactory . Create ) ;
145+ bool result = lru . TryGet ( 1 , out var value ) ;
146+
147+ lru . Metrics . Hits . Should ( ) . Be ( 1 ) ;
148+ }
149+
150+ [ Fact ]
151+ public void WhenItemIsAddedThenRetrievedMetricTotalIs2 ( )
152+ {
153+ lru . GetOrAdd ( 1 , valueFactory . Create ) ;
154+ bool result = lru . TryGet ( 1 , out var value ) ;
155+
156+ lru . Metrics . Total . Should ( ) . Be ( 2 ) ;
157+ }
158+
159+ [ Fact ]
160+ public void WhenItemDoesNotExistTryGetIncrementsMiss ( )
161+ {
162+ lru . GetOrAdd ( 1 , valueFactory . Create ) ;
163+ bool result = lru . TryGet ( 1 , out var value ) ;
164+
165+ lru . Metrics . Misses . Should ( ) . Be ( 1 ) ;
122166 }
123167
124168 [ Fact ]
0 commit comments