Compare commits

...

10 commits

Author SHA1 Message Date
Malte Rosenbjerg
ea8c493f8a Merge branch 'main' into pr/571 2025-10-16 14:46:05 +02:00
Malte Rosenbjerg
bd55ec2a51
Merge pull request #579 from rosenbjerg/cleanup-tests
Cleanup tests
2025-10-16 14:45:53 +02:00
Malte Rosenbjerg
cd258991bd Add prefix to tests modifying GlobalOptions 2025-10-16 14:42:04 +02:00
Malte Rosenbjerg
5082e6503e Set OrderTestsByNameInClass to true 2025-10-16 14:41:47 +02:00
Malte Rosenbjerg
48ccd3e291 Update test config.json file 2025-10-16 14:41:36 +02:00
Malte Rosenbjerg
b8de2fc545 Parallelize on MethodLevel 2025-10-16 14:41:26 +02:00
Malte Rosenbjerg
91bbfa850e Avoid modifying global options if not necessary 2025-10-16 14:36:25 +02:00
Malte Rosenbjerg
7c71a70a0c Revert "Improve test readability"
This reverts commit 85e7170fd9.
2025-10-16 14:26:53 +02:00
Malte Rosenbjerg
0c467e3a05 Improve resetting 2025-10-16 14:14:47 +02:00
Malte Rosenbjerg
65e8ba85e3 Move tests 2025-10-16 14:09:59 +02:00
7 changed files with 41 additions and 46 deletions

View file

@ -682,4 +682,25 @@ public class ArgumentBuilderTest
// Act & Assert
Assert.ThrowsExactly<FileNotFoundException>(() => argument.Pre());
}
[TestMethod]
public void Concat_Escape()
{
var arg = new DemuxConcatArgument([@"Heaven's River\05 - Investigation.m4b"]);
CollectionAssert.AreEquivalent(new[] { @"file 'Heaven'\''s River\05 - Investigation.m4b'" }, arg.Values.ToArray());
}
[TestMethod]
public void Audible_Aaxc_Test()
{
var arg = new AudibleEncryptionKeyArgument("123", "456");
Assert.AreEqual("-audible_key 123 -audible_iv 456", arg.Text);
}
[TestMethod]
public void Audible_Aax_Test()
{
var arg = new AudibleEncryptionKeyArgument("62689101");
Assert.AreEqual("-activation_bytes 62689101", arg.Text);
}
}

View file

@ -1 +1 @@
[assembly: Parallelize]
[assembly: Parallelize(Scope = ExecutionScope.MethodLevel)]

View file

