public void Resolve_NullHomeOverrideAndNoEnvVarSet_ReturnsDefaultLocation()
        {
            var config = new GpgConfig {
                GnupghomeOverride = null
            };
            var environment = StubEnvironment.Create()
                              .WithSpecialFolder(Environment.SpecialFolder.ApplicationData, @"C:\Users\Test\AppData")
                              .Build();
            var resolver = new GpgHomedirResolver(config, environment, new MockFileSystem());

            var homeDir = resolver.GetHomeDir();

            homeDir.ShouldBe(@"C:\Users\Test\AppData\gnupg");
        }
        public void Resolve_HomeOverrideSet_ReturnsHomeOverride()
        {
            var config = new GpgConfig {
                GnupghomeOverride = @"C:\Users\Test\.gpg"
            };
            var environment = StubEnvironment.Create()
                              .WithSpecialFolder(Environment.SpecialFolder.ApplicationData, @"C:\Users\Test\AppData")
                              .WithEnvironmentVariable("GNUPGHOME", @"C:\gpg")
                              .Build();
            var resolver = new GpgHomedirResolver(config, environment, new MockFileSystem());

            var homeDir = resolver.GetHomeDir();

            homeDir.ShouldBe(@"C:\Users\Test\.gpg");
        }
예제 #3
0
 public GpgHomedirResolver(GpgConfig config, IEnvironment environment, IFileSystem fileSystem)
 {
     this.config      = config;
     this.environment = environment;
     this.fileSystem  = fileSystem;
 }
예제 #4
0
 public GPG(IGpgTransport gpgTransport, IGpgAgent gpgAgent, IGpgResultVerifier gpgResultVerifier, GpgConfig gpgConfig)
 {
     this.gpgTransport      = gpgTransport;
     this.gpgAgent          = gpgAgent;
     this.gpgResultVerifier = gpgResultVerifier;
     this.enablePinentryFix = gpgConfig.PinentryFix;
 }