Example #1
0
        public void MustReturnFactoryMethodResultWhenTypeDoesntExist()
        {
            var newContext      = new AnotherFakeContext();
            var doesExistBefore = _sut.TryGet <AnotherFakeContext>(out var ctx);

            Assert.False(doesExistBefore);
            Assert.Null(ctx);
            var c1New          = _sut.GetOrAdd(() => newContext);
            var doesExistAfter = _sut.TryGet <AnotherFakeContext>(out var ctx2);

            Assert.Equal(newContext, c1New);
            Assert.Same(newContext, c1New);
            Assert.Equal(newContext, ctx2);
            Assert.True(doesExistAfter);
        }