public async Task ShouldBePossibleToCreateSerie() { SerieBuilder serieData = new SerieBuilder().CreateSerieForTest(); var httpResponse = await this.restApi .PostAsJsonAsync(this.baseUrl, serieData.Build()); _ = httpResponse.StatusCode .Should() .Be(HttpStatusCode.Created); Serie response = JsonConvert.DeserializeObject <Serie>(await httpResponse.Content.ReadAsStringAsync()); response .Should() .BeEquivalentTo(serieData.Build()); }
public async Task ShouldBePossibleToDeleteAnSerie() { SerieBuilder serieDataExpected = new SerieBuilder().CreateSerieForTest(); var httpResponse = await this.restApi .PostAsJsonAsync(this.baseUrl, serieDataExpected.Build()); Serie response = JsonConvert.DeserializeObject <Serie>(await httpResponse.Content.ReadAsStringAsync()); httpResponse = await this.restApi .DeleteAsync($"{this.baseUrl}/{response._Id}"); _ = httpResponse.StatusCode .Should() .Be(HttpStatusCode.NoContent); }
public async Task ShouldNotBePossibleToUpdateAnSerie() { SerieBuilder serieData = new SerieBuilder().CreateSerieForTest() .WithName("New Serie") .WithYear("New Year") .WithSeason("New Season") .WithGenre("New Genre"); var httpResponse = await this.restApi .PutAsJsonAsync($"{this.baseUrl}/WrongID", serieData.Build()); _ = httpResponse.StatusCode .Should() .Be(HttpStatusCode.NotFound); var response = JObject.Parse(await httpResponse.Content.ReadAsStringAsync()); ((string)response.SelectToken("message")) .Should() .Be("Not Found"); }
public async Task ShouldBePossibleToObtainAnSerie() { var id = "77e0373c6f35bd826f47e977"; SerieBuilder serieData = new SerieBuilder().CreateSerieForTest() .WithName("The Flash") .WithYear("2014") .WithSeason("4") .WithGenre("action"); var httpResponse = await this.restApi .GetAsync($"{this.baseUrl}/{id}"); _ = httpResponse.StatusCode .Should() .Be(HttpStatusCode.OK); Serie response = JsonConvert.DeserializeObject <Serie>(await httpResponse.Content.ReadAsStringAsync()); response .Should() .BeEquivalentTo(serieData.Build(), options => options.Excluding(serie => serie._Id)); }
public static Serie addSerie(Serie s, bool type_anime) { SerieBuilder builder = new SerieBuilder(); MediaType media_type; string title; Serie serie = null; if (type_anime == false) { media_type = MediaType.Serie; title = (s != null ? "EDITAR" : "NOVO") + " SÉRIE"; } else { media_type = MediaType.Anime; title = (s != null ? "EDITAR" : "NOVO") + " ANIME"; } Console.Clear(); Utils.showAppTitle(); Console.WriteLine("\n" + title + "\n"); Utils.showFooter(); try{ string name, description, link, gender; int classification, num_episodes, num_seasons; Console.WriteLine("- Informe o nome:\n"); name = Console.ReadLine(); Console.WriteLine("\n- Informe a descrição:\n"); description = Console.ReadLine(); Console.WriteLine("\n- Informe a classificação (0, 10, 12, 14, 16 ou 18):\n"); classification = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("\n- Informe o link da imagem de capa:\n"); link = Console.ReadLine(); Console.WriteLine("\n- Informe o número de episódios:\n"); num_episodes = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("\n- Informe o número de temporadas:\n"); num_seasons = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("\n- Informe o gênero:\n"); gender = Console.ReadLine(); serie = builder .id(s != null ? s.getId() : null) .name(name) .description(description) .classification(classification) .link(link) .gender(new Gender(media_type, gender)) .numSeasons(num_seasons) .numEpisodes(num_episodes) .build(); } catch (Exception e) { } return(serie); }
public async Task ShouldNotBePossibleToCreateSerieWithoutRequiredInformations(SerieBuilder serieData) { var httpResponse = await this.restApi .PostAsJsonAsync(this.baseUrl, serieData.Build()); var response = JObject.Parse(await httpResponse.Content.ReadAsStringAsync()); _ = httpResponse.StatusCode .Should() .Be(HttpStatusCode.BadRequest); ((string)response.SelectToken("message")) .Should() .Be("Missing required property: name/year/season or genre"); }