From 2a475cae5827ce132bdec23a20a6f8c61f40b2bb Mon Sep 17 00:00:00 2001 From: Sergey Lavrinenko Date: Tue, 29 Sep 2026 01:21:30 +0300 Subject: [PATCH] tests: serve HTTP fixtures from a local server instead of lavr.github.io Unit tests downloaded fixtures from lavr.github.io (gh-pages branch) and google.com, so CI broke when gh-pages was deleted. Copy the needed fixtures into emails/testsuite/data/http and serve emails/testsuite from a session-scoped local HTTP server via the new http_fixtures fixture (which also disables url_validator to allow loopback). test_external_urls still uses real sites and is marked `network`. Closes #215 Co-Authored-By: Claude Opus 5.5 --- emails/testsuite/conftest.py | 35 ++ emails/testsuite/data/http/python-logo.gif | Bin 0 -> 2549 bytes .../http/sample-template/images/facebook.gif | Bin 0 -> 612 bytes .../http/sample-template/images/flickr.gif | Bin 0 -> 650 bytes .../http/sample-template/images/gallery.png | Bin 0 -> 1496 bytes .../http/sample-template/images/spacer.gif | Bin 0 -> 43 bytes .../http/sample-template/images/twitter.gif | Bin 0 -> 650 bytes .../sample-template/images/widget-hero3.png | Bin 0 -> 89169 bytes .../sample-template/images/widget-logo4.png | Bin 0 -> 2955 bytes .../sample-template/template-widgets.html | 301 ++++++++++++++++++ ...272\320\270\320\275 \320\220.\320\241.jpg" | Bin 0 -> 12910 bytes emails/testsuite/loader/test_loaders.py | 29 +- emails/testsuite/message/test_send.py | 10 +- emails/testsuite/store/test_store.py | 4 +- emails/testsuite/test_utils.py | 10 +- setup.cfg | 1 + 16 files changed, 364 insertions(+), 26 deletions(-) create mode 100644 emails/testsuite/data/http/python-logo.gif create mode 100644 emails/testsuite/data/http/sample-template/images/facebook.gif create mode 100644 emails/testsuite/data/http/sample-template/images/flickr.gif create mode 100644 emails/testsuite/data/http/sample-template/images/gallery.png create mode 100644 emails/testsuite/data/http/sample-template/images/spacer.gif create mode 100644 emails/testsuite/data/http/sample-template/images/twitter.gif create mode 100644 emails/testsuite/data/http/sample-template/images/widget-hero3.png create mode 100644 emails/testsuite/data/http/sample-template/images/widget-logo4.png create mode 100644 emails/testsuite/data/http/sample-template/template-widgets.html create mode 100644 "emails/testsuite/data/http/url-fix/\320\237\321\203\321\210\320\272\320\270\320\275 \320\220.\320\241.jpg" diff --git a/emails/testsuite/conftest.py b/emails/testsuite/conftest.py index 5269a51..a36492f 100644 --- a/emails/testsuite/conftest.py +++ b/emails/testsuite/conftest.py @@ -6,6 +6,10 @@ import random import sys import platform +import os +import functools +import threading +from http.server import SimpleHTTPRequestHandler, ThreadingHTTPServer logging.basicConfig(level=logging.DEBUG) @@ -14,6 +18,37 @@ import cssutils cssutils.log.setLevel(logging.FATAL) +import emails.utils + +TESTSUITE_ROOT = os.path.dirname(__file__) + + +class _QuietHandler(SimpleHTTPRequestHandler): + def log_message(self, *args): + pass + + +@pytest.fixture(scope='session') +def _http_fixtures_server(): + handler = functools.partial(_QuietHandler, directory=TESTSUITE_ROOT) + server = ThreadingHTTPServer(('127.0.0.1', 0), handler) + thread = threading.Thread(target=server.serve_forever, daemon=True) + thread.start() + yield 'http://127.0.0.1:%s/' % server.server_address[1] + server.shutdown() + server.server_close() + + +@pytest.fixture +def http_fixtures(_http_fixtures_server, monkeypatch): + """ + Base url of a local HTTP server that serves files from emails/testsuite, + e.g. http_fixtures + 'data/http/python-logo.gif'. + Fetching from loopback is allowed while the fixture is active. + """ + monkeypatch.setattr(emails.utils, 'url_validator', None) + return _http_fixtures_server + @pytest.fixture(scope='module') def django_email_backend(request): diff --git a/emails/testsuite/data/http/python-logo.gif b/emails/testsuite/data/http/python-logo.gif new file mode 100644 index 0000000000000000000000000000000000000000..01c7bf3256c16a32dc9eee60e5a98f0ea1659261 GIT binary patch literal 2549 zcmeIx`#aMO0|xNfhGC8qE7Fn}Q6f3lSYghokl3S~;*}OrgtnPe2hAabn1mH_ibpv# zW5_W%gccT7$l2P^%Ons8fRr>d}Rn^4dR19z`u6Z`FsH2&;8=@ zHrCfyR#t$euC<>Niwl47eslm!-drwsZLSTNEe96yJZ=eZCL7>h0;aRrobSJ;Xu!;c z$;nCnWSW2z^7ZT2?Qd6sX_wEFGksIbzs9n7B9VG z83Qam7K^pTJX6&XnamxA;dTq=pO&LQlV)>sGti&|)Ex)v4(7i9n%g{4_-^3Y zyTQ7;y7KaJYUKxV6&2m1cNfxV#FCEK;tpaFBc|~Ez5Ir!PoIX;SgEP0 zgv>hXFntfC2JW}8Lrqm=PB)B|kj*X4QB{iN&W;n-J;o|GD@r_3DZP>VaBXSGw zUb%C0A@*KPczC$cy?2%|uZ^PXu#u&Pk(I&0!G;lKmSM$aq4|bk#s2>OC$Hxj24(!a z0OQ~jLv0I46u z?y4^8e2l{0SH{)6_>hi1|H|`2O>s|_u1|L!uC}Bv*C=d({h_vWpa2sm{wOKVPDL3T z@QESk|47N$d5$hy#KO8z{C*28qDK4>CvPw(_C6>r&##T@x}}pHzUYzZ!2I;oG*f%x z)E$1)p0UhDe8#oO7h5QA@$nkJHLYE_;bW~WhQ&6S$~N~&81WbF&@w0p1dfoIy2ws^ zJRsuA6&SjmOW?jwbLWBR(%JF#>z{-ANJ3N0pxppoeVfJ%1{A@u*$ga~W=gZf3R{f_-k=vs} zHL_AxW@}I>NwhCmwY@W-$W&*DBmAw;Lz9af zcH+#r?_ZMC_JM?;2v3x{gcOgK;~JK6E+Hd8`GX=wltZ6Mi`^8I956@Y0&+!o)J{Us z?#n$-^u=@375!ifq6LNqgB?XTde3G>MrXKQWm3Rzw`s2L`elQ)5+4hPNAaExf6wGL0|;-Mn^X{c;rt|E|ONUK_lfW2h7K zkAY&4Mj0&pWK&aZn+MK*V-(VN`Az>x@e`#L>TtJu43np(iEQmkPsjW0oN7ojWLsVDAz^u#x{ya6t3K zxR&|6iOs;KC}XAC7oOLKRZyidHjBGRM{0BC)!m^7+^a6OC1)*`xKS7Us1ZV&ai0OW zo|@?sXQIwqW>>$9(1xaSjL=3dG|-*0mrX!@|6~h0)PYqFT}>Pty0j>+dP0Z$I+l=#xZ^ay=O_UCYb5w@aM#q(ZzY6C&3fIMNNr5e2NK-}2T&OK zB(eSsQ3G7ExOqmdm=_aj#O4&_})oj3*4!gJ|QM#ogleDe| zqzP$W)k{BS#DJtwDSP1cR9WLdv|%nnp*;N=F6p{lsCR1jC-ruy(=<7Qi@7k$YzG?% zv{guZFRQ_ZRHGIuEbp__0=6?XB#eY)C>W@N)D;ooFs(h7=v0*qlDOmaa#*L`4!sQ)aM?2f(+{A>Z8i&FJC74-HLP;VlpP(c4}RY(Sqx%ByQZD+O1Jw2z2mZh2Ciq z4I*RBfPe=i{u0)25JL77Ap1OWRlIggdiE z=){ZbaZ2cI3T9iknm>M*grJ_s!^`eVSljfuV_Y0qwY=;!HJxe%A0%~lx4F3WWNv?b z!N3C>+S{SRtg;x#Gm4gdMq#n Ya88?{rIkT#!wilD#v{>6jtmUe05!@5A^-pY literal 0 HcmV?d00001 diff --git a/emails/testsuite/data/http/sample-template/images/flickr.gif b/emails/testsuite/data/http/sample-template/images/flickr.gif new file mode 100644 index 0000000000000000000000000000000000000000..2f39e10442c0b51f261271675ba21b9f787be403 GIT binary patch literal 650 zcmZ?wbhEHb)M8LzxXQq=YuBy=2M!!QeE8kFcOO4~eDmhbqeqXnY}s=6?%gL(o;-c} zbo=)0+qP|c|Ni}zD_72(IrIAU>$h*;Uc7km*s)_fcI?=x z`0(Mxi4*6}ox6Pb^1*`#A3uJ)bLY+%FJ2rvbm;2UtIwW2+q-w~ojZ5-@8AF6!Grtv z@1H+^e$Spgr%#_gd-m++&6_`c`ousYQ2faP)}aF;L4IOj`+s11frrY1kj4WKCxk5I zII^NdOV>th-I}u96(TDhtaLkcg3XGvHDKZkmQ6gJYCigVVrK_fY%#2V8LYyfCz;it z&n2nHpwjNb+RVh<=fup^UEj`<&lE7liDf$Dyau5b!TBzNT|(^wshleVIrVr18e}Rq z1=Y%w@Ji@a?RHUQm*7oQ(_?aB6J}r#W(zuh@v_TwwM2eBWoJGH4gmoU20oXEkDoqw zR@UQBl+)X&&!#%rnORic>HE*AKR6dYRpen6UlG^gpzzemxRqzIg^18W)>Z@dn2IQd z0*_`^CkwBi9H)*l_DDIGiCk)EJT*}-UcewzV4;AZxRl+Im6I2_F0cIZC-lXR_4D^G zbm`(N2^8?zp6_%;R3m{;)}kMgLOiqgdq3vNv)X= zn_6!x>csq5^!ZhTViFhM4XczaSEoq9upJqt9?qO;OEg-G0+afbx!F}~H>GTRtIpcY zW$Cr$#d~$@NVAG%NelbC8D^&Ra(&`)i=j#NtBerq87rMRujED@=oD)S# N4DBKl?O7QatO4%w86*Gz literal 0 HcmV?d00001 diff --git a/emails/testsuite/data/http/sample-template/images/gallery.png b/emails/testsuite/data/http/sample-template/images/gallery.png new file mode 100644 index 0000000000000000000000000000000000000000..000c71e2d5dd02797c5b18c917da0107d2804f85 GIT binary patch literal 1496 zcmb7^`9Bj30LGU_h6<^@u1JoeyxBC$T8_yPHmnj6tIZvA)Ov?%TJKyN_A)bzlA?pA z^j2tWExclma<=9w%O+NDxmI59pU@A_^Zh)(JwJW3(0(2pH4HQW0Ki5sPh`LvWB-r3 z%380AWg%j4Y!YH z-FQ8i%+ZHWPfuUMyx5VR?F_PZv8VR41L-t0y|MDC<1L@&fiN#_IMu&IRgo0=Q zBa%p(K$V=FoYrtO2$tX9-#<7wI6fZ1hM`a>`_bWHe{$ZjxTq-UPF3Z?pqAE~nEl@} zP2e?kqU|QG>q}F?F7(OO_741`PbtrXA7BgB^iQFkG4lS;B9Vwrrw=twZrkVRC|y{o z?5%#3F%Usk5S8D*KjHCKIj;!aU8q#_wdF5g_*~<2SHS|q(g!()Kf-O9HhLO}ayro< z3yFT-+}w<>ZiY_bF%A346ET4`Z%(HYI3};pLc;36X$%Gf2ek4bD(>aYuOiX}% zJqA8PnlG?|z-indxl}5>_k>>0?8LD>-16?o=jJ*coPMiW&L}g@blKoO=a}?Y=5(@gwU9V{M>` zpWNSdy?lIBaIwQ$Qf6_nCp-QfCG(Zcj9dud>!=pot)&piF9K?ejEsgB(IZ3ivsm(N z?9xYOMN?syz5TI^Hj+!(M?o+*E2B+}Xj*P=Vz+VAcJDtWx3tJ_l9P_eIeLn)ih zzJ5KU_Gm+JGmi)6@XafGrF=eLl1fN}OgL!Ys((K;1TdTV-VJ-Ece~;i_15(R2n4JF z?IGc^74h-$Iu+ws24%kBa;04;X2Yt(`)}V;ZJf~9yA;=T=~EDG_1wI?2%)agqMl7y zNQe_0E`NBSvB31re0oA^fs@|eEF`&fa~Pr=HN%t1WNU9ee892ns_fn=N|;RMZ2QXd zj%-lP;{HnSaDH0{M6*{A0`_}4WogpeBHfMP3Ur={C>ovt$Kzk-3L44@ym-; zHGAl++YL0^d#rXx6z7m%RltyC%-f!QzK7hP{hTuH9T2u@AV1i;NDdA{>PO>0R}>xc z?ZJebU7bV?9>$&H&m19fDpHlc*C>8wG8OVbYM~|LtPEec>4fDu^Ib)C>e0T?(EDBY z#iRmLzlTA4N;^Hx`(B6Xl(IV05R!iV{h6WAG3KE+3|!$o#+(Y{sUzK3TAvnidIT z3ma84TN52~{X3OoZlTnXdX~D!lErLtVsEz>`HC}OL3BA1k2kW9G@bZH)up($`ZNar zT@PyfsPIa=u+yc5Q_MtzJwF%0m{uyA&TMLH4Q;6w2!-wk zIj{124X$l?X>wA~aKd?>;=037vU~=p!;_%=i@d9>i?a8`ro3+$Z3@o?yR|Y7IJwyRwIKS&8(>!;N|Xz JtaS}1{|8w5%8&p6 literal 0 HcmV?d00001 diff --git a/emails/testsuite/data/http/sample-template/images/spacer.gif b/emails/testsuite/data/http/sample-template/images/spacer.gif new file mode 100644 index 0000000000000000000000000000000000000000..35d42e808f0a8017b8d52a06be2f8fec0b466a66 GIT binary patch literal 43 scmZ?wbhEHbWMp7uXkcLY|NlP&1B2pE7Dgb&paUX6G7L;iE{qJ;0LZEa`2YX_ literal 0 HcmV?d00001 diff --git a/emails/testsuite/data/http/sample-template/images/twitter.gif b/emails/testsuite/data/http/sample-template/images/twitter.gif new file mode 100644 index 0000000000000000000000000000000000000000..1148a0b940ac5b3148dac5932c38c16da204915c GIT binary patch literal 650 zcmZ?wbhEHb)M8LzxXQrr@#Dvf7cahf^X9;T1BVYEe){z3jvYI;Y}vAF*RCf|o}4*z z=Iz_JA3l88x^?UB-Me4De7Sx5_HEm?ojZ5#_3PI!Uc5MQ;>4Xhciz2wcmDkO_wV0d zy?XWX<;%~WJv(^t;DrkpcJAD{fB*jb_wVo7vuE$#y+@B8J$?H0g9i_8-MaPo@#C{+ z&%S!~YV+pJpFVwJAQve9WC3f{0g)g-F|hr2m{#DyGQ*(x;KK<=W-uICQKBWPp|E;Q z8FwJZiU*p?0w?**I-533xWTh&B7?Gz_?~c4uNgsx^)G{EIJEh)8gy9sv^iwjU6`6# z#QU7YS-R`n8S+^IrZ_Q7XP(!<*uw41z{tVDxFm$Ti?LlemD7chg_V_Ma|x%mpm2jw zMIc)}6I*+&P>Ce3c9o0vm39$!Udco;ZI+;`&e4%;*E>xYOXSj)dXTthpNo_>SE8); z_P~b;r-Ba1Ci1LtSlWNCB{fiNjf2P216;*A-+Tof4mFD~X!Ercas)owAu4a+aAbvG zk3-Y7BbGrY3Qp~zcroZrem>X=Vgb!H=W^jMIS#|^E3zuu{E4vN@{2kn8?q{$Y2cs Dx|j`N literal 0 HcmV?d00001 diff --git a/emails/testsuite/data/http/sample-template/images/widget-hero3.png b/emails/testsuite/data/http/sample-template/images/widget-hero3.png new file mode 100644 index 0000000000000000000000000000000000000000..ba184ec2105a2c1a0a4b0493dba1d9675d1eba7a GIT binary patch literal 89169 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 BqP+kB literal 0 HcmV?d00001 diff --git a/emails/testsuite/data/http/sample-template/template-widgets.html b/emails/testsuite/data/http/sample-template/template-widgets.html new file mode 100644 index 0000000..e805f34 --- /dev/null +++ b/emails/testsuite/data/http/sample-template/template-widgets.html @@ -0,0 +1,301 @@ + + + + + + Campaign Monitor Newsletter + + + + + + + + +
+ + + + + +
+ + + + + + +