@ -1,6 +1,4 @@
using FFMpegCore.Arguments;
namespace FFMpegCore.Test;
namespace FFMpegCore.Test;
[TestClass]
public class FFMpegArgumentProcessorTest
@ -13,9 +11,9 @@ public class FFMpegArgumentProcessorTest
}
[TestMethod]
public void Processor_GlobalOptions_GetUsed()
public void ZZZ_Processor_GlobalOptions_GetUsed()
{
var globalWorkingDir = "Whatever1";
var globalWorkingDir = "Whatever";
var processor = CreateArgumentProcessor();
try
@ -45,9 +43,9 @@ public class FFMpegArgumentProcessorTest
}
[TestMethod]
public void Processor_Options_CanBeOverridden_And_Configured()
public void ZZZ_Processor_Options_CanBeOverridden_And_Configured()
{
var globalConfig = "Whatever2";
var globalConfig = "Whatever";
try
{
@ -59,14 +57,14 @@ public class FFMpegArgumentProcessorTest
var overrideOptions = new FFOptions { WorkingDirectory = "override" };
GlobalFFOptions.Configure(new FFOptions { WorkingDirectory = globalConfig, TemporaryFilesFolder = globalConfig, BinaryFolder = globalConfig });
var configuredOptions = processor.GetConfiguredOptions(overrideOptions);
var options = processor.GetConfiguredOptions(overrideOptions);
Assert.AreEqual(configuredOptions.WorkingDirectory, overrideOptions.WorkingDirectory);
Assert.AreEqual(configuredOptions.TemporaryFilesFolder, overrideOptions.TemporaryFilesFolder);
Assert.AreEqual(configuredOptions.BinaryFolder, overrideOptions.BinaryFolder);
Assert.AreEqual(options.WorkingDirectory, overrideOptions.WorkingDirectory);
Assert.AreEqual(options.TemporaryFilesFolder, overrideOptions.TemporaryFilesFolder);
Assert.AreEqual(options.BinaryFolder, overrideOptions.BinaryFolder);
Assert.AreEqual(sessionTempDir, configuredOptions.TemporaryFilesFolder);
Assert.AreNotEqual(globalConfig, configuredOptions.BinaryFolder);
Assert.AreEqual(sessionTempDir, options.TemporaryFilesFolder);
Assert.AreNotEqual(globalConfig, options.BinaryFolder);
}
finally
{
@ -75,9 +73,9 @@ public class FFMpegArgumentProcessorTest
}
[TestMethod]
public void Options_Global_And_Session_Options_Can_Differ()
public void ZZZ_Options_Global_And_Session_Options_Can_Differ()
{
var globalWorkingDir = "Whatever3";
var globalWorkingDir = "Whatever";
try
{
@ -97,25 +95,4 @@ public class FFMpegArgumentProcessorTest
GlobalFFOptions.Configure(new FFOptions());
}
}
[TestMethod]
public void Concat_Escape()
{
var arg = new DemuxConcatArgument([@"Heaven's River\05 - Investigation.m4b"]);
CollectionAssert.AreEquivalent(new[] { @"file 'Heaven'\''s River\05 - Investigation.m4b'" }, arg.Values.ToArray());
}
[TestMethod]
public void Audible_Aaxc_Test()
{
var arg = new AudibleEncryptionKeyArgument("123", "456");
Assert.AreEqual("-audible_key 123 -audible_iv 456", arg.Text);
}
[TestMethod]
public void Audible_Aax_Test()
{
var arg = new AudibleEncryptionKeyArgument("62689101");
Assert.AreEqual("-activation_bytes 62689101", arg.Text);
}
}

View file

@ -5,6 +5,7 @@
<IsPackable>false</IsPackable>
<Nullable>disable</Nullable>
<LangVersion>default</LangVersion>
<OrderTestsByNameInClass>true</OrderTestsByNameInClass>
</PropertyGroup>
<ItemGroup>

View file

@ -27,20 +27,16 @@ public class FFMpegOptionsTest
}
[TestMethod]
public void Options_Set_Programmatically()
public void ZZZ_Options_Set_Programmatically()
{
var original = GlobalFFOptions.Current;
try
{
GlobalFFOptions.Configure(new FFOptions { BinaryFolder = "Whatever" });
Assert.AreEqual(
"Whatever",
GlobalFFOptions.Current.BinaryFolder
);
Assert.AreEqual("Whatever", GlobalFFOptions.Current.BinaryFolder);
}
finally
{
GlobalFFOptions.Configure(original);
GlobalFFOptions.Configure(new FFOptions());
}
}
}

View file

@ -824,7 +824,6 @@ public class VideoTest
using var outputFile = new TemporaryFile("out.mp4");
var dataReceived = false;
GlobalFFOptions.Configure(opt => opt.Encoding = Encoding.UTF8);
var success = FFMpegArguments
.FromFileInput(TestResources.Mp4Video)
.WithGlobalOptions(options => options
@ -832,6 +831,7 @@ public class VideoTest
.OutputToFile(outputFile, false, opt => opt
.WithDuration(TimeSpan.FromSeconds(2)))
.NotifyOnError(_ => dataReceived = true)
.Configure(opt => opt.Encoding = Encoding.UTF8)
.ProcessSynchronously();
Assert.IsTrue(dataReceived);

View file

@ -1,3 +1,3 @@
{
"RootDirectory": ""
"BinaryFolder": ""
}