Exemplo n.º 1
0
        public void CallUpdateMethod_WhenThePackageAddedAlreadyWithLowerVersion_WithException()
        {
            // Arrange
            var loggerMock  = new Mock <ILogger>();
            var packageMock = new Mock <IPackage>();

            packageMock.Setup(x => x.CompareTo(It.IsAny <IPackage>())).Returns(1);

            var collection = new List <IPackage>()
            {
                packageMock.Object
            };

            var repository = new PackageRepositoryMock(loggerMock.Object, collection);

            // Act & Assert
            Assert.Throws <UpdateMethodCalledException>(() => repository.Add(packageMock.Object));
        }
Exemplo n.º 2
0
        public void DownloadAndUnzip_should_get_latestid_version_and_install()
        {
            // given
            var repository     = new PackageRepositoryMock();
            var packageManager = new PackageManagerMock();

            repository.AddPackage("id-1");
            repository.AddPackage("id-1", null, false);
            repository.AddPackage("id-2");

            var pluginInstaller = new PluginManager(repository, packageManager, _logger);

            // when
            pluginInstaller.DownloadAndUnzip("id-1");

            // then
            Assert.That(packageManager.InstalledIds.Count, Is.EqualTo(1));
            Assert.That(packageManager.InstalledIds, Contains.Item("id-1"));
        }
Exemplo n.º 3
0
        public void CallUpdateMethodAndThrowException_WhenTheAlreadyAddedPackageIsWithLowerVersion()
        {
            // Arrange
            var loggerMock  = new Mock <ILogger>();
            var packageMock = new Mock <IPackage>();

            packageMock.Setup(p => p.Name).Returns("Package");
            packageMock.Setup(p => p.CompareTo(It.IsAny <IPackage>())).Returns(1);

            ICollection <IPackage> packages = new List <IPackage>()
            {
                packageMock.Object
            };

            PackageRepositoryMock packageRepository = new PackageRepositoryMock(loggerMock.Object, packages);

            // Act && Assert
            Assert.Throws <UpdateMethodCalledException>(() => packageRepository.Add(packageMock.Object));
        }
        public void Add_ShouldCallUpdateMethod_WhenThePackegeExists_ButWithLowerVersion_WithException()
        {
            //Arrange
            var loggerMock   = new Mock <ILogger>();
            var packagesMock = new Mock <IPackage>();

            packagesMock.Setup(x => x.CompareTo(It.IsAny <IPackage>())).Returns(1);

            var collection = new List <IPackage>()
            {
                packagesMock.Object
            };

            var sut = new PackageRepositoryMock(loggerMock.Object);

            //Act
            sut.Add(packagesMock.Object);

            //Assert
            Assert.Throws <UpdateMethodCalledException>(() => sut.Add(packagesMock.Object));
        }
Exemplo n.º 5
0
        public void List_should_only_return_packages_for_remy_plugin_tags()
        {
            // given
            var repository     = new PackageRepositoryMock();
            var packageManager = new PackageManagerMock();

            repository.AddPackage("id-1");
            repository.AddPackage("id-2");
            repository.AddPackage("id-3");
            repository.AddPackage("not remy", "other-tag");
            repository.AddPackage("not latest version", null, false);

            var pluginInstaller = new PluginManager(repository, packageManager, _logger);

            // when
            IEnumerable <IPackage> list = pluginInstaller.List();

            // then
            Assert.That(list.Count(), Is.EqualTo(3));
            Assert.That(list.FirstOrDefault().Id, Is.EqualTo("id-1"));
        }