コード例 #1
0
 public void LaunchDialog_CustomUrlSourceWontBeFound()
 {
     using (var source = new TemporaryFolder("CloneDialogTest"))
     {
         Directory.CreateDirectory(source.Combine("repo1"));
         HgRepository.CreateRepositoryInExistingDir(source.Combine("repo1"), new NullProgress());
         LaunchCustomUrl(@"somewhereElse");
     }
 }
コード例 #2
0
ファイル: ClonerTests.cs プロジェクト: JessieGriffin/chorus
 public void GetDirectoriesWithMecurialRepos_OneDriveOneRepo_ReturnsRepoPath()
 {
     using (var usb = new TemporaryFolder("clonetestUsb"))
     {
         Directory.CreateDirectory(usb.Combine("test"));
         Directory.CreateDirectory(usb.Combine("testrepo",".hg"));
         var model = new CloneFromUsb();
         var drives = new List<IUsbDriveInfo>();
         drives.Add(new UsbDriveInfoForTests(usb.Path));
         model.DriveInfoRetriever = new RetrieveUsbDriveInfoForTests(drives);
         Assert.AreEqual(1, model.GetDirectoriesWithMecurialRepos().Count());
         Assert.AreEqual(usb.Combine("testrepo"), model.GetDirectoriesWithMecurialRepos().First());
     }
 }
コード例 #3
0
ファイル: ClonerTests.cs プロジェクト: JessieGriffin/chorus
 public void GetDirectoriesWithMecurialRepos_TwoRepos_ReturnsOnlyUnfilteredPath()
 {
     using (var usb = new TemporaryFolder("clonetestUsb"))
     {
         Directory.CreateDirectory(usb.Combine("test1"));
         Directory.CreateDirectory(usb.Combine("test1", ".hg"));
         Directory.CreateDirectory(usb.Combine("testSKIP"));
         Directory.CreateDirectory(usb.Combine("testSKIP", ".hg"));
         var model = new CloneFromUsb();
         var drives = new List<IUsbDriveInfo>();
         drives.Add(new UsbDriveInfoForTests(usb.Path));
         model.DriveInfoRetriever = new RetrieveUsbDriveInfoForTests(drives);
         model.ProjectFilter = path => !path.Contains("SKIP");
         Assert.AreEqual(1, model.GetDirectoriesWithMecurialRepos().Count());
     }
 }
コード例 #4
0
		public TempLiftFile(string fileName, TemporaryFolder parentFolder, string xmlOfEntries, string claimedLiftVersion)
			: base(true) // True means "I'll set the the pathname, thank you very much." Otherwise, the temp one 'false' creates will stay forever, and fill the hard drive up.
		{
			_path = parentFolder.Combine(fileName);

			string liftContents = string.Format("<?xml version='1.0' encoding='utf-8'?><lift version='{0}'>{1}</lift>", claimedLiftVersion, xmlOfEntries);
			File.WriteAllText(_path, liftContents);
		}
コード例 #5
0
ファイル: TemporaryFolder.cs プロジェクト: smitcham/libpalaso
 public TemporaryFolder(TemporaryFolder parent, string name)
 {
     _path = parent.Combine(name);
     if (Directory.Exists(_path))
     {
         TestUtilities.DeleteFolderThatMayBeInUse(_path);
     }
     Directory.CreateDirectory(_path);
 }
コード例 #6
0
ファイル: TemporaryFolder.cs プロジェクト: smitcham/libpalaso
        public TempLiftFile(string fileName, TemporaryFolder parentFolder, string xmlOfEntries, string claimedLiftVersion)
            : base(true)             // True means "I'll set the the pathname, thank you very much." Otherwise, the temp one 'false' creates will stay forever, and fill the hard drive up.
        {
            _path = parentFolder.Combine(fileName);

            string liftContents = string.Format("<?xml version='1.0' encoding='utf-8'?><lift version='{0}'>{1}</lift>", claimedLiftVersion, xmlOfEntries);

            File.WriteAllText(_path, liftContents);
        }
