public void IfTwoClassesWithDifferentNamesAreNotEqualWhenPackage2IsObject() { var package1 = new Package(); Object package2 = new Package(); package1.Name = "test"; Assert.IsFalse(package1.Equals(package2)); }
public void IfTwoClassesWithTheSameNameAreEqual() { var package1 = new Package(); var package2 = new Package(); package1.Name = "test"; package2.Name = "test"; Assert.IsTrue(package1.Equals(package2)); }
public void IfTwoClassesWithDifferentNamesAreNotEqual() { var package1 = new Package(); var package2 = new Package(); package1.Name = "test"; package2.Name = "test2"; Assert.IsFalse(package1.Equals(package2)); }
public void IfTwoClassesWithPackage2IsBeforePackage1GiveCompareToOf1() { var package1 = new Package(); var package2 = new Package(); package1.Name = "test2"; package2.Name = "test1"; Assert.AreEqual(1, package1.CompareTo(package2)); }
public Package GetPackageFromDirectoryName(string directoryName) { this.Log().Debug("Get packagename for directory: {0}", directoryName); var package = new Package(); var versionMatch = _packageVersionRegexp.Match(directoryName); package.Name = directoryName.Substring(0, versionMatch.Index); package.InstalledVersion = versionMatch.Groups[1].Value.TrimStart('.'); package.IsPreRelease = versionMatch.Groups.Count == 3 && !string.IsNullOrWhiteSpace(versionMatch.Groups[2].Value); return package; }
public bool Equals(Package other) { if (ReferenceEquals(null, other)) return false; if (ReferenceEquals(this, other)) return true; return Equals(other.Name, Name); }
private Package GetPackageFromDirectoryName(string directoryName) { var package = new Package(); var versionMatch = _packageVersionRegexp.Match(directoryName); package.Name = directoryName.Substring(0, versionMatch.Index); package.InstalledVersion = directoryName.Substring(versionMatch.Index + 1); return package; }
/// <summary> /// Reloads information about installed packages from /// chocolatey lib directory. /// </summary> public IList<Package> ReloadFromDir() { _instaledPackages = new List<Package>(); var expandedLibDirectory = Environment.ExpandEnvironmentVariables(_settings.ChocolateyLibDirectory); var directories = Directory.GetDirectories(expandedLibDirectory); foreach (string directoryPath in directories) { string[] directoryPathSegments = directoryPath.Split(_segmentDelim); string directoryName = directoryPathSegments.Last(); Package package = GetPackageFromDirectoryName(directoryName); _instaledPackages.Add(package); } //add chocolatey by default because else this won't work anyway _chocolateyService.Help(); var chocoPackage = new Package { Name = "chocolatey", InstalledVersion = chocoVersion }; _instaledPackages.Add(chocoPackage); return _instaledPackages; }
private void InstallOrUninstallPackage(Package package) { if (package.IsInstalled) { var result = MessageBox.Show(this, string.Format(strings.really_uninstall_package_msg, package.Name), strings.really_uninstall_package_title, MessageBoxButtons.YesNo); if (result == System.Windows.Forms.DialogResult.Yes) { DisableUserInteraction(); txtPowershellOutput.Visible = true; SetStatus(string.Format(strings.uninstalling, package.Name)); _packageService.UninstallPackage(package.Name); } } else { DisableUserInteraction(); txtPowershellOutput.Visible = true; SetStatus(string.Format(strings.installing, package.Name)); _packageService.InstallPackage(package.Name); } }
/// <summary> /// Reloads information about installed packages from /// chocolatey lib directory. /// </summary> public IList<Package> ReloadFromDir() { this.Log().Debug("Reloadfromdir"); _instaledPackages = new List<Package>(); var expandedLibDirectory = Environment.ExpandEnvironmentVariables(_settingsService.ChocolateyLibDirectory); var directories = _fileStorageService.GetDirectories(expandedLibDirectory); foreach (var directoryPath in directories) { this.Log().Debug("Found directory: {0}", directoryPath); var directoryPathSegments = directoryPath.Split(_segmentDelim); var directoryName = directoryPathSegments.Last(); var package = GetPackageFromDirectoryName(directoryName); _instaledPackages.Add(package); } //add chocolatey by default because else this won't work anyway _chocolateyService.Help(); var chocoPackage = new Package { Name = "chocolatey", InstalledVersion = _chocoVersion }; this.Log().Debug("Chocolatey package added: {0}", chocoPackage); _instaledPackages.Add(chocoPackage); return _instaledPackages; }
public void IfToStringReturnName() { var package = new Package(); package.Name = "test"; Assert.AreEqual("test",package.ToString()); }
public void IfTwoClassesWithTheSameNameGiveCompareToOf0() { var package1 = new Package(); var package2 = new Package(); package1.Name = "test"; package2.Name = "test"; Assert.AreEqual(0,package1.CompareTo(package2)); }
public void IfIsInstalledIsTrueWhenThereIsAVersion() { var package = new Package { InstalledVersion = "0.1.1" }; Assert.IsTrue(package.IsInstalled); }
public void IfIsInstalledIsFalseWhenVersionIsNotAvailable() { var package = new Package { InstalledVersion = strings.not_available }; Assert.IsFalse(package.IsInstalled); }
public void GivesHashCodeOfName() { var package1 = new Package(); package1.Name = "test2"; Assert.AreEqual("test2".GetHashCode(), package1.GetHashCode()); }
public void IfGetPackageFromDirectoryNameReceivesNameThatIsValidPerRecomendations(string filename, string expectedPackageName, string expectedVersion, bool prerelease) { var expectedPackage = new Package { Name = expectedPackageName, InstalledVersion = expectedVersion, IsPreRelease = prerelease }; var actualPackage = _helper.GetPackageFromDirectoryName(filename); Assert.AreEqual(expectedPackage.Name, actualPackage.Name); Assert.AreEqual(expectedPackage.InstalledVersion, actualPackage.InstalledVersion); Assert.AreEqual(expectedPackage.IsPreRelease, actualPackage.IsPreRelease); }