66 lines
1.7 KiB
C#
66 lines
1.7 KiB
C#
using System.Net;
|
|
using FluentAssertions;
|
|
using NUnit.Framework;
|
|
using NzbDrone.Api.Series;
|
|
using System.Linq;
|
|
|
|
namespace NzbDrone.Integration.Test
|
|
{
|
|
[TestFixture]
|
|
public class SeriesIntegrationTest : IntegrationTest
|
|
{
|
|
[Test]
|
|
public void should_have_no_series_on_start_application()
|
|
{
|
|
Series.All().Should().BeEmpty();
|
|
}
|
|
|
|
[Test]
|
|
public void series_lookup_on_trakt()
|
|
{
|
|
var series = Series.Lookup("archer");
|
|
|
|
series.Should().NotBeEmpty();
|
|
series.Should().Contain(c => c.Title == "Archer (2009)");
|
|
}
|
|
|
|
[Test]
|
|
public void add_series_without_required_fields_should_return_badrequest()
|
|
{
|
|
var errors = Series.InvalidPost(new SeriesResource());
|
|
errors.Should().NotBeEmpty();
|
|
}
|
|
|
|
[Test]
|
|
public void should_be_able_to_add_and_delete_series()
|
|
{
|
|
var series = Series.Lookup("archer").First();
|
|
|
|
series.QualityProfileId = 1;
|
|
series.Path = @"C:\Test\Archer";
|
|
|
|
series = Series.Post(series);
|
|
|
|
Series.All().Should().HaveCount(1);
|
|
|
|
Series.Get(series.Id).Should().NotBeNull();
|
|
Series.Get(series.TitleSlug).Should().NotBeNull();
|
|
|
|
Series.Delete(series.Id);
|
|
|
|
Series.All().Should().BeEmpty();
|
|
}
|
|
|
|
[Test]
|
|
public void wrong_slug_should_return_404()
|
|
{
|
|
Series.Get("non-existing-slug", HttpStatusCode.NotFound);
|
|
}
|
|
|
|
[Test]
|
|
public void invalid_id_should_return_404()
|
|
{
|
|
Series.Get(99, HttpStatusCode.NotFound);
|
|
}
|
|
}
|
|
} |