public void AssignInstallerCorrectly_WhenPassedParameterIsValid()
        {
            // arrange and act
            var installerStub = new Mock <IInstaller <IPackage> >();
            var packageStub   = new Mock <IPackage>();

            installerStub.Setup(x => x.Operation);
            var installCommand = new FakeInstallCommand(installerStub.Object, packageStub.Object);

            // assert
            Assert.AreSame(installerStub.Object, installCommand.Installer);
        }
        public void SetPropertyOperationOfTheInstallerWithCorrectValue_WhenCalledWithValidParameters()
        {
            // Arrange
            var installerMock = new Mock <IInstaller <IPackage> >();
            var packageMock   = new Mock <IPackage>();

            // Act
            var installCommand = new FakeInstallCommand(installerMock.Object, packageMock.Object);

            // Assert
            installerMock.VerifySet(x => x.Operation = InstallerOperation.Install, Times.Once());
        }
        public void SetCorrectly_WhenPassedValidPackage()
        {
            // Arrange
            var installerMock = new Mock <IInstaller <IPackage> >();
            var packageMock   = new Mock <IPackage>();

            // Act
            var installCommand = new FakeInstallCommand(installerMock.Object, packageMock.Object);

            // Assert
            Assert.AreSame(packageMock.Object, installCommand.Package);
        }
예제 #4
0
        public void AssingProvidedInstallersOperationPropertyToInstallerOperationInstall_WhenPassedPArametersAreValid()
        {
            // arrange
            var installerStub = new Mock <IInstaller <IPackage> >();
            var packageStub   = new Mock <IPackage>();

            installerStub.SetupSet(x => x.Operation = It.Is <InstallerOperation>(y => y == InstallerOperation.Install));
            // act
            var installCommand = new FakeInstallCommand(installerStub.Object, packageStub.Object);

            // assert
            installerStub.VerifySet(x => x.Operation = It.Is <InstallerOperation>(y => y == InstallerOperation.Install));
        }
예제 #5
0
        public void SetPackageCorrectly_WhenObjectIsConstructed()
        {
            // arrange
            var installerStub = new Mock <IInstaller <IPackage> >();
            var packageStub   = new Mock <IPackage>();

            installerStub.Setup(x => x.Operation);
            // act
            var installCommand = new FakeInstallCommand(installerStub.Object, packageStub.Object);

            // assert
            Assert.AreSame(packageStub.Object, installCommand.Package);
        }
예제 #6
0
        public void CallPerformOperationWithPassedTheRespectivePackage_WhenCalledWithValidParameters()
        {
            // Arrange
            var installerMock = new Mock <IInstaller <IPackage> >();
            var packageMock   = new Mock <IPackage>();

            var installCommand = new FakeInstallCommand(installerMock.Object, packageMock.Object);

            // Act
            installCommand.Execute();

            // Assert
            installerMock.Verify(x => x.PerformOperation(packageMock.Object), Times.Once());
        }