Campaign Monitor


WIDGET  NEWSLETTER 
+ + + + + + + +
+ +

Main feature introduction

+ +
+ +
+ + + + + + + + +
+ + + + + +
+ +

Title of new feature

+

A short explanation of the new feature

+ +
+ +
+
+
+ + + + + + +
+ + + + + +
+ +

Title of article/tip/resource

+

Description

+ +
+ +
+
+
+ + + + + + +
+ + + + + +
+ +

Title of gallery summary

+

Description of this month's gallery entries

+ +
+ +
+ + + + + + + +
+ + + + + + + + + + + + + + + + +
+ +
+ +
+
+
+ + + + + + +
+ + + + + +
+ +

Enter the quote in full

+ +
+ +
+
+
+
+ +
+ +
+ + + + + +
+ +
+ + + + + +
+ + + + + + +
+ +
+ +

You’re receiving this because you’re an awesome ABC Widgets customer or subscribed via our site.

+

Edit your subscription  |  Unsubscribe instantly

+ +
+ + + + + + + +
See our photos on FlickrFollow us on TwitterVisit us on Facebook
+ +

ABC Widgets

87 Street Avenue, California, USA

+ +
+ +
+ +
+ +
+ + + diff --git "a/emails/testsuite/data/http/url-fix/\320\237\321\203\321\210\320\272\320\270\320\275 \320\220.\320\241.jpg" "b/emails/testsuite/data/http/url-fix/\320\237\321\203\321\210\320\272\320\270\320\275 \320\220.\320\241.jpg" new file mode 100644 index 0000000000000000000000000000000000000000..744c0eb22f8b58df79ea9aa531aefb881b436e62 GIT binary patch literal 12910 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 total_images +@pytest.mark.network def test_external_urls(): # Load some real sites with complicated html and css. diff --git a/emails/testsuite/message/test_send.py b/emails/testsuite/message/test_send.py index a7f00ee..9c742f8 100644 --- a/emails/testsuite/message/test_send.py +++ b/emails/testsuite/message/test_send.py @@ -9,10 +9,10 @@ from emails.testsuite.smtp_servers import get_servers -def get_letters(): +def get_letters(base_url): # Test email with attachment - URL = 'http://lavr.github.io/python-emails/tests/campaignmonitor-samples/sample-template/images/gallery.png' + URL = base_url + 'data/http/sample-template/images/gallery.png' data = common_email_data(subject='Single attachment', attachments=[emails.store.LazyHTTPFile(uri=URL), ]) yield emails.html(**data), None @@ -20,7 +20,7 @@ def get_letters(): yield emails.html(**common_email_data(subject='Render with name=John')), {'name': 'John'} # Email with several inline images - url = 'http://lavr.github.io/python-emails/tests/campaignmonitor-samples/sample-template/template-widgets.html' + url = base_url + 'data/http/sample-template/template-widgets.html' data = common_email_data(subject='Sample html with inline images') del data['html'] yield emails.loader.from_url(url=url, message_params=data, images_inline=True), None @@ -29,9 +29,9 @@ def get_letters(): yield emails.Message(**common_email_data(mail_to="anaïs@lavr.me", subject="UTF-8 To")), None -def test_send_letters(): +def test_send_letters(http_fixtures): - for m, render in get_letters(): + for m, render in get_letters(http_fixtures): for tag, server in get_servers(): server.patch_message(m) print(tag, server.params) diff --git a/emails/testsuite/store/test_store.py b/emails/testsuite/store/test_store.py index bedbb45..7f72474 100644 --- a/emails/testsuite/store/test_store.py +++ b/emails/testsuite/store/test_store.py @@ -11,8 +11,8 @@ def test_fix_content_type(): assert fix_content_type('') == 'image/unknown' -def test_lazy_http(): - IMG_URL = 'http://lavr.github.io/python-emails/tests/python-logo.gif' +def test_lazy_http(http_fixtures): + IMG_URL = http_fixtures + 'data/http/python-logo.gif' f = emails.store.LazyHTTPFile(uri=IMG_URL) assert f.filename == 'python-logo.gif' assert f.content_disposition == 'attachment' diff --git a/emails/testsuite/test_utils.py b/emails/testsuite/test_utils.py index 8b5371d..7a2c6de 100644 --- a/emails/testsuite/test_utils.py +++ b/emails/testsuite/test_utils.py @@ -43,10 +43,10 @@ def test_sanitize_email(): assert sanitize_email('a@♤.d') == 'a@xn--f6h.d' -def test_fetch_url(): - fetch_url('http://google.com') +def test_fetch_url(http_fixtures): + fetch_url(http_fixtures + 'data/http/python-logo.gif') with pytest.raises(HTTPLoaderError): - fetch_url('http://google.com/nonexistent-no-page') + fetch_url(http_fixtures + 'data/http/nonexistent-no-page') def test_message_id(): @@ -68,9 +68,9 @@ def test_message_id(): _ids.add(_id) -def test_url_fix(): +def test_url_fix(http_fixtures): # Check url with unicode and spaces - r = fetch_url('http://lavr.github.io/python-emails/tests/url-fix/Пушкин А.С.jpg') + r = fetch_url(http_fixtures + 'data/http/url-fix/Пушкин А.С.jpg') assert len(r.content) == 12910 diff --git a/setup.cfg b/setup.cfg index 86e0181..24992dd 100644 --- a/setup.cfg +++ b/setup.cfg @@ -40,6 +40,7 @@ ignore_errors = true norecursedirs = .* {arch} *.egg *.egg-info dist build requirements markers = e2e: tests that require a running SMTP server + network: tests that require access to external sites django: tests that require Django [coverage:run]