public void ImportExportTest() { var project = CreateTestProject(); var context = new ProfileOptionsWindowContext(project, null, null); var tmpFile = Path.GetTempFileName(); context.ExportProfiles(tmpFile); context.SelectedProfile = GetDirtyProfile(context, "kana"); context.RemoveSelectedProfile(); context.SelectedProfile = GetDirtyProfile(context, "asa"); context.RemoveSelectedProfile(); Assert.Empty(context.ProfileNames); context.ImportProfiles(tmpFile); File.Delete(tmpFile); Assert.Collection(context.ProfileNames, fst => Assert.Equal("kana", fst), snd => Assert.Equal("asa", snd)); }
public void ImportNameConflictTest() { var project = CreateTestProject(); var nameResolver = new Mock <ProfileOptionsWindowContext.AskProfileNameDelegate>(MockBehavior.Strict); var context = new ProfileOptionsWindowContext(project, null, nameResolver.Object); var tmpFile = Path.GetTempFileName(); context.ExportProfiles(tmpFile); context.SelectedProfile = GetDirtyProfile(context, "kana"); context.RemoveSelectedProfile(); Assert.Single(context.ProfileNames, "asa"); nameResolver.Setup(n => n("Import", "Profile asa already exists. Enter a new name or leave it as is to overwrite the profile:", It.IsAny <IEnumerable <string> >(), "asa")) .Returns("mizu").Verifiable(); context.ImportProfiles(tmpFile); File.Delete(tmpFile); nameResolver.Verify(); Assert.Collection(context.ProfileNames, fst => Assert.Equal("asa", fst), snd => Assert.Equal("kana", snd), trd => Assert.Equal("mizu", trd)); }