コード例 #1
0
        public void Constructor_InitializesProperties()
        {
            var connection = Mock.Of <IConnection>();
            var plugin     = new Mock <IPlugin>(MockBehavior.Strict);

            plugin.SetupGet(x => x.Connection)
            .Returns(connection);
            plugin.SetupGet(x => x.FilePath)
            .Returns("a");
            plugin.SetupGet(x => x.Id)
            .Returns("b");
            plugin.SetupGet(x => x.Name)
            .Returns("c");

            using (var noOpDisposePlugin = new NoOpDisposePlugin(plugin.Object))
            {
                Assert.Same(connection, noOpDisposePlugin.Connection);
                Assert.Equal("a", noOpDisposePlugin.FilePath);
                Assert.Equal("b", noOpDisposePlugin.Id);
                Assert.Equal("c", noOpDisposePlugin.Name);
            }

            plugin.Verify(x => x.Connection, Times.Once);
            plugin.Verify(x => x.FilePath, Times.Once);
            plugin.Verify(x => x.Id, Times.Once);
            plugin.Verify(x => x.Name, Times.Once);
        }
コード例 #2
0
        public void Dispose_DoesNotCallPluginDispose()
        {
            var plugin = new Mock <IPlugin>(MockBehavior.Strict);

            using (var noOpDisposePlugin = new NoOpDisposePlugin(plugin.Object))
            {
            }

            plugin.Verify();
        }
コード例 #3
0
        public void BeforeClose_Remove_UnsubscribesFromBeforeClose()
        {
            var plugin = new PluginStub();

            using (var noOpDisposePlugin = new NoOpDisposePlugin(plugin))
            {
                noOpDisposePlugin.BeforeClose -= OnBeforeClose;

                Assert.Equal(1, plugin.BeforeCloseRemoveCallCount);
            }
        }
コード例 #4
0
        public void BeforeClose_Add_SubscribesToBeforeClose()
        {
            var plugin = new PluginStub();

            using (var noOpDisposePlugin = new NoOpDisposePlugin(plugin))
            {
                noOpDisposePlugin.BeforeClose += OnBeforeClose;

                Assert.Equal(1, plugin.BeforeCloseAddCallCount);
            }
        }
コード例 #5
0
        public void Close_ClosesPlugin()
        {
            var plugin = new Mock <IPlugin>(MockBehavior.Strict);

            plugin.Setup(x => x.Close());

            using (var noOpDisposePlugin = new NoOpDisposePlugin(plugin.Object))
            {
                noOpDisposePlugin.Close();

                plugin.Verify(x => x.Close(), Times.Once);
            }
        }