public async Task ShouldAddSiteHandler() { //arrange var useCase = new AddSiteHandlerUseCase(DbContext); var addSiteHandlerRequest = new AddSiteHandlerRequest() { SiteName = "Test", SiteUrl = "test.com", HandlerUrl = "testhandler.com" }; //action var siteHandlerId = useCase.Handle(addSiteHandlerRequest); SiteHandler siteHandler = await DbContext.SiteHandlers.SingleAsync(x => x.Id == 1); //assert siteHandler.Should().NotBe(null); siteHandler.Id.Should().Be(1); siteHandler.SiteName.Should().Be("Test"); siteHandler.SiteUrl.Should().Be("test.com"); siteHandler.HandlerUrl.Should().Be("testhandler.com"); }
public async Task ShouldRemoveSiteHandler() { int id = 1; var result = await _useCase.Handle(id); SiteHandler siteHandler = await DbContext.SiteHandlers.SingleOrDefaultAsync(x => x.Id == id); result.Should().Be(true); siteHandler.Should().BeNull(); }
public async Task <int> Handle(AddSiteHandlerRequest request) { var entity = new SiteHandler { SiteName = request.SiteName, SiteUrl = request.SiteUrl, HandlerUrl = request.HandlerUrl }; _dbContext.SiteHandlers.Add(entity); await _dbContext.SaveChangesAsync(); return(entity.Id); }
public virtual object setInstalledVersion(object addonpage, object subfolder, object currentVersion) { var addonName = SiteHandler.getAddonName(addonpage); var installedVers = configparser.ConfigParser(); installedVers.read(this.INSTALLED_VERS_FILE); if (subfolder) { installedVers.set("Installed Versions", addonName + "|" + subfolder, currentVersion); } else { installedVers.set("Installed Versions", addonName, currentVersion); } using (var installedVersFile = open(this.INSTALLED_VERS_FILE, "w")) { installedVers.write(installedVersFile); } }
public virtual object getInstalledVersion(object addonpage, object subfolder) { var addonName = SiteHandler.getAddonName(addonpage); var installedVers = configparser.ConfigParser(); installedVers.read(this.INSTALLED_VERS_FILE); try { if (subfolder) { return(installedVers["Installed Versions"][addonName + "|" + subfolder]); } else { return(installedVers["Installed Versions"][addonName]); } } catch (Exception) { return("version not found"); } }
public virtual object update() { var uberlist = new List <object>(); using (var fin = open(this.ADDON_LIST_FILE, "r")) { foreach (var line in fin) { current_node = new List <object>(); line = line.rstrip("\n"); if (!line || line.startswith("#")) { continue; } if (line.Contains("|")) { // Expected input format: "mydomain.com/myzip.zip" or "mydomain.com/myzip.zip|subfolder" subfolder = line.split("|")[1]; line = line.split("|")[0]; } else { subfolder = ""; } addonName = SiteHandler.getAddonName(line); currentVersion = SiteHandler.getCurrentVersion(line); if (currentVersion == null) { currentVersion = "Not Available"; } current_node.append(addonName); current_node.append(currentVersion); installedVersion = this.getInstalledVersion(line, subfolder); if (!(currentVersion == installedVersion)) { Console.WriteLine("Installing/updating addon: " + addonName + " to version: " + currentVersion + "\n"); ziploc = SiteHandler.findZiploc(line); install_success = false; install_success = this.getAddon(ziploc, subfolder); current_node.append(this.getInstalledVersion(line, subfolder)); if (install_success && currentVersion != "") { this.setInstalledVersion(line, subfolder, currentVersion); } } else { Console.WriteLine(addonName + " version " + currentVersion + " is up to date.\n"); current_node.append("Up to date"); } uberlist.append(current_node); } } if (this.AUTO_CLOSE == "False") { var col_width = max(from row in uberlist from word in row select word.Count) + 2; Console.WriteLine("".join(from word in Tuple.Create("Name", "Iversion", "Cversion") select word.ljust(col_width))); foreach (var row in uberlist) { Console.WriteLine("".join(from word in row select word.ljust(col_width)), end: "\n"); } confirmExit(); } }