diff options
author | zlg <zlg@zlg.space> | 2018-10-12 17:50:53 -0700 |
---|---|---|
committer | zlg <zlg@zlg.space> | 2018-10-12 17:50:53 -0700 |
commit | c7d09704fb911d59139aff5ad0ab4c35a2ed9493 (patch) | |
tree | 5d8b04ae93a69d3fca9dd0c6a4a747e5d431a163 | |
parent | Bump to 0.3beta1 for PyPI (diff) | |
download | vgstash-c7d09704fb911d59139aff5ad0ab4c35a2ed9493.tar.gz vgstash-c7d09704fb911d59139aff5ad0ab4c35a2ed9493.tar.bz2 vgstash-c7d09704fb911d59139aff5ad0ab4c35a2ed9493.tar.xz vgstash-c7d09704fb911d59139aff5ad0ab4c35a2ed9493.zip |
cli: Add zero-game import/export messages
-rw-r--r-- | src/vgstash_cli.py | 21 | ||||
-rw-r--r-- | tests/test_vgstash_cli.py | 8 |
2 files changed, 18 insertions, 11 deletions
diff --git a/src/vgstash_cli.py b/src/vgstash_cli.py index 17fd301..22cfc5a 100644 --- a/src/vgstash_cli.py +++ b/src/vgstash_cli.py @@ -38,13 +38,14 @@ def row_format(row, width, header): Prints a row from the result set into a nice table. """ # The magic number comes from: - # game ID (4) - # system name (8) - # ownership (3) - # progress (9) + # 3 chars per separator (9 chars total) + # 8 chars for "System" (so there's an additional space on each side) + # 3 chars for "Own" + # 9 chars for "Progress" and an additional space + # Total is 29 characters twidth = int(width) - 29 if header == True: - click.echo("{:<{w}s} | {:<8s} | {:^3s} | {}".format( + click.echo("{:<{w}s} | {:^8s} | {:^3s} | {}".format( "Title", "System", "Own", @@ -235,7 +236,10 @@ def import_file(format, filepath, update): ) except sqlite3.IntegrityError as e: count -= 1 - click.echo("Successfully imported {} games from {}.".format(count, filepath)) + if count > 0: + click.echo("Successfully imported {} games from {}.".format(count, filepath)) + else: + click.echo("Couldn't import any games. Is the YAML file formatted correctly?") @cli.command("export") @@ -270,5 +274,8 @@ def export_file(format, filepath): with open(filepath, "w") as fp: yaml.dump(game_set, fp, default_flow_style=False, indent=4, allow_unicode=True) - click.echo("Successfully exported {} games to {}.".format(len(game_set), filepath)) + if len(game_set) > 0: + click.echo("Successfully exported {} games to {}.".format(len(game_set), filepath)) + else: + click.echo("Could not export any games; have you made sure your collection has games in it?") diff --git a/tests/test_vgstash_cli.py b/tests/test_vgstash_cli.py index f81d119..02f0d81 100644 --- a/tests/test_vgstash_cli.py +++ b/tests/test_vgstash_cli.py @@ -108,7 +108,7 @@ def test_list_pretty(): print(result.output) assert result.exit_code == 0 assert result.output == '\n'.join(( - 'Title | System | Own | Progress', + 'Title | System | Own | Progress', '--------------------------------------------------------------------------------', 'Sonic the Hedgehog 2 | Genesis | | B', 'Vectorman | Genesis | | B', @@ -126,7 +126,7 @@ def test_list_pretty_smaller(): print(result.output) assert result.exit_code == 0 assert result.output == '\n'.join(( - 'Title | System | Own | Progress', + 'Title | System | Own | Progress', '------------------------------------------------------------', 'Sonic the Hedgehog 2 | Genesis | | B', 'Vectorman | Genesis | | B', @@ -144,7 +144,7 @@ def test_list_pretty_tiny(): print(result.output) assert result.exit_code == 0 assert result.output == '\n'.join(( - 'Title | System | Own | Progress', + 'Title | System | Own | Progress', '--------------------------------------------------', 'Sonic the Hedgehog 2 | Genesis | | B', 'Vectorman | Genesis | | B', @@ -176,7 +176,7 @@ def test_update(): print(list_result.output) assert list_result.exit_code == 0 assert list_result.output == "\n".join(( - 'Title | System | Own | Progress', + 'Title | System | Own | Progress', '----------------------------------------', 'Sonic the H | Genesis | | B', 'Vectorman 2 | Genesis | P | P', |