You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
76 lines
2.7 KiB
76 lines
2.7 KiB
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using Gallio.Framework;
|
|
using MbUnit.Framework;
|
|
using MbUnit.Framework.ContractVerifiers;
|
|
using Moq;
|
|
using NzbDrone.Core.Providers;
|
|
using NzbDrone.Core.Providers.Core;
|
|
using NzbDrone.Core.Repository;
|
|
using SubSonic.Repository;
|
|
|
|
namespace NzbDrone.Core.Test
|
|
{
|
|
[TestFixture]
|
|
public class IndexerProviderTest
|
|
{
|
|
[Test]
|
|
public void AllIndexers()
|
|
{
|
|
//
|
|
// TODO: Add test logic here
|
|
//
|
|
|
|
//Setup
|
|
var list = new List<Indexer>();
|
|
list.Add(new Indexer { IndexerName = "Test1", RssUrl = "http://www.test1.com/rss.php", Enabled = true, Order = 1 });
|
|
list.Add(new Indexer { IndexerName = "Test2", RssUrl = "http://www.test2.com/rss.php", Enabled = false, Order = 4 });
|
|
list.Add(new Indexer { IndexerName = "Test3", RssUrl = "http://www.test3.com/rss.php", Enabled = true, Order = 3 });
|
|
list.Add(new Indexer { IndexerName = "Test4", RssUrl = "http://www.test4.com/rss.php", Enabled = false, Order = 2 });
|
|
|
|
var repo = new Mock<IRepository>();
|
|
var config = new Mock<IConfigProvider>();
|
|
repo.Setup(r => r.All<Indexer>()).Returns(list.AsQueryable());
|
|
|
|
var target = new IndexerProvider(repo.Object, config.Object);
|
|
|
|
//Act
|
|
var result = target.AllIndexers();
|
|
|
|
//Assert
|
|
|
|
Assert.AreEqual(result.Last().IndexerName, "Test2");
|
|
}
|
|
|
|
[Test]
|
|
public void EnabledIndexers()
|
|
{
|
|
//
|
|
// TODO: Add test logic here
|
|
//
|
|
|
|
//Setup
|
|
var list = new List<Indexer>();
|
|
list.Add(new Indexer { IndexerName = "Test1", RssUrl = "http://www.test1.com/rss.php", Enabled = true, Order = 1 });
|
|
list.Add(new Indexer { IndexerName = "Test2", RssUrl = "http://www.test2.com/rss.php", Enabled = false, Order = 4 });
|
|
list.Add(new Indexer { IndexerName = "Test3", RssUrl = "http://www.test3.com/rss.php", Enabled = true, Order = 3 });
|
|
list.Add(new Indexer { IndexerName = "Test4", RssUrl = "http://www.test4.com/rss.php", Enabled = false, Order = 2 });
|
|
|
|
var repo = new Mock<IRepository>();
|
|
var config = new Mock<IConfigProvider>();
|
|
repo.Setup(r => r.All<Indexer>()).Returns(list.AsQueryable());
|
|
|
|
var target = new IndexerProvider(repo.Object, config.Object);
|
|
|
|
//Act
|
|
var result = target.EnabledIndexers();
|
|
|
|
//Assert
|
|
Assert.AreEqual(result.First().IndexerName, "Test1");
|
|
Assert.AreEqual(result.Last().IndexerName, "Test3");
|
|
}
|
|
}
|
|
}
|