コード例 #7
0
ファイル: ProxyTests.cs プロジェクト: JessieGriffin/chorus
 public void Clone_Test()
 {
     // RobustNetworkOperation.ClearCredentialSettings();
     using (var f = new TemporaryFolder("clonetest"))
     {
         HgRepository.Clone(new HttpRepositoryPath("cloneableTestProjectUrl", _cloneableTestProjectUrl, false), f.Path, _progress);
         Assert.IsTrue(Directory.Exists(f.Combine(f.Path, ".hg")));
     }
 }
コード例 #8
0
ファイル: ProxyTests.cs プロジェクト: JessieGriffin/chorus
 public void Pull_Test()
 {
     //RobustNetworkOperation.ClearCredentialSettings();
     using (var f = new TemporaryFolder("pulltest"))
     {
         var repo = HgRepository.CreateOrUseExisting(f.Path, _progress);
         var address = new HttpRepositoryPath("default", _cloneableTestProjectUrl, false);
         repo.Pull(address, _cloneableTestProjectUrl);
         Assert.IsTrue(Directory.Exists(f.Combine(f.Path, ".hg")));
     }
 }
コード例 #9
0
ファイル: ClonerTests.cs プロジェクト: JessieGriffin/chorus
 public void GetDirectoriesWithMecurialRepos_OneDriveAndDirectoryButNotRep_ReturnsEmptyList()
 {
     using (var usb = new TemporaryFolder("clonetestUsb"))
     {
         Directory.CreateDirectory(usb.Combine("tests"));
         var model = new CloneFromUsb();
         var drives = new List<IUsbDriveInfo>();
         drives.Add(new UsbDriveInfoForTests(usb.Path));
         model.DriveInfoRetriever = new RetrieveUsbDriveInfoForTests(drives);
         Assert.AreEqual(0, model.GetDirectoriesWithMecurialRepos().Count());
     }
 }
コード例 #10
0
ファイル: TemporaryFolder.cs プロジェクト: smitcham/libpalaso
        public static TempFile CreateXmlFileWithContents(string fileName, TemporaryFolder folder, string xmlBody)
        {
            string path = folder.Combine(fileName);

            using (var reader = XmlReader.Create(new StringReader(xmlBody)))
            {
                using (var writer = XmlWriter.Create(path, CanonicalXmlSettings.CreateXmlWriterSettings()))
                {
                    writer.WriteStartDocument();
                    writer.WriteNode(reader, false);
                }
            }
            return(new TempFile(path, true));
        }
コード例 #11
0
ファイル: ProxyTests.cs プロジェクト: JessieGriffin/chorus
        public void PullThenPush_Test()
        {
            //  RobustNetworkOperation.ClearCredentialSettings();
            using (var f = new TemporaryFolder("pulltest"))
            {
                var repo = HgRepository.CreateOrUseExisting(f.Path, _progress);
                var address = new HttpRepositoryPath("default", _cloneableTestProjectUrl, false);
                repo.Pull(address, _cloneableTestProjectUrl);
                Assert.IsTrue(Directory.Exists(f.Combine(f.Path, ".hg")));

                //nb: this is safe to do over an over, because it will just say "no changes found", never actually add a changeset

                repo.Push(address, _cloneableTestProjectUrl);
            }
        }
コード例 #12
0
        public void LaunchDialog_SimulatedUsb_ProjectAlreadyExists()
        {
            using (var targetComputer = new TemporaryFolder("clonetest-targetComputer"))
            using (var usb = new TemporaryFolder("clonetest-Usb"))
            {
                Directory.CreateDirectory(usb.Combine("repo1"));
                HgRepository.CreateRepositoryInExistingDir(usb.Combine("repo1"), new NullProgress());

                //ok, the point here is that we already haved something called "repo1"
                Directory.CreateDirectory(targetComputer.Combine("repo1"));

                using (var dlg = new GetCloneFromUsbDialog(targetComputer.Path))
                {
                    var drives = new List<IUsbDriveInfo>();
                    drives.Add(new UsbDriveInfoForTests(usb.Path));

                    //don't look at the actual drives, look at our simulations
                    dlg.Model.DriveInfoRetriever = new RetrieveUsbDriveInfoForTests(drives);

                    if (DialogResult.OK != dlg.ShowDialog())
                        return;
                }
            }
        }
