예제 #1
0
        public void ConversionManager_Get()
        {
            var cm = new Mock <ICacheManager>();
            var conversionManager = new ConversionManager(cm.Object);

            //Get non cached
            conversionManager.Get(typeof(string));
            cm.Verify(c => c.Get <Converter>(It.IsAny <string>()), Times.Once);
            cm.Verify(c => c.Set(It.IsAny <string>(), It.IsAny <Converter>(), It.IsAny <uint>()), Times.Once);

            //Get cached
            var cvrt = new Converter(new TypeConverter());

            cm.ResetCalls();
            cm.Setup(c => c.Get <Converter>(It.IsAny <string>())).Returns(cvrt);
            conversionManager.Get(typeof(string));
            cm.Verify(c => c.Get <Converter>(It.IsAny <string>()), Times.Once);
        }