forked from openlp/openlp
Added one more test for song db upgrade
This commit is contained in:
parent
4ca013e211
commit
80a8434458
@ -172,7 +172,7 @@ class TestDB(TestCase):
|
||||
# THEN: It should return the name with the type in brackets
|
||||
self.assertEqual("John Doe (Words)", display_name)
|
||||
|
||||
def test_upgrade_song_db(self):
|
||||
def test_upgrade_old_song_db(self):
|
||||
"""
|
||||
Test that we can upgrade an old song db to the current schema
|
||||
"""
|
||||
@ -188,3 +188,20 @@ class TestDB(TestCase):
|
||||
# Then the song db should have been upgraded to the latest version
|
||||
self.assertEqual(updated_to_version, latest_version,
|
||||
'The song DB should have been upgrade to the latest version')
|
||||
|
||||
def test_upgrade_invalid_song_db(self):
|
||||
"""
|
||||
Test that we can upgrade an invalid song db to the current schema
|
||||
"""
|
||||
# GIVEN: A song db with invalid version
|
||||
invalid_db_path = os.path.join(TEST_RESOURCES_PATH, "songs", 'songs-2.2-invalid.sqlite')
|
||||
invalid_db_tmp_path = os.path.join(self.tmp_folder, 'songs-2.2-invalid.sqlite')
|
||||
shutil.copyfile(invalid_db_path, invalid_db_tmp_path)
|
||||
db_url = 'sqlite:///' + invalid_db_tmp_path
|
||||
|
||||
# WHEN: upgrading the db
|
||||
updated_to_version, latest_version = upgrade_db(db_url, upgrade)
|
||||
|
||||
# Then the song db should have been upgraded to the latest version without errors
|
||||
self.assertEqual(updated_to_version, latest_version,
|
||||
'The song DB should have been upgrade to the latest version')
|
||||
|
0
tests/resources/songs/songs-1.9.7.sqlite
Executable file → Normal file
0
tests/resources/songs/songs-1.9.7.sqlite
Executable file → Normal file
BIN
tests/resources/songs/songs-2.2-invalid.sqlite
Normal file
BIN
tests/resources/songs/songs-2.2-invalid.sqlite
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user