posit-dev / py-htmltools

Tools for HTML generation and output
MIT License
19 stars 2 forks source link

Switch from snapshottest to syrupy #71

Closed wch closed 10 months ago

wch commented 10 months ago

py-shiny has some dependencies which install syrupy, which is a snapshot testing library that works with pytest. The py-htmltools project uses snapshottest for snapshot testing.

However, if both of these packages are installed, then pytest fails with cryptic errors. So someone wants to share the same Python library directory between py-shiny and py-htmltools, the tests here will fail, simply because both packages are present! The syrupy installation instructions even say, "You cannot use syrupy alongside snapshottest due to argument conflicts", and require uninstalling snapshottest

This is a really dumb situation, and I'm guessing it's probably caused by pytest doing too much magic.

Anyway, I was told by @machow that syrupy is the way to go these days. Also, given that something in py-shiny brings in syrupy indirectly, I figure we might as well move to syrupy here as well.

If you are developing py-htmltools locally and have a local set of packages, you will have to uninstall snapshottest for these tests to work.

pip uninstall snapshottest