public void GlassLazyString_excepts_gracefully()
        {
            // Arrange
            GlassLazy <LazyTestStub> glassLazy = new GlassLazy <LazyTestStub>(
                () => { throw new Exception("Something Went Badly Wrong"); });
            LazyTestStub lazyStub = glassLazy;

            // Assert
            Assert.Throws <InvalidOperationException>(() => { var result = glassLazy.Value; });
        }
        public void GlassLazyString_implicitly_converts_to_object()
        {
            // Arrange
            GlassLazy <LazyTestStub> glassLazy = new GlassLazy <LazyTestStub>(() => new LazyTestStub {
                Test = "Test String"
            });
            LazyTestStub lazyStub = glassLazy;

            // Assert
            Assert.IsTrue(glassLazy.IsValueCreated);
            Assert.AreEqual("Glass.Mapper.Tests.GlassLazyTestFixture+LazyTestStub", glassLazy.ToString());
            Assert.AreEqual(glassLazy.Value, lazyStub);
            Assert.IsTrue(lazyStub.Test == "Test String");
        }