public void Delete_deck() { deckRepo.DeleteDeck(DeckId); Deck deck = deckRepo.GetDeck(UserId, "Test Deck"); Assert.IsNull(deck); }
public DeckModule() { this.RequiresAuthentication(); //viewing public decks of a planeswalker Get["/mydecks"] = parameters => { DecksModel model = new DecksModel(); model.ActiveMenu = "mydecks"; model.Planeswalker = (Planeswalker)this.Context.CurrentUser; model.Decks = deckbuilder.GetUserDecks(model.Planeswalker.Id).ToList(); model.Title = "My Decks"; return(View["Deck/MyDecks", model]); }; Post["/decks/delete/{id}"] = parameters => { Planeswalker planeswalker = (Planeswalker)this.Context.CurrentUser; Guid id = Guid.Empty; Deck deck = new Deck(); if (Guid.TryParse((string)parameters.id, out id)) { deck = deckbuilder.GetDeck(id); if (deck != null && deck.IsOwner(planeswalker)) { deckbuilder.DeleteDeck(deck.Id); } } return(Response.AsRedirect("/mydecks")); }; // //for deck link sharing and viewing single deck // Get["/pw/{planeswalker}/decks/{name}"] = parameters => { // DeckModel model = new DeckModel(); // model.ActiveMenu = "mydecks"; // model.Planeswalker = (Planeswalker)this.Context.CurrentUser; // model.Deck = // deckbuilder.GetDeck(model.Planeswalker.Id, // (string)parameters.name); // // return View["Deck/Deck", model]; // }; // // Get["/decks"] = parameters => { // Planeswalker planeswalker = (Planeswalker)this.Context.CurrentUser; // Deck [] decks = deckbuilder.GetUserDecks(planeswalker.Id); // // return View["Deck/Decks", decks.ToArray()]; // }; // // //create a deck SPA // Post["/decks"] = parameters => { // Planeswalker planeswalker = // (Planeswalker)this.Context.CurrentUser; // // int [] cards = null; // int [] sideBar = null; // // try // { // cards = ((string)Request.Form.Cards).Split(',') // .Select(n => Convert.ToInt32(n)) // .ToArray(); // // sideBar = ((string)Request.Form.SideBar).Split(',') // .Select(n => Convert.ToInt32(n)) // .ToArray(); // // } // catch(Exception e) // { // throw e; // } // // string name = (string)this.Request.Form.Name; // string description = (string)this.Request.Form.Description; // // Deck deck = new Deck(); // deck.Name = name; // deck.Description = description; // deck.SetCards(cards); // deck.SetSideBar(sideBar); // deck.UserId = planeswalker.Id; // // deck = deckbuilder.AddDeck(deck); // // return Response.AsJson(deck); // }; // //update a deck SPA // Post["/decks/{name}"] = parameters => { // Planeswalker planeswalker = (Planeswalker)this.Context.CurrentUser; // string deckName = (string)parameters.name; // // int [] cards = null; // int [] sideBar = null; // // try // { // cards = ((string)Request.Form.Cards).Split(',') // .Select(n => Convert.ToInt32(n)) // .ToArray(); // // sideBar = ((string)Request.Form.SideBar).Split(',') // .Select(n => Convert.ToInt32(n)) // .ToArray(); // // } // catch(Exception e) // { // throw e; // } // // string name = (string)this.Request.Form.Name; // string description = (string)this.Request.Form.Description; // // Deck deck = deckbuilder.GetDeck(planeswalker.Id, deckName); // deck.Name = name; // deck.Description = description; // deck.SetCards(cards); // deck.SetSideBar(sideBar); // deck.UserId = planeswalker.Id; // // deck = deckbuilder.UpdateDeck(deck); // // return Response.AsJson(deck); // }; // // //Delete a deck SPA // Post["/decks/delete/{name}"] = parameters => { // Planeswalker planeswalker = (Planeswalker)this.Context.CurrentUser; // Deck deck = deckbuilder.GetDeck(planeswalker.Id, // (string)parameters.name); // // try // { // deckbuilder.DeleteDeck(deck.Id); // } // catch(Exception e) // { // return Response.AsJson(e.Message, // HttpStatusCode.NotAcceptable); // } // // return Response.AsJson("true", HttpStatusCode.Accepted); // }; // // //Get a deck SPA // Get["/decks/{name}"] = parameters => { // Planeswalker planeswalker = (Planeswalker)this.Context.CurrentUser; // Deck deck = deckbuilder.GetDeck(planeswalker.Id, // (string)parameters.name); // // return Response.AsJson(deck); // }; // // //Get cards for a deck SPA // Get["/decks/{name}/cards"] = parameters => { // Planeswalker planeswalker = (Planeswalker)this.Context.CurrentUser; // Deck deck = deckbuilder.GetDeck(planeswalker.Id, // (string)parameters.name); // // return Response.AsJson(deck.GetCards()); // }; // // //Get cards for a deck SPA // Get["/decks/{name}/sidebar"] = parameters => { // Planeswalker planeswalker = (Planeswalker)this.Context.CurrentUser; // Deck deck = deckbuilder.GetDeck(planeswalker.Id, // (string)parameters.name); // // return Response.AsJson(deck.GetSideBarCards()); // }; //gets the latest version of card at the time of import Post["/decks/import"] = parameters => { Planeswalker planeswalker = (Planeswalker)this.Context.CurrentUser; string deckName = (string)this.Request.Form.Name; string description = (string)this.Request.Form.Description; var file = this.Request.Files.FirstOrDefault(); Deck deck = null; if (file != null) { deck = MtgFile.ImportDec(file.Value); deck.Name = deckName; deck.Description = description; deck.UserId = planeswalker.Id; } return(Response.AsJson(deck)); }; //testing method Post["/col/import"] = parameters => { Planeswalker planeswalker = (Planeswalker)this.Context.CurrentUser; var file = this.Request.Files.FirstOrDefault(); MtgDb.Info.MtgFile.Item[] items = null; if (file != null) { items = MtgFile.ImportColl2(file.Value); } return(Response.AsJson(items)); }; }
public RedirectToActionResult DeleteDeck(int deckId) { _deckRepository.DeleteDeck(deckId); return(RedirectToAction("MyDecks")); }