public void ReadFileTest() { var appInto = CoreUpdaterInfo.ReadFile(@"TestData\CoreUpdaterInfoTest.json"); Assert.Equal("MakePdf", appInto.Name); Assert.Equal("1.0.0", appInto.Version); }
static int Main(string[] args) { var assembly = Assembly.GetExecutingAssembly(); var fvi = FileVersionInfo.GetVersionInfo(assembly.Location); var name = assembly.GetName().Name; var assemblyName = Path.GetFileName(assembly.Location); var assemblyVersion = assembly.GetName().Version.ToString(); var assemblyFileVersion = fvi.FileVersion; var assemblyInformationalVersion = fvi.ProductVersion; System.Console.WriteLine($"{name} {assemblyInformationalVersion}"); // Analyze program arguments var cla = new CommandLineApplication(throwOnUnexpectedArg: false) { // Application name Name = name, Description = "Create CoreUpdaterInfo.json for CoreUpdater.", }; cla.HelpOption("-?|-h|--help"); var targetDir = cla.Option("-d|--dir", "Target directory", CommandOptionType.SingleValue); var targetAppName = cla.Option("-n|--name", "Application name.", CommandOptionType.SingleValue); var targetAppVersion = cla.Option("-v|--version", "Application version.", CommandOptionType.SingleValue); var outputFilename = cla.Option("-o|--output", "Output file name (Option). Default is CoreUpdaterInfo.json", CommandOptionType.SingleValue); // Default behavior cla.OnExecute(() => { if (targetDir.HasValue() == false || targetAppName.HasValue() == false || targetAppVersion.HasValue() == false) { cla.ShowHelp(); return(0); } var files = Directory.GetFiles(targetDir.Value(), "*", SearchOption.AllDirectories); var appInfo = new CoreUpdaterInfo() { Name = targetAppName.Value(), Version = targetAppVersion.Value() }; appInfo.AddFileInfo(targetDir.Value(), files); appInfo.WriteFile(targetDir.Value(), outputFilename.Value() ?? "CoreUpdaterInfo.json"); return(0); }); // Execution try { return(cla.Execute(args)); } catch (Exception e) { System.Console.Write(e.Message); return(1); } }
public void ReadStringTest() { var str = "{ \"Name\": \"MakePdf\", \"Version\": \"1.0.0\", \"Files\": [ { \"Name\": \"CoreUpdaterInfo.json\", \"Hash\": \"79dc6187bd3081ecec2282469b21fbacbf9522a146cd26d81411eb3e5588d987\" }, { \"Name\": \"MakePdf.Core.dll\", \"Hash\": \"c023099221415a38f62a5ed1ecd1a42e5dc88d6b240fb60e97da97ac4b5db3a4\" } ]}"; var appInto = CoreUpdaterInfo.ReadString(str); Assert.Equal("MakePdf", appInto.Name); Assert.Equal("1.0.0", appInto.Version); }