コード例 #13
0
 public void ChangePicture_PictureIsFromOutsideProject_PictureCopiedAndAttributeChanged()
 {
     var dom = new XmlDocument();
     dom.LoadXml("<html><body><div/><div><img id='one'/><img id='two' src='old.png'/></div></body></html>");
     var model = new PageEditingModel();
     using (var src = new TemporaryFolder("bloom pictures test source"))
     using (var dest = new TemporaryFolder("bloom picture tests dest"))
     {
         var newImagePath = src.Combine("new.png");
         using (var original = MakeSamplePngImage(newImagePath))
         {
             model.ChangePicture(dest.Path, dom, "two", original);
             Assert.IsTrue(File.Exists(dest.Combine("new.png")));
             AssertThatXmlIn.Dom(dom).HasSpecifiedNumberOfMatchesForXpath(@"//img[@id='two' and @src='new.png']", 1);
         }
     }
 }
コード例 #14
0
 public void ChangePicture_PictureIsJpg_StaysJpg()
 {
     var dom = new XmlDocument();
     dom.LoadXml("<html><body><div/><div><img id='one'/><img id='two' src='old.png'/></div></body></html>");
     var model = new PageEditingModel();
     using (var src = new TemporaryFolder("bloom pictures test source"))
     using (var dest = new TemporaryFolder("bloom picture tests dest"))
     using (var original = MakeSampleJpegImage(src.Combine("new.jpg")))
     {
         model.ChangePicture(dest.Path, dom, "two", original);
         Assert.IsTrue(File.Exists(dest.Combine("new.jpg")));
         AssertThatXmlIn.Dom(dom).HasSpecifiedNumberOfMatchesForXpath(@"//img[@id='two' and @src='new.jpg']", 1);
         using (var converted = Image.FromFile(dest.Combine("new.jpg")))
         {
             Assert.AreEqual(ImageFormat.Jpeg.Guid, converted.RawFormat.Guid);
         }
     }
 }
コード例 #15
0
 public void ChangePicture_AlreadyHaveACopyInPublicationFolder_PictureUpdated()
 {
     var dom = new XmlDocument();
     dom.LoadXml("<html><body><div/><div><img id='one'/><img id='two' src='old.png'/></div></body></html>");
     var model = new PageEditingModel();
     using (var src = new TemporaryFolder("bloom pictures test source"))
     using (var dest = new TemporaryFolder("bloom picture tests dest"))
     {
         var dogImagePath = src.Combine("dog.png");
         using (var original = MakeSamplePngImage(dogImagePath))
         {
             var destDogImagePath = dest.Combine("dog.png");
             File.WriteAllText(destDogImagePath, "old dog");
             model.ChangePicture(dest.Path, dom, "two", original);
             Assert.IsTrue(Image.FromFile(destDogImagePath).Width == kSampleImageDimension);
         }
     }
 }
