public void CreatePackageExceptions() { // Callbacks bool calledConfigured = false; void Handler_OnPackageConfigured(PackageHandler arg1, Config arg2, PackageInfo arg3) { calledConfigured = true; } bool calledCreated = false; void Handler_OnPackageCreated(PackageHandler arg1, PackageInfo arg3) { calledCreated = true; } var config = new Config(); var configProvider = Utils.GetConfigProvider(config, true); var handler = new PackageHandler(configProvider.Object); handler.OnPackageConfigured += Handler_OnPackageConfigured; handler.OnPackageCreated += Handler_OnPackageCreated; var info = new PackageInfo("CoolName", "CoolId", new SemVer.Version("0.1.0")) { Url = new Uri("http://test.com") }; // Ensure a ConfigException is thrown Assert.Throws <ConfigException>(() => handler.CreatePackage(info)); // Ensure config has not been committed configProvider.Verify(m => m.Commit(), Times.Never); // Ensure config has not changed Assert.True(config.Info is null); // Ensure callbacks did not happen Assert.False(calledConfigured); Assert.False(calledCreated); // Ensure an ANE is thrown for a null package info Assert.Throws <ArgumentNullException>(() => handler.CreatePackage(null)); }
public void CreatePackageStandard() { // Callbacks bool calledConfigured = false; void Handler_OnPackageConfigured(PackageHandler arg1, Config arg2, PackageInfo arg3) { calledConfigured = true; } bool calledCreated = false; void Handler_OnPackageCreated(PackageHandler arg1, PackageInfo arg3) { calledCreated = true; } // Start with an empty config var config = new Config(); var configProvider = Utils.GetConfigProvider(config); var handler = new PackageHandler(configProvider.Object); var info = new PackageInfo("CoolName", "CoolId", new SemVer.Version("0.1.0")) { Url = new Uri("http://test.com") }; handler.OnPackageConfigured += Handler_OnPackageConfigured; handler.OnPackageCreated += Handler_OnPackageCreated; handler.CreatePackage(info); // Ensure config was created configProvider.Verify(m => m.GetConfig(true)); // Ensure config was committed configProvider.Verify(m => m.Commit()); // Ensure config has changed to match info Assert.True(config.Info.Id == info.Id); Assert.True(config.Info.Name == info.Name); Assert.True(config.Info.Version == info.Version); Assert.True(config.Info.Url == info.Url); // Ensure callbacks were triggered Assert.True(calledConfigured); Assert.True(calledCreated); }
private static void OnPackageOptionsParsed(PackageOptions options) { HasParsedArgs = true; if (!File.Exists(options.File)) { Console.WriteLine($"The file {options.File} does not exist."); return; } var fileText = ReadFile(options.File); string amlRoot; var outputFile = ConstructOutputFilePath(options.File); try { amlRoot = ConversionHandler.Convert(fileText, outputFile); } catch (Exception) { Console.WriteLine("An error occurred during conversion. The file has probably an invalid format."); return; } try { if (!ShouldOverride(outputFile)) { return; } File.WriteAllText(outputFile, amlRoot); } catch (IOException) { Console.WriteLine( "Unable to write output file. Maybe you are missing permissions or the file is opened in another software"); return; } var packageHandler = new PackageHandler(); packageHandler.CreatePackage(options.File, outputFile, options.Output); }