コード例 #1
0
 public void IsRstored_NotMongoConnection_ReturnFalse(
     [Frozen] IMongoPathsProvider mongoPathsProvider,
     [Frozen] IProcessRunner processRunner,
     [Greedy] MongoRestoreService sut)
 {
     sut.Invoking(x => x.IsRestored("sql")).ShouldThrow <FormatException>();
 }
コード例 #2
0
 public void IsRstored_NoConnection_ReturnFalse(
     [Frozen] IMongoPathsProvider mongoPathsProvider,
     [Frozen] IProcessRunner processRunner,
     [Greedy] MongoRestoreService sut)
 {
     sut.IsRestored("wrongConnection").Should().BeFalse();
 }
コード例 #3
0
 public void RestoreDatabase_MongoConnection_RunRestoreWithArguments(
     string dumpDirectory,
     [Frozen] IMongoPathsProvider mongoPathsProvider,
     [Frozen] IProcessRunner processRunner,
     [Greedy] MongoRestoreService sut)
 {
     //Arrange
     mongoPathsProvider.GetDumpDirectory(Arg.Is("analytics")).Returns(dumpDirectory);
     //Act
     sut.RestoreDatabase("analytics");
     //Assert
     processRunner.Received(1).Run(Arg.Any <string>(), Arg.Is <string>(x => x.Contains("--host localhost:27017") && x.Contains("--db habitat_local_analytics") && x.Contains("--dir ")));
 }
コード例 #4
0
 public void RestoreDatabase_MongoConnection_RunRestoreProcessFile(
     string mongoRestorePath,
     [Frozen] IMongoPathsProvider mongoPathsProvider,
     [Frozen] IProcessRunner processRunner,
     [Greedy] MongoRestoreService sut)
 {
     //Arrange
     mongoPathsProvider.MongoRestoreExe.Returns(mongoRestorePath);
     //Act
     sut.RestoreDatabase("analytics");
     //Assert
     processRunner.Received(1).Run(mongoPathsProvider.MongoRestoreExe, Arg.Any <string>());
 }
コード例 #5
0
        public void RestoreDatabases_Call_RestoreAllDumps(
            [Frozen] IMongoPathsProvider mongoPathsProvider,
            [Frozen] IProcessRunner processRunner,
            [Greedy] MongoRestoreService sut
            )
        {
            //Arrange
            var dumpNames = new List <string>()
            {
                "analytics", "tracking.live", "tracking.history", "tracking.contact"
            };
            var dbNames = new List <string>()
            {
                "habitat_local_analytics", "habitat_local_tracking_live", "habitat_local_tracking_history", "habitat_local_tracking_contact"
            };

            mongoPathsProvider.GetDumpNames().Returns(dumpNames);

            //Act
            sut.RestoreDatabases();
            //Assert
            dbNames.ForEach(db => processRunner.Received().Run(Arg.Any <string>(), Arg.Is <string>(arg => arg.Contains($"--db {db}"))));
        }
コード例 #6
0
 public MongoRestoreService(IMongoPathsProvider mongoFileProvider, IProcessRunner processRunner)
 {
     this.mongoFileProvider = mongoFileProvider;
     this.processRunner     = processRunner;
 }
コード例 #7
0
ファイル: MongoRestoreService.cs プロジェクト: kamsar/Habitat
 public MongoRestoreService(IMongoPathsProvider mongoFileProvider, IProcessRunner processRunner)
 {
   this.mongoFileProvider = mongoFileProvider;
   this.processRunner = processRunner;
 }