public void Migrate_MigratesNuSpecIntoMainConfig() { // Arrange var mod = _testEnvironmoent.TestModConfigATuple; var modDirectory = Path.GetDirectoryName(mod.Path); var nuspecFilePath = Path.Combine(modDirectory !, $"{IOEx.ForceValidFilePath(mod.Config.ModId)}.nuspec"); File.Create(nuspecFilePath).Dispose(); // Act var factory = new NuGetUpdateResolverFactory(); factory.Migrate(mod, null); using var disposalHelper = new RemoveConfiguration <NuGetUpdateResolverFactory.NuGetConfig>(mod, factory); // Assert Assert.False(File.Exists(nuspecFilePath)); Assert.True(factory.TryGetConfigurationOrDefault(mod, out var config)); }
/// <summary/> public PublishModDialogViewModel(PathTuple <ModConfig> modTuple) { _modTuple = modTuple; PackageName = IOEx.ForceValidFilePath(_modTuple.Config.ModName.Replace(' ', '_')); OutputFolder = Path.Combine(Path.GetTempPath(), $"{IOEx.ForceValidFilePath(_modTuple.Config.ModId)}.Publish"); // Set default Regexes. IgnoreRegexes = new ObservableCollection <StringWrapper>() { @".*\.json", // Config files $"{Regex.Escape($@"{_modTuple.Config.ModId}.nuspec")}" }; IncludeRegexes = new ObservableCollection <StringWrapper>() { Regex.Escape(ModConfig.ConfigFileName), @"\.deps\.json", @"\.runtimeconfig\.json", }; // Set notifications PropertyChanged += ChangeUiVisbilityOnPropertyChanged; }