Add queued FFmpeg conversion and finish splitting the window from the host.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-08-25 01:49:50 +02:00
parent 48d03f794f
commit 6fc7506eb7
85 changed files with 3394 additions and 512 deletions

View File

@@ -393,6 +393,8 @@ public class FileRelationTests
RequireGitClean = true,
DoCompress = true,
ArchiveFormat = ArchiveFormat.SevenZip,
DoConvert = true,
ConversionKind = ConversionKind.HeicToJpeg,
DoCopy = false,
DoRename = true,
RenamePrefix = "x_",
@@ -410,6 +412,8 @@ public class FileRelationTests
Assert.True(loaded.RequireGitClean);
Assert.True(loaded.DoCompress);
Assert.Equal(ArchiveFormat.SevenZip, loaded.ArchiveFormat);
Assert.True(loaded.DoConvert);
Assert.Equal(ConversionKind.HeicToJpeg, loaded.ConversionKind);
Assert.True(loaded.DoRename);
Assert.Equal("x_", loaded.RenamePrefix);
Assert.Equal(".git\nbin", loaded.Excludes);
@@ -471,4 +475,16 @@ public class IndexStoreLockTests
() => reader.RunWriteAsync(_ => Task.CompletedTask));
Assert.Contains("read-only", write.Message, StringComparison.OrdinalIgnoreCase);
}
[Fact]
public async Task IsHeld_is_true_while_a_writer_is_open()
{
var path = Path.Combine(Path.GetTempPath(), "ew-tests", Guid.NewGuid().ToString("N"), "index.db");
Assert.False(IndexStoreLock.IsHeld(path));
await using var writer = new SqliteIndexStore(path, NullLogger<SqliteIndexStore>.Instance);
await writer.OpenAsync();
Assert.True(await Task.Run(() => IndexStoreLock.IsHeld(path)));
await writer.DisposeAsync();
Assert.False(IndexStoreLock.IsHeld(path));
}
}