Commit a5a73b00 authored by Stefm's avatar Stefm

.Net Core added; Episode Property removed

parent 480dde5d
# Changelog #
##6.1.0 (2016-10-??)##
##7.0.0 (2016-10-16)##
###New###
- !! Now supporting .Net Core !!
- SeriesIDParserCore for .Net Core implementation
- Removed unused '[Serializable]' attribute from ParserSettings
- Removed unused app.config entries
- Removed 'Episode' (single)
- Added Console Demo for Core version
- Unit tests updated
###Fix###
-
---
##6.1.0 (2016-10-05)##
###New###
- Added ParserSettings Property ReleaseGroupSeperator
- Added SeriesID Property ReleaseGroup
......
......@@ -9,6 +9,14 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SeriesIDParser_Test", "Seri
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SeriesIDParser_WinForm_Demo", "SeriesIDParser_WinForm_Demo\SeriesIDParser_WinForm_Demo.csproj", "{3A90193D-8664-42CD-B49D-DCD2B9E6CB4D}"
EndProject
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "SeriesIDParserCore", "SeriesIDParserCore\SeriesIDParserCore.xproj", "{958064FF-C77F-478C-9243-3E374D2BDAC0}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".Net 4.5", ".Net 4.5", "{AE0C9F53-3F9B-48FA-862F-1080F8A5D172}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".Net Core", ".Net Core", "{14D5AB57-4404-46A8-B523-724060BB7DA0}"
EndProject
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "SeriesIDParserCore_Console_Demo", "SeriesIDParserCore_Console_Demo\SeriesIDParserCore_Console_Demo.xproj", "{D7D1B627-B679-4C4A-9353-EF23A6FD37CA}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
......@@ -27,8 +35,23 @@ Global
{3A90193D-8664-42CD-B49D-DCD2B9E6CB4D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3A90193D-8664-42CD-B49D-DCD2B9E6CB4D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3A90193D-8664-42CD-B49D-DCD2B9E6CB4D}.Release|Any CPU.Build.0 = Release|Any CPU
{958064FF-C77F-478C-9243-3E374D2BDAC0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{958064FF-C77F-478C-9243-3E374D2BDAC0}.Debug|Any CPU.Build.0 = Debug|Any CPU
{958064FF-C77F-478C-9243-3E374D2BDAC0}.Release|Any CPU.ActiveCfg = Release|Any CPU
{958064FF-C77F-478C-9243-3E374D2BDAC0}.Release|Any CPU.Build.0 = Release|Any CPU
{D7D1B627-B679-4C4A-9353-EF23A6FD37CA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D7D1B627-B679-4C4A-9353-EF23A6FD37CA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D7D1B627-B679-4C4A-9353-EF23A6FD37CA}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D7D1B627-B679-4C4A-9353-EF23A6FD37CA}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{D584FD1D-63D3-4FE2-A229-7F01E7A93797} = {AE0C9F53-3F9B-48FA-862F-1080F8A5D172}
{6F30FEEF-A65B-4E54-8014-AD9FC2D440CC} = {AE0C9F53-3F9B-48FA-862F-1080F8A5D172}
{3A90193D-8664-42CD-B49D-DCD2B9E6CB4D} = {AE0C9F53-3F9B-48FA-862F-1080F8A5D172}
{958064FF-C77F-478C-9243-3E374D2BDAC0} = {14D5AB57-4404-46A8-B523-724060BB7DA0}
{D7D1B627-B679-4C4A-9353-EF23A6FD37CA} = {14D5AB57-4404-46A8-B523-724060BB7DA0}
EndGlobalSection
EndGlobal
......@@ -631,13 +631,14 @@ namespace SeriesIDParser
/// <summary>
/// Gets the first found episode id. Default/Error: -1
/// </summary>
/// <param name="ps">Currently used settings for the parser</param>
/// <param name="fullTitle">The fullTitle who worked on</param>
/// <returns>First episode as int</returns>
internal static int GetEpisodeID(ParserSettings ps, string fullTitle)
/// <summary>
/// Gets the first found episode id. Default/Error: -1
/// </summary>
/// <param name="ps">Currently used settings for the parser</param>
/// <param name="fullTitle">The fullTitle who worked on</param>
/// <returns>First episode as int</returns>
[Obsolete]
internal static int GetEpisodeID(ParserSettings ps, string fullTitle)
{
int episode = -1;
List<int> episodes = GetEpisodeIDs(ps, fullTitle);
......
......@@ -46,7 +46,7 @@ namespace SeriesIDParser
/// <summary>
/// The settings who can give to the SeriesIDParser to modify the behavior. Object is prefilled with the default values and list entries
/// </summary>
[Serializable]
//[Serializable]
public class ParserSettings
{
......
......@@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("6.0.0.0")]
[assembly: AssemblyFileVersion("6.0.0.0")]
[assembly: AssemblyVersion("7.0.0.0")]
[assembly: AssemblyFileVersion("7.0.0.0")]
......@@ -321,21 +321,6 @@ namespace SeriesIDParser
}
// Todo remove in future releases
[Obsolete("Use _episodes which can contain more than one episode. Will be removed in future releases")]
private int _episode = -1;
/// <summary>
/// Contains the eposide id if object state is series. -1 on error
/// </summary>
[Obsolete("Use Episodes which can contain more than one episode. Will be removed in future releases")]
public int Episode
{
get { return _state.HasFlag(State.OK_SUCCESS) && _isSeries ? _episode : -1; }
internal set { _episode = value; }
}
private List<int> _episodes = new List<int>();
/// <summary>
/// Contains the eposide id if object state is series.
......
......@@ -155,7 +155,6 @@ namespace SeriesIDParser
_episodeTitle = Helper.GetEpisodeTitle(_parserSettings, fullTitle);
_isSeries = Helper.IsSeries(_parserSettings, fullTitle);
_season = Helper.GetSeasonID(_parserSettings, fullTitle);
_episode = Helper.GetEpisodeID(_parserSettings, fullTitle);
_episodes = Helper.GetEpisodeIDs(_parserSettings, fullTitle);
_isMultiEpisode = _episodes.Count > 1;
}
......@@ -209,7 +208,6 @@ namespace SeriesIDParser
/// </summary>
private void ResetObject()
{
_episode = -1;
_episodeTitle = string.Empty;
_exception = null;
_fileExtension = string.Empty;
......
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<section name="SeriesIDParser.ResolutionMap" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/>
</sectionGroup>
</configSections>
<applicationSettings>
<SeriesIDParser.ResolutionMap>
<setting name="UltraHD" serializeAs="Xml">
<value>
<ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<string>UHD</string>
</ArrayOfString>
</value>
</setting>
<setting name="FullHD" serializeAs="Xml">
<value>
<ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<string>FULLHD</string>
<string>1080P</string>
</ArrayOfString>
</value>
</setting>
<setting name="HD" serializeAs="Xml">
<value>
<ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<string>HDTV</string>
<string>720P</string>
<string>HD</string>
</ArrayOfString>
</value>
</setting>
<setting name="SD" serializeAs="Xml">
<value>
<ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<string>DVD</string>
</ArrayOfString>
</value>
</setting>
</SeriesIDParser.ResolutionMap>
</applicationSettings>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/></startup></configuration>
<configSections>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<section name="SeriesIDParser.ResolutionMap" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/>
</sectionGroup>
</configSections>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/>
</startup>
</configuration>
This diff is collapsed.
This diff is collapsed.
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("SeriesIDParserCore")]
[assembly: AssemblyTrademark("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("958064ff-c77f-478c-9243-3e374d2bdac0")]
This diff is collapsed.

// MIT License
// Copyright(c) 2016
// Stefan Müller, Stefm, https://gitlab.com/u/Stefm
// 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.
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Runtime.CompilerServices;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
[assembly: InternalsVisibleTo("SeriesIDParserCore_Test")]
namespace SeriesIDParserCore
{
/// <summary>
/// The result object representing the series or movie string
/// </summary>
public partial class SeriesID
{
private readonly ParserSettings _parserSettings = new ParserSettings(true);
private DateTime _parseStartTime = new DateTime();
/// <summary>
/// ctor with optional settings. Null settings are overriden with default settings
/// </summary>
/// <param name="settings"></param>
public SeriesID(ParserSettings settings = null)
{
if (settings != null)
{
this._parserSettings = settings;
}
}
/// <summary>
/// </summary>
/// <returns>FullTitle and resolution. string.Empty on error</returns>
public override string ToString()
{
if (_state.HasFlag(State.OK_SUCCESS))
{
return FullTitle + " -- " + Helper.GetResolutionString(_parserSettings, _resolutions);
}
else
{
return string.Empty;
}
}
// ############################################################
// ### Core Function
// ############################################################
/// <summary>
/// The primary parsing function
/// </summary>
/// <param name="input">The series or movie string who get parsed. Must be atleast five chars</param>
/// <returns>The SeriesID object that represents the series or movie string</returns>
public SeriesID Parse(string input)
{
ResetObject();
_originalString = input.Trim();
string fullTitle = _originalString;
bool warningOrErrorOccurred = false;
Regex removeRegex;
_detectedOldSpacingChar = Helper.GetSpacingChar(input, _parserSettings);
try
{
if (_originalString.Length >= 5)
{
// Todo remove fileextension instantly
_fileExtension = Helper.GetFileExtension(input, _parserSettings.FileExtensions);
_resolutions = Helper.GetResolutions(_parserSettings, _detectedOldSpacingChar, ref fullTitle);
_releaseGroup = Helper.GetReleaseGroup(fullTitle, _parserSettings, _fileExtension);
fullTitle = Helper.RemoveReleaseGroup(fullTitle, _parserSettings, _releaseGroup);
_removedTokens = Helper.RemoveTokens(_parserSettings, _detectedOldSpacingChar, ref fullTitle);
_audioCodec = Helper.FindTokens(ref fullTitle, _detectedOldSpacingChar.ToString(), _parserSettings.AudioCodecs, true).LastOrDefault();
if (_audioCodec == null)
{
_audioCodec = string.Empty;
}
else
{
_removedTokens.Add(_audioCodec);
}
_videoCodec = Helper.FindTokens(ref fullTitle, _detectedOldSpacingChar.ToString(), _parserSettings.VideoCodecs, true).LastOrDefault();
if (_videoCodec == null)
{
_videoCodec = string.Empty;
}
else
{
_removedTokens.Add(_videoCodec);
}
_removedTokens = _removedTokens.OrderBy(x => x).ToList();
// remove fileextension
if (_fileExtension != null)
{
removeRegex = new Regex(_fileExtension, RegexOptions.IgnoreCase);
fullTitle = removeRegex.Replace(fullTitle, "");
}
// Get and remove year
_year = Helper.GetYear(fullTitle);
fullTitle = fullTitle.Replace(_year.ToString(), "");
// Remove double spacer
while (fullTitle.Contains(_detectedOldSpacingChar.ToString() + _detectedOldSpacingChar.ToString()))
{
fullTitle = fullTitle.Replace(_detectedOldSpacingChar.ToString() + _detectedOldSpacingChar.ToString(), _detectedOldSpacingChar.ToString());
}
// Convert to new spacer
fullTitle = fullTitle.Replace(_detectedOldSpacingChar.ToString(), _parserSettings.NewSpacingChar.ToString());
// Remove trailing spacer
fullTitle = fullTitle.Trim().Trim(_detectedOldSpacingChar).Trim(_parserSettings.NewSpacingChar);
// ###################################################################
// ### Try get Season and Episode ID
// ###################################################################
_title = Helper.GetTitle(_parserSettings, _detectedOldSpacingChar, fullTitle, ref warningOrErrorOccurred, ref _state);
_episodeTitle = Helper.GetEpisodeTitle(_parserSettings, fullTitle);
_isSeries = Helper.IsSeries(_parserSettings, fullTitle);
_season = Helper.GetSeasonID(_parserSettings, fullTitle);
_episodes = Helper.GetEpisodeIDs(_parserSettings, fullTitle);
_isMultiEpisode = _episodes.Count > 1;
}
else
{
// ERROR
_state |= State.ERR_EMPTY_OR_TO_SHORT_ARGUMENT;
_resolutions = Helper.MaintainUnknownResolution(_resolutions);
return this;
}
// SERIES
if (!warningOrErrorOccurred)
{
_state |= State.OK_SUCCESS;
}
_resolutions = Helper.MaintainUnknownResolution(_resolutions);
_processingDuration = DateTime.Now - _parseStartTime;
return this;
}
catch (Exception ex)
{
_exception = ex;
// Throw exception if the flag is set
if (_parserSettings.ThrowExceptionInsteadOfErrorFlag)
{
throw;
}
else
{
// ERROR
_state |= State.ERR_UNKNOWN_ERROR;
return this;
}
}
}
// ############################################################
// ### Local Helper Functions
// ############################################################
#region HelperFunctions
/// <summary>
/// Clears and resets the object for the new execution
/// </summary>
private void ResetObject()
{
_episodeTitle = string.Empty;
_exception = null;
_fileExtension = string.Empty;
_isSeries = false;
_originalString = string.Empty;
_removedTokens.Clear();
_resolutions = new List<ResolutionsMap>();
_season = -1;
_state = State.UNKNOWN;
_title = string.Empty;
_year = -1;
_detectedOldSpacingChar = new char();
_processingDuration = new TimeSpan();
_parseStartTime = DateTime.Now;
_releaseGroup = string.Empty;
}
#endregion HelperFunctions
}
}
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">14.0</VisualStudioVersion>
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
</PropertyGroup>
<Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.Props" Condition="'$(VSToolsPath)' != ''" />
<PropertyGroup Label="Globals">
<ProjectGuid>958064ff-c77f-478c-9243-3e374d2bdac0</ProjectGuid>
<RootNamespace>SeriesIDParserCore</RootNamespace>
<BaseIntermediateOutputPath Condition="'$(BaseIntermediateOutputPath)'=='' ">.\obj</BaseIntermediateOutputPath>
<OutputPath Condition="'$(OutputPath)'=='' ">.\bin\</OutputPath>
<TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>
</PropertyGroup>
<PropertyGroup>
<SchemaVersion>2.0</SchemaVersion>
</PropertyGroup>
<Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.targets" Condition="'$(VSToolsPath)' != ''" />
</Project>
{
"title": "SeriesIDParserCore",
"version": "7.0.0-*",
"dependencies": {
"NETStandard.Library": "1.6.0",
"System.Xml.XmlSerializer": "4.0.11"
},
"frameworks": {
"netstandard1.6": {
"imports": "dnxcore50"
}
}
}
using SeriesIDParserCore;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace SeriesIDParserCore_Console_Demo
{
public class Program
{
public static void Main(string[] args)
{
Console.WriteLine("SeriesIDParserCore");
Console.WriteLine(Environment.NewLine);
Console.Write("Example: Knight.Rider.S01E07.Die.grosse.Duerre.1982.German.DVDRip.XviD-c0nFuSed.mkv");
Console.WriteLine(Environment.NewLine);
Console.Write("Enter string to parse: ");
string inputLine = Console.ReadLine();
Console.WriteLine("Try to parse: \"" + inputLine + "\"");
Console.WriteLine(Environment.NewLine);
// Use the following three lines as a example for editing the parser settings
// ParserSettings ps = new ParserSettings();
// ps.NewSpacingChar = '-';
// SeriesID sid = new SeriesID(ps);
// Creating the parser object with default settings(empty ctor)
SeriesID sid = new SeriesID();
sid.Parse(inputLine);
Console.WriteLine("OriginalString (string): {0}", sid.OriginalString);
Console.WriteLine("ParsedString (string): {0}", sid.ParsedString);
Console.WriteLine("Title (string): {0}", sid.Title);
Console.WriteLine("EpisodeTitle (string): {0}", sid.EpisodeTitle);
Console.WriteLine("FullTitle (string): {0}", sid.FullTitle);
Console.WriteLine("IsSeries (bool): {0}", sid.IsSeries);
Console.WriteLine("IsMultiEpisode (bool): {0}", sid.IsMultiEpisode);
Console.WriteLine("Season (int): {0}", sid.Season);
Console.WriteLine("Episodes (int list): {0}", string.Join(", ", sid.Episodes));
Console.WriteLine("IDString (string): {0}", sid.IDString);
Console.WriteLine("Resolutions (enum list Resolutions): {0}", string.Join(", ", sid.Resolutions));
Console.WriteLine("Year (int): {0}", sid.Year);
Console.WriteLine("FileExtension (string): {0}", sid.FileExtension);
Console.WriteLine("RemovedTokens (string list): {0}", string.Join(", ", sid.RemovedTokens));
Console.WriteLine("State (enum State): {0}", sid.State);
Console.WriteLine("DetectedOldSpacingChar (char): '{0}'", sid.DetectedOldSpacingChar);
Console.WriteLine("ProcessingDuration (TimeSpan): {0}", sid.ProcessingDuration.TotalMilliseconds + " ms");
Console.WriteLine("ReleaseGroup (string): {0}", sid.ReleaseGroup);
Console.WriteLine("AudioCodec (string): {0}", sid.AudioCodec);
Console.WriteLine("VideoCodec (string): {0}", sid.VideoCodec);
if (sid.Exception != null)
{
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine(sid.Exception.Message + Environment.NewLine);
Console.WriteLine(sid.Exception.Source + Environment.NewLine);
Console.WriteLine(sid.Exception.StackTrace + Environment.NewLine);
Console.ResetColor();
}
Console.WriteLine("Done. Hit 'Enter' to exit.");
Console.WriteLine(Environment.NewLine);
Console.ReadLine();
}
}
}
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("SeriesIDParserCore_Console_Demo")]
[assembly: AssemblyTrademark("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("d7d1b627-b679-4c4a-9353-ef23a6fd37ca")]
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">14.0</VisualStudioVersion>
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
</PropertyGroup>
<Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.Props" Condition="'$(VSToolsPath)' != ''" />
<PropertyGroup Label="Globals">
<ProjectGuid>d7d1b627-b679-4c4a-9353-ef23a6fd37ca</ProjectGuid>
<RootNamespace>SeriesIDParserCore_Console_Demo</RootNamespace>
<BaseIntermediateOutputPath Condition="'$(BaseIntermediateOutputPath)'=='' ">.\obj</BaseIntermediateOutputPath>
<OutputPath Condition="'$(OutputPath)'=='' ">.\bin\</OutputPath>
<TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>
</PropertyGroup>
<PropertyGroup>
<SchemaVersion>2.0</SchemaVersion>
</PropertyGroup>
<Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.targets" Condition="'$(VSToolsPath)' != ''" />
</Project>
{
"buildOptions": {
"emitEntryPoint": true
},
"dependencies": {
"Microsoft.NETCore.App": {
"type": "platform",
"version": "1.0.1"
},
"SeriesIDParserCore": "7.0.0-*"
},
"frameworks": {
"netcoreapp1.0": {
"imports": "dnxcore50"
}
},
"version": "1.0.0-*"
}
......@@ -51,7 +51,6 @@ namespace SeriesIDParser_Test
// Usual - Test001
SeriesID id = new SeriesID
{
Episode = 5,
Episodes = new List<int>() {5},
IsMultiEpisode = false,
EpisodeTitle = "Teil5",
......@@ -84,7 +83,6 @@ namespace SeriesIDParser_Test
// Small s-e - Test002
id = new SeriesID
{
Episode = 5,
Episodes = new List<int>() { 5 },
IsMultiEpisode = false,
EpisodeTitle = "Teil5",
......@@ -117,7 +115,6 @@ namespace SeriesIDParser_Test
// three s-e - Test003
id = new SeriesID
{
Episode = 5,
Episodes = new List<int>() { 5 },
IsMultiEpisode = false,
EpisodeTitle = "Teil5",
......@@ -150,7 +147,6 @@ namespace SeriesIDParser_Test
// single s-e - Test004
id = new SeriesID
{
Episode = 5,
Episodes = new List<int>() { 5 },
IsMultiEpisode = false,
EpisodeTitle = "Teil5",
......@@ -183,7 +179,6 @@ namespace SeriesIDParser_Test
// different s-e count - Test005
id = new SeriesID
{
Episode = 5,
Episodes = new List<int>() { 5 },
IsMultiEpisode = false,
EpisodeTitle = "Teil5",
......@@ -216,7 +211,6 @@ namespace SeriesIDParser_Test
// token doubble - Test006
id = new SeriesID
{
Episode = 5,
Episodes = new List<int>() { 5 },
IsMultiEpisode = false,
EpisodeTitle = "Teil5",
......@@ -249,7 +243,6 @@ namespace SeriesIDParser_Test
// Usual with custom spacer - Test007
id = new SeriesID
{
Episode = 5,
Episodes = new List<int>() { 5 },
IsMultiEpisode = false,
EpisodeTitle = "Teil5",
......@@ -282,7 +275,6 @@ namespace SeriesIDParser_Test
//Remove Hoster-String - Test008
id = new SeriesID
{
Episode = 10,
Episodes = new List<int>() { 10 },
IsMultiEpisode = false,
EpisodeTitle = string.Empty,
......@@ -315,7 +307,6 @@ namespace SeriesIDParser_Test
//Remove Hoster-String with spaces - Test009
id = new SeriesID
{
Episode = 10,
Episodes = new List<int>() { 10 },
IsMultiEpisode = false,
EpisodeTitle = string.Empty,
......@@ -348,7 +339,6 @@ namespace SeriesIDParser_Test
//Remove Hoster-String with spaces and extension - Test010
id = new SeriesID
{
Episode = 10,
Episodes = new List<int>() { 10 },
IsMultiEpisode = false,
EpisodeTitle = string.Empty,
......@@ -381,7 +371,6 @@ namespace SeriesIDParser_Test
// Movie with extension - Test011
id = new SeriesID
{
Episode = -1,
Episodes = new List<int>(),
IsMultiEpisode = false,
EpisodeTitle = string.Empty,
......@@ -414,7 +403,6 @@ namespace SeriesIDParser_Test
// Movie usual - Test012
id = new SeriesID
{
Episode = -1,
Episodes = new List<int>(),
IsMultiEpisode = false,
EpisodeTitle = string.Empty,
......@@ -447,7 +435,6 @@ namespace SeriesIDParser_Test
// Series multi Resolutions - Test013
id = new SeriesID
{
Episode = 1,
Episodes = new List<int>() { 1 },
IsMultiEpisode = false,
EpisodeTitle = "Endlich.frei",
......@@ -480,7 +467,6 @@ namespace SeriesIDParser_Test
// Series down sampled (Original String) - Test014