Coverage for seedboxsync/core/database/migrations/0007_torrent_info_columns.py: 68%

19 statements  

« prev     ^ index     » next       coverage.py v7.16.1, created at 2026-09-26 17:14 +0000

1# Generated from a schema diff on 2026-09-24 07:59. 

2# ruff: noqa: ANN001, ANN201, D100, D103, F403, F405 

3# type: ignore 

4from flask import current_app 

5from peewee import * 

6from seedboxsync.core.database.models import Torrent 

7 

8 

9def up(migrator, db): 

10 migrator.migrate(migrator.add_column("torrent", "announcer", TextField(null=True))) 

11 migrator.migrate(migrator.add_column("torrent", "source", TextField(null=True))) 

12 migrator.migrate(migrator.add_column("torrent", "total_files", IntegerField(null=True))) 

13 migrator.migrate(migrator.add_column("torrent", "total_size", IntegerField(null=True))) 

14 migrator.migrate(migrator.add_column("torrent", "private", BooleanField(default=False))) 

15 

16 # Update database 

17 with current_app.app_context(): 

18 torrents = Torrent.select().where((Torrent.announcer == "") | (Torrent.announcer.is_null())) 

19 for torrent in torrents: 

20 torrent.save() 

21 

22 

23def down(migrator, db): 

24 migrator.migrate(migrator.drop_column("torrent", "private")) 

25 migrator.migrate(migrator.drop_column("torrent", "total_size")) 

26 migrator.migrate(migrator.drop_column("torrent", "total_files")) 

27 migrator.migrate(migrator.drop_column("torrent", "source")) 

28 migrator.migrate(migrator.drop_column("torrent", "announcer"))