From a3b9fa6b56c27f0a49d8457b9c26ef7b7efe15f8 Mon Sep 17 00:00:00 2001 From: Mark Eaton Date: Wed, 13 Feb 2019 23:22:35 -0500 Subject: [PATCH 1/2] add the ability to do a test run --- ephemetoot.py | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/ephemetoot.py b/ephemetoot.py index a7237dd..9611fcd 100644 --- a/ephemetoot.py +++ b/ephemetoot.py @@ -22,11 +22,20 @@ # or email hugh [at] hughrundle [dot] net # ##################################################################### +from argparse import ArgumentParser import config import json from mastodon import Mastodon from datetime import datetime, timedelta, timezone +parser = ArgumentParser() +parser.add_argument( + "--test", action="store_true", help="do a test run without deleting any toots" +) +options = parser.parse_args() +if options.test: + print("This is a test run...") + print("Fetching account details...") mastodon = Mastodon(access_token=config.access_token, api_base_url=config.base_url) @@ -62,7 +71,8 @@ def checkToots(timeline, deleted_count=0): + toot.created_at.strftime("%d %b %Y") ) deleted_count += 1 - mastodon.status_delete(toot) + if not options.test: + mastodon.status_delete(toot) except: print("🛑 **error** with toot - " + str(toot.id)) @@ -75,7 +85,14 @@ def checkToots(timeline, deleted_count=0): if len(next_batch) > 0: checkToots(next_batch, deleted_count) else: - print("Removed " + str(deleted_count) + " toots.") + if options.test: + print( + "Test run. This would have removed " + + str(deleted_count) + + " toots." + ) + else: + print("Removed " + str(deleted_count) + " toots.") except IndexError: print("No toots found!") From 1ef97cfc129b25318f92bee07919c0ddab038ff5 Mon Sep 17 00:00:00 2001 From: Mark Eaton Date: Tue, 5 Mar 2019 19:08:52 -0500 Subject: [PATCH 2/2] test-run works for reblogs too --- ephemetoot.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ephemetoot.py b/ephemetoot.py index 9611fcd..a4f2222 100644 --- a/ephemetoot.py +++ b/ephemetoot.py @@ -62,7 +62,8 @@ def checkToots(timeline, deleted_count=0): ) deleted_count += 1 # unreblog the original toot (their toot), not the toot created by boosting (your toot) - mastodon.status_unreblog(toot.reblog) + if not options.test: + mastodon.status_unreblog(toot.reblog) else: print( "❌ deleting toot "