mirror of
https://github.com/lidarr/lidarr.git
synced 2025-08-20 13:33:34 -07:00
Added Tests for CentralDispatch
This commit is contained in:
parent
c339ea6ba2
commit
6393d0a3f9
15 changed files with 133 additions and 32 deletions
94
NzbDrone.Core.Test/CentralDispatchTest.cs
Normal file
94
NzbDrone.Core.Test/CentralDispatchTest.cs
Normal file
|
@ -0,0 +1,94 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using FluentAssertions;
|
||||
using NUnit.Framework;
|
||||
using NzbDrone.Core.Providers;
|
||||
using NzbDrone.Core.Providers.Indexer;
|
||||
using NzbDrone.Core.Providers.Jobs;
|
||||
using NzbDrone.Core.Test.Framework;
|
||||
using Ninject;
|
||||
|
||||
namespace NzbDrone.Core.Test
|
||||
{
|
||||
[TestFixture]
|
||||
// ReSharper disable InconsistentNaming
|
||||
class CentralDispatchTest : TestBase
|
||||
{
|
||||
readonly IList<Type> indexers = typeof(CentralDispatch).Assembly.GetTypes().Where(t => t.IsSubclassOf(typeof(IndexerBase))).ToList();
|
||||
readonly IList<Type> jobs = typeof(CentralDispatch).Assembly.GetTypes().Where(t => t.GetInterfaces().Contains(typeof(IJob))).ToList();
|
||||
|
||||
|
||||
[Test]
|
||||
public void InitAppTest()
|
||||
{
|
||||
CentralDispatch.NinjectKernel.Should().NotBeNull();
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void Resolve_all_providers()
|
||||
{
|
||||
var providers = typeof(CentralDispatch).Assembly.GetTypes().Where(t => t.Name.EndsWith("Provider")).ToList();
|
||||
|
||||
providers.Should().NotBeEmpty();
|
||||
|
||||
foreach (var provider in providers)
|
||||
{
|
||||
Console.WriteLine("Resolving " + provider.Name);
|
||||
CentralDispatch.NinjectKernel.Get(provider).Should().NotBeNull();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
[Test]
|
||||
public void All_jobs_should_be_registered()
|
||||
{
|
||||
//Assert
|
||||
|
||||
var registeredJobs = CentralDispatch.NinjectKernel.GetAll<IJob>();
|
||||
|
||||
jobs.Should().NotBeEmpty();
|
||||
|
||||
registeredJobs.Should().HaveSameCount(jobs);
|
||||
}
|
||||
|
||||
|
||||
[Test]
|
||||
public void All_indexers_should_be_registered()
|
||||
{
|
||||
//Assert
|
||||
|
||||
var registeredIndexers = CentralDispatch.NinjectKernel.GetAll<IndexerBase>();
|
||||
|
||||
indexers.Should().NotBeEmpty();
|
||||
|
||||
registeredIndexers.Should().HaveSameCount(indexers);
|
||||
}
|
||||
|
||||
|
||||
[Test]
|
||||
public void jobs_are_initialized()
|
||||
{
|
||||
CentralDispatch.NinjectKernel.Get<JobProvider>().All().Should().HaveSameCount(jobs);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void indexers_are_initialized()
|
||||
{
|
||||
CentralDispatch.NinjectKernel.Get<IndexerProvider>().All().Should().HaveSameCount(indexers);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void quality_profile_initialized()
|
||||
{
|
||||
CentralDispatch.NinjectKernel.Get<QualityProvider>().All().Should().HaveCount(2);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void get_version()
|
||||
{
|
||||
CentralDispatch.Version.Should().NotBeNull();
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue