diff --git a/src/database/migrations/migration25-26.sql b/src/database/migrations/migration25-26.sql index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..e5d5851e8ff05907c9837b78aefa1f22bf9e2fec 100644 --- a/src/database/migrations/migration25-26.sql +++ b/src/database/migrations/migration25-26.sql @@ -0,0 +1,30 @@ +/* + * Ensure we don't have left over shows in the FTS table while the actual one + * is empty + */ +"CREATE TEMPORARY TABLE " + Show::Table::Name + "_backup" +"(" + "id_show INTEGER PRIMARY KEY," + "title TEXT," + "nb_episodes UNSIGNED INTEGER," + "release_date UNSIGNED INTEGER," + "short_summary TEXT," + "artwork_mrl TEXT," + "tvdb_id TEXT," + "is_present UNSIGNED INTEGER" +")", + +"INSERT INTO " + Show::Table::Name + "_backup SELECT * FROM " + Show::Table::Name, + +"DROP TABLE " + Show::Table::Name, +"DROP TABLE " + Show::FtsTable::Name, + +Show::schema( Show::Table::Name, 26 ), +Show::schema( Show::FtsTable::Name, 26 ), + +"INSERT INTO " + Show::Table::Name + " SELECT * FROM " + Show::Table::Name + "_backup", + +"DROP TABLE " + Show::Table::Name + "_backup", + +Show::trigger( Show::Triggers::InsertFts, 26 ), +Show::trigger( Show::Triggers::DeleteFts, 26 ), diff --git a/test/unittest/MiscTests.cpp b/test/unittest/MiscTests.cpp index 89f14b2c28098a3741f810c14dc7e805fbc2d5ff..7d25aa079aef5ff0571ec378e48b25fa8429fd01 100644 --- a/test/unittest/MiscTests.cpp +++ b/test/unittest/MiscTests.cpp @@ -656,4 +656,7 @@ TEST_F( DbModel, Upgrade24to25 ) TEST_F( DbModel, Upgrade25to26 ) { CommonMigrationTest( SRC_DIR "/test/unittest/db_v25.sql" ); + + auto show = ml->createShow( "new test show" ); + ASSERT_NE( nullptr, show ); } diff --git a/test/unittest/db_v25.sql b/test/unittest/db_v25.sql index 1b89358f378a3fe3fe946177d458b3eccada5fc3..63204dd163e37814ba67ffa4921ef00bc8309c2b 100644 --- a/test/unittest/db_v25.sql +++ b/test/unittest/db_v25.sql @@ -137,7 +137,7 @@ INSERT INTO AlbumTrack VALUES(1,1,10057,4,NULL,0,1,0); INSERT INTO AlbumTrack VALUES(2,2,10057,5,NULL,0,1,0); INSERT INTO AlbumTrack VALUES(3,3,10057,6,NULL,0,1,0); INSERT INTO AlbumTrack VALUES(4,4,10057,7,NULL,0,1,0); -INSERT INTO Show VALUES(1,NULL,0,NULL,NULL,NULL,NULL,0); +INSERT INTO ShowFts(rowid, title) VALUES(1,'test show'); INSERT INTO AudioTrack VALUES(1,'mpga',128000,44100,2,'','',1); INSERT INTO AudioTrack VALUES(2,'mpga',128000,44100,2,'','',2); INSERT INTO AudioTrack VALUES(3,'mpga',128000,44100,2,'','',3);