Change editor rule

This commit is contained in:
2026-09-24 13:24:43 +02:00
parent 16478678b5
commit 73e37dbecd
401 changed files with 14735 additions and 12995 deletions
@@ -1,50 +1,51 @@
using Musify.Domain.ValueObjects;
using Xunit;
namespace Musify.Domain.Tests.ValueObjects;
public sealed class GenreCompatibilityTests
namespace Musify.Domain.Tests.ValueObjects
{
[Theory]
[InlineData(Genre.Classical, Genre.Metal)]
[InlineData(Genre.Classical, Genre.Punk)]
[InlineData(Genre.Ambient, Genre.Dubstep)]
[InlineData(Genre.Lofi, Genre.DrumAndBass)]
public void AreCompatible_IncompatiblePair_ReturnsFalse(Genre first, Genre second)
public sealed class GenreCompatibilityTests
{
Assert.False(GenreCompatibility.AreCompatible(first, second));
Assert.False(GenreCompatibility.AreCompatible(second, first));
}
[Theory]
[InlineData(Genre.Classical, Genre.Metal)]
[InlineData(Genre.Classical, Genre.Punk)]
[InlineData(Genre.Ambient, Genre.Dubstep)]
[InlineData(Genre.Lofi, Genre.DrumAndBass)]
public void AreCompatible_IncompatiblePair_ReturnsFalse(Genre first, Genre second)
{
Assert.False(GenreCompatibility.AreCompatible(first, second));
Assert.False(GenreCompatibility.AreCompatible(second, first));
}
[Theory]
[InlineData(Genre.Pop, Genre.Rock)]
[InlineData(Genre.HipHop, Genre.RnB)]
[InlineData(Genre.Classical, Genre.Jazz)]
public void AreCompatible_CompatiblePair_ReturnsTrue(Genre first, Genre second)
{
Assert.True(GenreCompatibility.AreCompatible(first, second));
}
[Theory]
[InlineData(Genre.Pop, Genre.Rock)]
[InlineData(Genre.HipHop, Genre.RnB)]
[InlineData(Genre.Classical, Genre.Jazz)]
public void AreCompatible_CompatiblePair_ReturnsTrue(Genre first, Genre second)
{
Assert.True(GenreCompatibility.AreCompatible(first, second));
}
[Fact]
public void AreCompatible_SameGenre_ReturnsTrue()
{
Assert.True(GenreCompatibility.AreCompatible(Genre.Pop, Genre.Pop));
}
[Fact]
public void AreCompatible_SameGenre_ReturnsTrue()
{
Assert.True(GenreCompatibility.AreCompatible(Genre.Pop, Genre.Pop));
}
[Fact]
public void FindConflicts_NoIncompatiblePairs_ReturnsEmpty()
{
var conflicts = GenreCompatibility.FindConflicts([Genre.Pop, Genre.Rock, Genre.Indie]);
[Fact]
public void FindConflicts_NoIncompatiblePairs_ReturnsEmpty()
{
var conflicts = GenreCompatibility.FindConflicts([Genre.Pop, Genre.Rock, Genre.Indie]);
Assert.Empty(conflicts);
}
Assert.Empty(conflicts);
}
[Fact]
public void FindConflicts_IncompatiblePairPresent_ReturnsIt()
{
var conflicts = GenreCompatibility.FindConflicts([Genre.Pop, Genre.Classical, Genre.Metal]);
[Fact]
public void FindConflicts_IncompatiblePairPresent_ReturnsIt()
{
var conflicts = GenreCompatibility.FindConflicts([Genre.Pop, Genre.Classical, Genre.Metal]);
var conflict = Assert.Single(conflicts);
Assert.Equal((Genre.Classical, Genre.Metal), conflict);
var conflict = Assert.Single(conflicts);
Assert.Equal((Genre.Classical, Genre.Metal), conflict);
}
}
}
@@ -1,22 +1,23 @@
using Musify.Domain.ValueObjects;
using Xunit;
namespace Musify.Domain.Tests.ValueObjects;
public sealed class TrackAudioTests
namespace Musify.Domain.Tests.ValueObjects
{
[Theory]
[InlineData(ProcessingStatus.Pending, false, false, true)]
[InlineData(ProcessingStatus.Processing, false, false, true)]
[InlineData(ProcessingStatus.Completed, true, false, false)]
[InlineData(ProcessingStatus.Failed, false, true, false)]
public void ComputedFlags_ReflectTranscodeStatus(
ProcessingStatus status, bool expectedProcessed, bool expectedFailed, bool expectedInProgress)
public sealed class TrackAudioTests
{
var audio = new TrackAudio { TranscodeStatus = status };
[Theory]
[InlineData(ProcessingStatus.Pending, false, false, true)]
[InlineData(ProcessingStatus.Processing, false, false, true)]
[InlineData(ProcessingStatus.Completed, true, false, false)]
[InlineData(ProcessingStatus.Failed, false, true, false)]
public void ComputedFlags_ReflectTranscodeStatus(
ProcessingStatus status, bool expectedProcessed, bool expectedFailed, bool expectedInProgress)
{
var audio = new TrackAudio { TranscodeStatus = status };
Assert.Equal(expectedProcessed, audio.IsProcessed);
Assert.Equal(expectedFailed, audio.IsFailed);
Assert.Equal(expectedInProgress, audio.IsInProgress);
Assert.Equal(expectedProcessed, audio.IsProcessed);
Assert.Equal(expectedFailed, audio.IsFailed);
Assert.Equal(expectedInProgress, audio.IsInProgress);
}
}
}
@@ -1,19 +1,20 @@
using Musify.Domain.ValueObjects;
using Xunit;
namespace Musify.Domain.Tests.ValueObjects;
public sealed class TrackPicturesTests
namespace Musify.Domain.Tests.ValueObjects
{
[Theory]
[InlineData(ProcessingStatus.Pending, false)]
[InlineData(ProcessingStatus.Processing, false)]
[InlineData(ProcessingStatus.Completed, true)]
[InlineData(ProcessingStatus.Failed, false)]
public void IsProcessed_ReflectsProcessingStatus(ProcessingStatus status, bool expected)
public sealed class TrackPicturesTests
{
var pictures = new TrackPictures { ProcessingStatus = status };
[Theory]
[InlineData(ProcessingStatus.Pending, false)]
[InlineData(ProcessingStatus.Processing, false)]
[InlineData(ProcessingStatus.Completed, true)]
[InlineData(ProcessingStatus.Failed, false)]
public void IsProcessed_ReflectsProcessingStatus(ProcessingStatus status, bool expected)
{
var pictures = new TrackPictures { ProcessingStatus = status };
Assert.Equal(expected, pictures.IsProcessed);
Assert.Equal(expected, pictures.IsProcessed);
}
}
}