mirror of
https://github.com/Ombi-app/Ombi.git
synced 2025-08-21 13:53:19 -07:00
#254 Removed the cache, we are now storing the plex information into the database.
There is a big structure change around this, also increased the default check time to be in hours.
This commit is contained in:
parent
af1c93620f
commit
2608e53399
29 changed files with 479 additions and 170 deletions
|
@ -79,6 +79,8 @@
|
|||
<Compile Include="AssemblyHelperTests.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="PlexHelperTests.cs" />
|
||||
<Compile Include="TypeHelperTests.cs" />
|
||||
<Compile Include="StringHelperTests.cs" />
|
||||
<Compile Include="UriHelperTests.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
|
@ -86,10 +88,18 @@
|
|||
<None Include="packages.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\PlexRequests.Core\PlexRequests.Core.csproj">
|
||||
<Project>{DD7DC444-D3BF-4027-8AB9-EFC71F5EC581}</Project>
|
||||
<Name>PlexRequests.Core</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\PlexRequests.Helpers\PlexRequests.Helpers.csproj">
|
||||
<Project>{1252336d-42a3-482a-804c-836e60173dfa}</Project>
|
||||
<Name>PlexRequests.Helpers</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\PlexRequests.Store\PlexRequests.Store.csproj">
|
||||
<Project>{92433867-2B7B-477B-A566-96C382427525}</Project>
|
||||
<Name>PlexRequests.Store</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Choose>
|
||||
<When Condition="'$(VisualStudioVersion)' == '10.0' And '$(IsCodedUITest)' == 'True'">
|
||||
|
|
94
PlexRequests.Helpers.Tests/StringHelperTests.cs
Normal file
94
PlexRequests.Helpers.Tests/StringHelperTests.cs
Normal file
|
@ -0,0 +1,94 @@
|
|||
#region Copyright
|
||||
// /************************************************************************
|
||||
// Copyright (c) 2016 Jamie Rees
|
||||
// File: StringHelperTests.cs
|
||||
// Created By: Jamie Rees
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person obtaining
|
||||
// a copy of this software and associated documentation files (the
|
||||
// "Software"), to deal in the Software without restriction, including
|
||||
// without limitation the rights to use, copy, modify, merge, publish,
|
||||
// distribute, sublicense, and/or sell copies of the Software, and to
|
||||
// permit persons to whom the Software is furnished to do so, subject to
|
||||
// the following conditions:
|
||||
//
|
||||
// The above copyright notice and this permission notice shall be
|
||||
// included in all copies or substantial portions of the Software.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
// ************************************************************************/
|
||||
#endregion
|
||||
using System.Collections.Generic;
|
||||
|
||||
using NUnit.Framework;
|
||||
|
||||
using PlexRequests.Core.Models;
|
||||
|
||||
namespace PlexRequests.Helpers.Tests
|
||||
{
|
||||
[TestFixture]
|
||||
public class StringHelperTests
|
||||
{
|
||||
[TestCaseSource(nameof(StringData))]
|
||||
public string FirstCharToUpperTest(string input)
|
||||
{
|
||||
return input.FirstCharToUpper();
|
||||
}
|
||||
|
||||
[TestCaseSource(nameof(StringCaseData))]
|
||||
public string ToCamelCaseWordsTest(string input)
|
||||
{
|
||||
return input.ToCamelCaseWords();
|
||||
}
|
||||
|
||||
[TestCaseSource(nameof(PrefixData))]
|
||||
public string AddPrefix(string[] input, string prefix, string separator)
|
||||
{
|
||||
return input.AddPrefix(prefix, separator);
|
||||
}
|
||||
|
||||
private static IEnumerable<TestCaseData> StringData
|
||||
{
|
||||
get
|
||||
{
|
||||
yield return new TestCaseData("abcCba").Returns("AbcCba").SetName("pascalCase");
|
||||
yield return new TestCaseData("").Returns("").SetName("Empty");
|
||||
yield return new TestCaseData("12DSAda").Returns("12DSAda").SetName("With numbers");
|
||||
}
|
||||
}
|
||||
|
||||
private static IEnumerable<TestCaseData> StringCaseData
|
||||
{
|
||||
get
|
||||
{
|
||||
yield return new TestCaseData("abcCba").Returns("Abc Cba").SetName("spaces");
|
||||
yield return new TestCaseData("").Returns("").SetName("empty");
|
||||
yield return new TestCaseData("JamieRees").Returns("Jamie Rees").SetName("Name");
|
||||
yield return new TestCaseData("Jamierees").Returns("Jamierees").SetName("single word");
|
||||
yield return new TestCaseData("ThisIsANewString").Returns("This Is A New String").SetName("longer string");
|
||||
yield return new TestCaseData(IssueStatus.PendingIssue.ToString()).Returns("Pending Issue").SetName("enum pending");
|
||||
yield return new TestCaseData(IssueStatus.ResolvedIssue.ToString()).Returns("Resolved Issue").SetName("enum resolved");
|
||||
}
|
||||
}
|
||||
|
||||
private static IEnumerable<TestCaseData> PrefixData
|
||||
{
|
||||
get
|
||||
{
|
||||
yield return new TestCaseData(new[] {"abc","def","ghi"}, "@", ",").Returns("@abc,@def,@ghi").SetName("Happy Path");
|
||||
yield return new TestCaseData(new[] {"abc","def","ghi"}, "!!", "").Returns("!!abc!!def!!ghi").SetName("Different Separator Path");
|
||||
yield return new TestCaseData(new[] {"abc"}, "", "").Returns("abc").SetName("Single Item");
|
||||
yield return new TestCaseData(new string[0], "", "").Returns(string.Empty).SetName("Empty Array");
|
||||
yield return new TestCaseData(new [] {"abc","aaaa"}, null, ",").Returns("abc,aaaa").SetName("Null prefix");
|
||||
yield return new TestCaseData(new [] {"abc","aaaa"}, "@", null).Returns("@abc@aaaa").SetName("Null separator test");
|
||||
yield return new TestCaseData(new [] {"abc","aaaa"}, null, null).Returns("abcaaaa").SetName("Null separator and prefix");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
73
PlexRequests.Helpers.Tests/TypeHelperTests.cs
Normal file
73
PlexRequests.Helpers.Tests/TypeHelperTests.cs
Normal file
|
@ -0,0 +1,73 @@
|
|||
#region Copyright
|
||||
// /************************************************************************
|
||||
// Copyright (c) 2016 Jamie Rees
|
||||
// File: StringHelperTests.cs
|
||||
// Created By: Jamie Rees
|
||||
//
|
||||
// Permission is hereby granted, free of charge, to any person obtaining
|
||||
// a copy of this software and associated documentation files (the
|
||||
// "Software"), to deal in the Software without restriction, including
|
||||
// without limitation the rights to use, copy, modify, merge, publish,
|
||||
// distribute, sublicense, and/or sell copies of the Software, and to
|
||||
// permit persons to whom the Software is furnished to do so, subject to
|
||||
// the following conditions:
|
||||
//
|
||||
// The above copyright notice and this permission notice shall be
|
||||
// included in all copies or substantial portions of the Software.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
// ************************************************************************/
|
||||
#endregion
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
using NUnit.Framework;
|
||||
|
||||
using PlexRequests.Store;
|
||||
|
||||
namespace PlexRequests.Helpers.Tests
|
||||
{
|
||||
[TestFixture]
|
||||
public class TypeHelperTests
|
||||
{
|
||||
[TestCaseSource(nameof(TypeData))]
|
||||
public string[] FirstCharToUpperTest(Type input)
|
||||
{
|
||||
return input.GetPropertyNames();
|
||||
}
|
||||
|
||||
|
||||
private static IEnumerable<TestCaseData> TypeData
|
||||
{
|
||||
get
|
||||
{
|
||||
yield return new TestCaseData(typeof(TestClass1)).Returns(new[] { "Test1", "Test2", "Test3" }).SetName("Simple Class");
|
||||
yield return new TestCaseData(typeof(int)).Returns(new string[0]).SetName("NoPropeties Class");
|
||||
yield return new TestCaseData(typeof(IEnumerable<>)).Returns(new string[0]).SetName("Interface");
|
||||
yield return new TestCaseData(typeof(string)).Returns(new[] { "Chars", "Length" }).SetName("String");
|
||||
yield return new TestCaseData(typeof(RequestedModel)).Returns(
|
||||
new[]
|
||||
{
|
||||
"ProviderId", "ImdbId", "TvDbId", "Overview", "Title", "PosterPath", "ReleaseDate", "Type",
|
||||
"Status", "Approved", "RequestedBy", "RequestedDate", "Available", "Issues", "OtherMessage", "AdminNote",
|
||||
"SeasonList", "SeasonCount", "SeasonsRequested", "MusicBrainzId", "RequestedUsers","ArtistName",
|
||||
"ArtistId","IssueId","Episodes","AllUsers","CanApprove","Id"
|
||||
}).SetName("Requested Model");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private sealed class TestClass1
|
||||
{
|
||||
public string Test1 { get; set; }
|
||||
public int Test2 { get; set; }
|
||||
public long[] Test3 { get; set; }
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue