annotate tests/mockutil.py @ 48:486affad656e

Rewrite posting process with card system and more structured API - The basic posting process is more opinionated so that silos have less code to write, and dry-run posting is handled by default. - Add "card" system where SiloRider is able to fetch the page of a post to check for any custom summary or featured image. This is how Twitter, Facebook, Discord, and many others come up with their "preview card" when a link is posted.
author Ludovic Chabant <ludovic@chabant.com>
date Sun, 08 Oct 2023 13:47:28 -0700
parents 27543b2e73b9
children b404445082f8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2
27543b2e73b9 Add Twitter silo.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
1
27543b2e73b9 Add Twitter silo.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
2 def mock_urllib(m):
27543b2e73b9 Add Twitter silo.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
3 import urllib.request
27543b2e73b9 Add Twitter silo.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
4 m.setattr(urllib.request, 'urlretrieve', _patched_urlretrieve)
27543b2e73b9 Add Twitter silo.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
5 m.setattr(urllib.request, 'urlcleanup', _patched_urlcleanup)
27543b2e73b9 Add Twitter silo.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
6 return m
27543b2e73b9 Add Twitter silo.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
7
27543b2e73b9 Add Twitter silo.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
8
27543b2e73b9 Add Twitter silo.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
9 def _patched_urlretrieve(url):
27543b2e73b9 Add Twitter silo.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
10 return ('/retrieved/' + url.lstrip('/'), None)
27543b2e73b9 Add Twitter silo.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
11
27543b2e73b9 Add Twitter silo.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
12
27543b2e73b9 Add Twitter silo.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
13 def _patched_urlcleanup():
27543b2e73b9 Add Twitter silo.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
14 pass