public void ShouldResetCache()
        {
            // Arrange
            var cacheManager = new CacheManager();
            cacheManager.IsCacheEnabled = true;

            cacheManager.UpdateCache(typeof(int), typeof(double), isConvertable: true, conversionAttempt: new CastAttempt());

            var cacheResultBeforeReset = cacheManager.TryGetCachedValue(typeof(int), typeof(double));

            // Act
            cacheManager.Reset();

            // Assert
            var cacheResultAfterReset = cacheManager.TryGetCachedValue(typeof(int), typeof(double));

            cacheResultBeforeReset.ConversionAttempt.Should().BeOfType(typeof(CastAttempt));
            cacheResultBeforeReset.IsCached.Should().BeTrue();

            cacheResultAfterReset.ConversionAttempt.Should().BeNull();
            cacheResultAfterReset.IsCached.Should().BeFalse();
        }