コード例 #16
0
ファイル: HgSettingsTests.cs プロジェクト: sillsdev/chack
        public void EnsureTheseExtensionAreEnabled_someOthersEnabledAlready_StayEnabled()
        {
            using (new MercurialIniForTests())
            using (var testRoot = new TemporaryFolder("ChorusHgSettingsTest"))
            {
                HgRepository.CreateRepositoryInExistingDir(testRoot.Path, _progress);
                var repository = new HgRepository(testRoot.Path, new ConsoleProgress());
                File.WriteAllText(testRoot.Combine(Path.Combine(".hg", "hgrc")), @"
            [extensions]
            a =
            x =
            ");
                var extensions = new Dictionary<string, string>();
                extensions.Add("a", "");
                extensions.Add("b", "");
                repository.EnsureTheseExtensionsAndFormatSet(extensions);

                Assert.AreEqual(3, repository.GetEnabledExtension().Count());
                Assert.AreEqual("a", repository.GetEnabledExtension().ToArray()[0]);
                Assert.AreEqual("x", repository.GetEnabledExtension().ToArray()[1]);
                Assert.AreEqual("b", repository.GetEnabledExtension().ToArray()[2]);
            }
        }
コード例 #17
0
        public void GetFilesInRevision_MultipleRevisionsInRepo_GivesCorrectFiles()
        {
            using (var testRoot = new TemporaryFolder("ChorusRetrieveTest"))
            {
                var temp = testRoot.Combine("filename with spaces");
                File.WriteAllText(temp, "one");
                using (var f = TempFile.TrackExisting(temp))
                {
                    HgRepository.CreateRepositoryInExistingDir(testRoot.Path,_progress);
                    var repo = new HgRepository(testRoot.Path, _progress);

                    repo.AddAndCheckinFile(f.Path);
                    repo.Commit(true, "initial");
                    File.WriteAllText(f.Path, "one two");
                    repo.Commit(true, "second");

                    var revisions = repo.GetAllRevisions();
                    Assert.AreEqual(2, revisions.Count);
                    var files = repo.GetFilesInRevision(revisions[0]);
                    Assert.AreEqual(1, files.Count());
                    Assert.AreEqual(f.Path, files.First().FullPath);
                }
            }
        }
コード例 #18
0
        public void RoundTripPng_InPathWithNonAsciiCharacters()
        {
            var mediaFile = new Bitmap(10, 10);
            using (var folder = new TemporaryFolder("LibPalaso exiftool Test with non-áscii chárácters"))
            {
                var path = folder.Combine("test.png");
                mediaFile.Save(path);
                var outgoing = Metadata.FromFile(path);

                outgoing.Creator = "joe shmo";
                outgoing.Write();
                Assert.AreEqual("joe shmo", Metadata.FromFile(path).Creator);
            }
        }
コード例 #19
0
ファイル: HgSettingsTests.cs プロジェクト: sillsdev/chack
        private bool GetIsReady(string pathsSectionContents)
        {
            string contents = @"[paths]" + Environment.NewLine + pathsSectionContents+Environment.NewLine;

            using (var testRoot = new TemporaryFolder("ChorusHgSettingsTest"))
            {
                HgRepository.CreateRepositoryInExistingDir(testRoot.Path, _progress);
                File.WriteAllText(testRoot.Combine(Path.Combine(".hg", "hgrc")), contents);
                var repo = new HgRepository(testRoot.Path, _progress);
                string msg;
                bool ready= repo.GetIsReadyForInternetSendReceive(out msg);
                Console.WriteLine(msg);
                return ready;
            }
        }
コード例 #20
0
ファイル: HgSettingsTests.cs プロジェクト: sillsdev/chack
 public void GetKnownRepositories_TwoInRepoSettings_GivesThem()
 {
     using (new MercurialIniForTests())
     using (var testRoot = new TemporaryFolder("ChorusHgSettingsTest"))
     {
         HgRepository.CreateRepositoryInExistingDir(testRoot.Path, _progress);
         File.WriteAllText(testRoot.Combine(Path.Combine(".hg","hgrc")), @"
     [paths]
     one = c:\intentionally bogus
     two = http://foo.com");
         var repo = new HgRepository(testRoot.Path, _progress);
         var sources = repo.GetRepositoryPathsInHgrc();
         Assert.AreEqual(2, sources.Count());
         Assert.AreEqual(@"c:\intentionally bogus" ,sources.First().URI);
         Assert.AreEqual(@"http://foo.com", sources.Last().URI);
         Assert.AreEqual(@"one" ,sources.First().Name);
         Assert.AreEqual(@"two", sources.Last().Name);
     }
 }
コード例 #21
0
        public void Setup()
        {
            ErrorReport.IsOkToInteractWithUser = false;
            _fileLocator = new FileLocator(new string[]
                                            {
                                                FileLocator.GetDirectoryDistributedWithApplication( "factoryCollections"),
                                                FileLocator.GetDirectoryDistributedWithApplication( "factoryCollections", "Templates", "Basic Book"),
                                                FileLocator.GetDirectoryDistributedWithApplication( "xMatter")
                                            });
            _fixtureFolder = new TemporaryFolder("BloomBookStorageTest");
            _folder = new TemporaryFolder(_fixtureFolder,"theBook");

            _bookPath = _folder.Combine("theBook.htm");
        }
コード例 #22
0
	   public void Play_GiveThaiFileName_ShouldHearTwoSounds()
	   {
		   using (var d = new TemporaryFolder("palaso media test"))
		   {
			   var soundPath = d.Combine("ก.wav");
			   File.Create(soundPath).Close();
			   using (var f = TempFile.TrackExisting(soundPath))
			   {
				   var w = new BackgroundWorker();
				   w.DoWork += new DoWorkEventHandler((o, args) => SystemSounds.Exclamation.Play());

				   var x = AudioFactory.AudioSession(f.Path);
				   x.StartRecording();
				   w.RunWorkerAsync();
				   Thread.Sleep(1000);
				   x.StopRecordingAndSaveAsWav();

				   var y = AudioFactory.AudioSession(f.Path);
				   y.Play();
				   Thread.Sleep(1000);
					y.StopPlaying();
			   }
		   }
	   }
コード例 #23
0
        private void Launch()
        {
            using (var targetComputer = new TemporaryFolder("clonetest-targetComputer"))
            using (var dest = new TemporaryFolder("clonetest"))
            {
                Directory.CreateDirectory(dest.Combine("repo1"));
                HgRepository.CreateRepositoryInExistingDir(dest.Combine("repo1"), new NullProgress());

                //ok, the point here is that we already haved something called "repo1"
                Directory.CreateDirectory(targetComputer.Combine("repo1"));

                using (var dlg = new GetCloneFromInternetDialog(targetComputer.Path))
                {

                    if (DialogResult.OK != dlg.ShowDialog())
                        return;
                }
            }
        }
コード例 #24
0
ファイル: TemporaryFolder.cs プロジェクト: smitcham/libpalaso
 public TempFileFromFolder(TemporaryFolder parentFolder, string name, string contents)
     : base(true)             // True means "I'll set the the pathname, thank you very much." Otherwise, the temp one 'false' creates will stay forever, and fill the hard drive up.
 {
     _path = parentFolder.Combine(name);
     File.WriteAllText(_path, contents);
 }
コード例 #25
0
ファイル: ClonerTests.cs プロジェクト: JessieGriffin/chorus
 public void GetDirectoriesWithMecurialRepos_WithRepo2DeepIsNotFound()
 {
     using (var usb1 = new TemporaryFolder("clonetestUsb1"))
     {
         Directory.CreateDirectory(usb1.Combine("a", "repo1", ".hg"));
         var model = new CloneFromUsb();
         var drives = new List<IUsbDriveInfo>();
         drives.Add(new UsbDriveInfoForTests(usb1.Path));
         model.DriveInfoRetriever = new RetrieveUsbDriveInfoForTests(drives);
         Assert.AreEqual(0, model.GetDirectoriesWithMecurialRepos().Count());
     }
 }
コード例 #26
0
        public void SetBookName_FolderWithNameAlreadyExists_AddsANumberToName()
        {
            using (var original = new TemporaryFolder(_folder, "original"))
            using (var x = new TemporaryFolder(_folder, "foo"))
            using (var y = new TemporaryFolder(_folder, "foo1"))
            using (var z = new TemporaryFolder(_folder, "foo2"))
            {
                File.WriteAllText(Path.Combine(original.Path, "original.htm"), "<html><head> href='file://blahblah\\editMode.css' type='text/css' /></head><body><div class='bloom-page'></div></body></html>");
                var storage = new BookStorage(original.Path, _fileLocator, new BookRenamedEvent(), new CollectionSettings());
            storage.Save();

                Directory.Delete(z.Path);
                //so, we ask for "foo", but should get "foo2", because there is already a foo and foo1
            var newBookName = Path.GetFileName(x.Path);
            storage.SetBookName(newBookName);
            var newPath = z.Combine("foo2.htm");
            Assert.IsTrue(Directory.Exists(z.Path), "Expected folder:" + z.Path);
            Assert.IsTrue(File.Exists(newPath), "Expected file:" + newPath);
            }
        }
コード例 #27
0
ファイル: ClonerTests.cs プロジェクト: JessieGriffin/chorus
 public void MakeClone_NoProblems_MakesClone()
 {
     using(var repo = new RepositorySetup("source"))
     using (var f = new TemporaryFolder("clonetest"))
     {
         var model = new CloneFromUsb();
         var progress = new ConsoleProgress();
         progress.ShowVerbose = true;
         model.MakeClone(repo.ProjectFolder.Path, f.Path, progress);
         Assert.IsTrue(Directory.Exists(f.Combine(RepositorySetup.ProjectName, ".hg")));
     }
 }
コード例 #28
0
ファイル: ClonerTests.cs プロジェクト: JessieGriffin/chorus
        public void MakeClone_TargetExists_CreatesCloneInAnotherFolder()
        {
            using (var repo = new RepositorySetup("source"))
            using (var f = new TemporaryFolder("clonetest"))
            {
                var model = new CloneFromUsb();
                var progress = new ConsoleProgress();
                progress.ShowVerbose = true;
                var extantFolder = f.Combine(RepositorySetup.ProjectName);
                Directory.CreateDirectory(extantFolder);
                // Make a subfolder, which will force it to make a new folder, since an empty folder is deleted.
                var extantSubfolderPath = Path.Combine(extantFolder, "ChildFolder");
                Directory.CreateDirectory(extantSubfolderPath);

                var cloneFolder = model.MakeClone(repo.ProjectFolder.Path, f.Path, progress);
                Assert.AreEqual(extantFolder + "1", cloneFolder);
                Assert.IsTrue(Directory.Exists(extantFolder + "1"));
            }
        }
コード例 #29
0
ファイル: ClonerTests.cs プロジェクト: JessieGriffin/chorus
        public void MakeClone_TargetExists_CreatesCloneInWhenTargetIsEmpty()
        {
            using (var repo = new RepositorySetup("source"))
            using (var f = new TemporaryFolder("clonetest"))
            {
                var model = new CloneFromUsb();
                var progress = new ConsoleProgress();
                progress.ShowVerbose = true;
                var extantFolder = f.Combine(RepositorySetup.ProjectName);
                Directory.CreateDirectory(extantFolder);

                var cloneFolder = model.MakeClone(repo.ProjectFolder.Path, f.Path, progress);
                Assert.AreEqual(extantFolder, cloneFolder);
                Assert.IsTrue(Directory.Exists(extantFolder));
                Assert.IsFalse(Directory.Exists(extantFolder + "1"));
            }
        }
コード例 #30
0
ファイル: ClonerTests.cs プロジェクト: JessieGriffin/chorus
 public void MakeListItemWhenAlreadyHaveProjectName_MakesDisabledItem()
 {
     using (var usb = new TemporaryFolder("clonetestUsb"))
     {
         var path = usb.Combine("test1");
         Directory.CreateDirectory(path);
         Directory.CreateDirectory(usb.Combine("test1", ".hg"));
         var model = new CloneFromUsb();
         model.ExistingProjects = new HashSet<string> {"test1"};
         var item = model.CreateListItemFor(path);
         Assert.That(item, Is.Not.Null, "model should have made a list item");
         Assert.That(item.Text, Is.EqualTo("test1"));
         Assert.That(item.Tag, Is.EqualTo(path));
         var last = File.GetLastWriteTime(path);
         string expectedSubitem = last.ToShortDateString() + " " + last.ToShortTimeString();
             // Not a great test, basically duplicates the impl
         Assert.That(item.SubItems[1].Text, Is.EqualTo(expectedSubitem));
         Assert.That(item.ToolTipText, Is.EqualTo(CloneFromUsb.ProjectWithSameNameExists));
         Assert.That(item.ImageIndex, Is.EqualTo(2));
         Assert.That(item.ForeColor, Is.EqualTo(CloneFromUsb.DisabledItemForeColor));
     }
 }
コード例 #31
0
        public void SaveSettings_PrexistsButWeChangePasswordAndSave_ChangesPassword()
        {
            using (var folder = new TemporaryFolder("ServerSettingsModel"))
            {
                // Precondition is some url that is not our default from the ServerSettingsModel
                var original = HgRepository.CreateOrUseExisting(folder.Path, new NullProgress());
                original.SetKnownRepositoryAddresses(new[] { new HttpRepositoryPath("languagedepot.org [legacy sync]", "http://*****:*****@hg-public.languagedepot.org/tpi", false) });

                var m = new ServerSettingsModel();
                m.InitFromProjectPath(folder.Path);
                m.Password = "******";
                m.SaveSettings();
                Assert.IsTrue(Directory.Exists(folder.Combine(".hg")));
                Assert.IsTrue(File.Exists(folder.Combine(".hg", "hgrc")));
                var repo = HgRepository.CreateOrUseExisting(folder.Path, new NullProgress());
                var address = repo.GetDefaultNetworkAddress<HttpRepositoryPath>();
                Assert.AreEqual("http://*****:*****@hg-public.languagedepot.org/tpi", address.URI);
                Assert.AreEqual("newPassword", address.Password);
            }
        }
コード例 #32
0
 public void SaveSettings_NoHgFolderExists_CreatesOneWithCorrectPath()
 {
     using (var folder = new TemporaryFolder("ServerSettingsModel"))
     {
         var m = new ServerSettingsModel();
         var url = "http://*****:*****@hg-public.languagedepot.org/tpi";
         m.InitFromProjectPath(folder.Path);
         m.SetUrlToUseIfSettingsAreEmpty(url);
         m.SaveSettings();
         Assert.IsTrue(Directory.Exists(folder.Combine(".hg")));
         Assert.IsTrue(File.Exists(folder.Combine(".hg","hgrc")));
         var repo = HgRepository.CreateOrUseExisting(folder.Path, new NullProgress());
         var address = repo.GetDefaultNetworkAddress<HttpRepositoryPath>();
         Assert.AreEqual("languageDepot.org[safemode]".ToLower(), address.Name.ToLower());
         Assert.AreEqual(url, address.URI);
     }
 }
コード例 #33
0
ファイル: ClonerTests.cs プロジェクト: JessieGriffin/chorus
 public void MakeListItem_MakesNormalItem()
 {
     using (var usb = new TemporaryFolder("clonetestUsb"))
     {
         var path = usb.Combine("test1");
         Directory.CreateDirectory(path);
         Directory.CreateDirectory(usb.Combine("test1", ".hg"));
         var model = new CloneFromUsb();
         var item = model.CreateListItemFor(path);
         Assert.That(item, Is.Not.Null, "model should have made a list item");
         Assert.That(item.Text, Is.EqualTo("test1"));
         Assert.That(item.Tag, Is.EqualTo(path));
         var last = File.GetLastWriteTime(path);
         string expectedSubitem = last.ToShortDateString() + " " + last.ToShortTimeString(); // Not a great test, basically duplicates the impl
         Assert.That(item.SubItems[1].Text, Is.EqualTo(expectedSubitem));
         Assert.That(item.ToolTipText, Is.EqualTo(path));
         Assert.That(item.ImageIndex, Is.EqualTo(0));
         Assert.That(item.BackColor, Is.EqualTo(Color.FromKnownColor(KnownColor.Window)));
         Assert.That(item.ForeColor, Is.EqualTo(Color.FromKnownColor(KnownColor.WindowText)));
     }
 }
コード例 #34
0
 private void ChangeNameAndCheck(TemporaryFolder newFolder, BookStorage storage)
 {
     var newBookName = Path.GetFileName(newFolder.Path);
     storage.SetBookName(newBookName);
     var newPath = newFolder.Combine(newBookName+".htm");
     Assert.IsTrue(Directory.Exists(newFolder.Path), "Expected folder:" + newFolder.Path);
     Assert.IsTrue(File.Exists(newPath), "Expected file:" +newPath);
 }