public void URL_AfterConstruction_GoodDefault() { using (var testFolder = new TemporaryFolder("clonetest")) { var model = new GetCloneFromInternetModel(testFolder.Path); model.AccountName = "account"; model.Password = "******"; model.ProjectId = "id"; Assert.AreEqual("http://*****:*****@resumable.languagedepot.org/id", model.URL.ToLower()); } }
public void InitFromUri_GivenCompleteUri_AllPropertiesCorrect() { using (var testFolder = new TemporaryFolder("clonetest")) { var model = new GetCloneFromInternetModel(testFolder.Path); model.InitFromUri("http://*****:*****@hg-languagedepot.org/tpi?localFolder=tokPisin"); Assert.AreEqual("tokPisin", model.LocalFolderName); Assert.IsTrue(model.ReadyToDownload); Assert.AreEqual("http://*****:*****@hg-languagedepot.org/tpi", model.URL); } }
private void LaunchCustomUrl(string url) { using (var targetComputer = new TemporaryFolder("clonetest-targetComputer")) { var model = new GetCloneFromInternetModel(targetComputer.Path); model.InitFromUri(url); using (var dlg = new GetCloneFromInternetDialog(model)) { dlg.ShowDialog(); } } }
public void UpdateDisplay_BadModelDoesNotThrow() { using (var testFolder = new TemporaryFolder("clonetest")) { var model = new GetCloneFromInternetModel(testFolder.Path); model.AccountName = "account"; model.Password = "******"; model.ProjectId = "id"; model.LocalFolderName = "Some<Folder"; var ctrl = new TargetFolderControl(model); Assert.DoesNotThrow(() => { ctrl._localFolderName.Text = "Some<Folders"; }); } }
public void CleanUpAfterErrorOrCancel_DirectoryDeleted() { using (var testFolder = new TemporaryFolder("clonetest")) { var model = new GetCloneFromInternetModel(testFolder.Path); model.LocalFolderName = "SomeFolder"; // Ideally would call model to start the clone - but that's in the dialog for now so fake it instead. Directory.CreateDirectory(model.TargetDestination); Assert.That(Directory.Exists(model.TargetDestination), Is.True); model.CleanUpAfterErrorOrCancel(); Assert.That(Directory.Exists(model.TargetDestination), Is.False); } }
public void LocalFolderName_WontAcceptSpacesAfterName() { using (var testFolder = new TemporaryFolder("clonetest")) { var model = new GetCloneFromInternetModel(testFolder.Path); model.Username = "******"; model.Password = "******"; model.ProjectId = "id"; model.LocalFolderName = ""; var ctrl = new TargetFolderControl(model); ctrl._localFolderName.Text = "Billy "; Assert.That(model.TargetHasProblem, Is.True); Assert.AreEqual(Path.Combine(testFolder.Path, "Billy"), model.TargetDestination); } }
private static void DoClone() { var strAdaptItWorkFolder = AdaptItWorkFolder; if (!Directory.Exists(strAdaptItWorkFolder)) { Directory.CreateDirectory(strAdaptItWorkFolder); } #if DEBUG const string cstrHindiToUrdu = "Hindi to Urdu adaptations"; var strHindiToUrduProjectFolder = Path.Combine(strAdaptItWorkFolder, cstrHindiToUrdu); if (Directory.Exists(strHindiToUrduProjectFolder)) { Directory.Delete(strHindiToUrduProjectFolder, true); } #endif var model = new GetCloneFromInternetModel(strAdaptItWorkFolder) { #if DEBUG ProjectId = "aikb-hindi-urdu", AccountName = "bobeaton", Password = "******", LocalFolderName = cstrHindiToUrdu, #endif SelectedServerLabel = Resources.IDS_DefaultRepoServer }; using (var dlg = new GetCloneFromInternetDialog(model)) { if (DialogResult.Cancel == dlg.ShowDialog()) { return; } var strProjectFolder = dlg.PathToNewProject; Settings.Default.LastProjectFolder = strProjectFolder; Settings.Default.Save(); InitializeLookupConverter(strProjectFolder); } }