public virtual IEnumerable <NuGetCertificate> GetAllCertificates(StoreName name, StoreLocation location) { var store = new X509Store(name, location); store.Open(OpenFlags.ReadOnly); return(store .Certificates .Find(X509FindType.FindByTimeValid, DateTime.Now, validOnly: false) .Cast <X509Certificate2>() .Select(c => NuGetCertificate.CreateOrDefault(c)) .Where(c => c != null)); }
public void GivenAValidTrailerAndNoOtherOUFields_ItReturnsNuGetCertificateWithOtherFieldsNull() { var cert = NuGetCertificate.CreateOrDefault( null, subjectName: "CN=name, OU=nuget-services"); Assert.NotNull(cert); Assert.Null(cert.Environment); Assert.Null(cert.Purpose); Assert.Null(cert.Target); Assert.Empty(cert.Subtargets); Assert.Equal("name", cert.Name); }
public void GivenThirdOUFieldProvided_ItIsTheTarget() { var cert = NuGetCertificate.CreateOrDefault( null, subjectName: "CN=name, OU=target, OU=purpose, OU=env, OU=nuget-services"); Assert.NotNull(cert); Assert.Equal("env", cert.Environment); Assert.Equal("purpose", cert.Purpose); Assert.Equal("target", cert.Target); Assert.Empty(cert.Subtargets); Assert.Equal("name", cert.Name); }
public void GivenFurtherOUFieldsProvided_TheyAreTheSubtargetsInReverseOrder() { var cert = NuGetCertificate.CreateOrDefault( null, subjectName: "CN=name, OU=grandchild, OU=child, OU=parent, OU=target, OU=purpose, OU=env, OU=nuget-services"); Assert.NotNull(cert); Assert.Equal("env", cert.Environment); Assert.Equal("purpose", cert.Purpose); Assert.Equal("target", cert.Target); Assert.Equal( new [] { "parent", "child", "grandchild" }, cert.Subtargets.ToArray()); Assert.Equal("name", cert.Name); }
public void GivenAnInvalidName_ItReturnsNull(string subjectName) { var cert = NuGetCertificate.CreateOrDefault(null, subjectName); Assert.Null(cert); }