Removed some more orphaned db entries

This commit is contained in:
emeric
2024-10-03 18:53:45 +02:00
parent 083283d2a7
commit b5d650791c
6 changed files with 127 additions and 0 deletions
+75
View File
@@ -749,6 +749,43 @@ namespace lms::db::tests
}
}
TEST_F(DatabaseFixture, Label_orphan)
{
ScopedLabel label{ session, "MyLabel" };
{
auto transaction{ session.createReadTransaction() };
auto labels{ Label::findOrphanIds(session) };
ASSERT_EQ(labels.results.size(), 1);
EXPECT_EQ(labels.results.front(), label.getId());
}
ScopedRelease release{ session, "MyRelease" };
{
auto transaction{ session.createWriteTransaction() };
release.get().modify()->addLabel(label.get());
}
{
auto transaction{ session.createReadTransaction() };
auto labels{ Label::findOrphanIds(session) };
EXPECT_EQ(labels.results.size(), 0);
}
{
auto transaction{ session.createWriteTransaction() };
release.get().modify()->clearLabels();
}
{
auto transaction{ session.createReadTransaction() };
auto labels{ Label::findOrphanIds(session) };
ASSERT_EQ(labels.results.size(), 1);
EXPECT_EQ(labels.results.front(), label.getId());
}
}
TEST_F(DatabaseFixture, ReleaseType)
{
{
@@ -766,6 +803,44 @@ namespace lms::db::tests
}
}
TEST_F(DatabaseFixture, ReleaseType_orphan)
{
// Orphan tests
ScopedReleaseType releaseType{ session, "album" };
{
auto transaction{ session.createReadTransaction() };
auto releaseTypes{ ReleaseType::findOrphanIds(session) };
ASSERT_EQ(releaseTypes.results.size(), 1);
EXPECT_EQ(releaseTypes.results.front(), releaseType.getId());
}
ScopedRelease release{ session, "MyRelease" };
{
auto transaction{ session.createWriteTransaction() };
release.get().modify()->addReleaseType(releaseType.get());
}
{
auto transaction{ session.createReadTransaction() };
auto releaseTypes{ ReleaseType::findOrphanIds(session) };
EXPECT_EQ(releaseTypes.results.size(), 0);
}
{
auto transaction{ session.createWriteTransaction() };
release.get().modify()->clearReleaseTypes();
}
{
auto transaction{ session.createReadTransaction() };
auto releaseTypes{ ReleaseType::findOrphanIds(session) };
ASSERT_EQ(releaseTypes.results.size(), 1);
EXPECT_EQ(releaseTypes.results.front(), releaseType.getId());
}
}
TEST_F(DatabaseFixture, Release_releaseType)
{
ScopedRelease release{ session, "MyRelease" };