--- /srv/reproducible-results/rbuild-debian/r-b-build.ZMIYAHYi/b1/python-inline-snapshot_0.19.3-1_armhf.changes
+++ /srv/reproducible-results/rbuild-debian/r-b-build.ZMIYAHYi/b2/python-inline-snapshot_0.19.3-1_armhf.changes
├── Files
│ @@ -1,3 +1,3 @@
│  
│ - 5e9e10b7a7338770da3507ee82cf26e4 535644 doc optional python-inline-snapshot-doc_0.19.3-1_all.deb
│ + 895e18f08bb9e7a72f17df8a6fbd25a6 535668 doc optional python-inline-snapshot-doc_0.19.3-1_all.deb
│   3ddbc791df9158261eb361c3e0c89846 36476 python optional python3-inline-snapshot_0.19.3-1_all.deb
├── python-inline-snapshot-doc_0.19.3-1_all.deb
│ ├── file list
│ │ @@ -1,3 +1,3 @@
│ │  -rw-r--r--   0        0        0        4 2025-01-16 17:36:51.000000 debian-binary
│ │  -rw-r--r--   0        0        0     3020 2025-01-16 17:36:51.000000 control.tar.xz
│ │ --rw-r--r--   0        0        0   532432 2025-01-16 17:36:51.000000 data.tar.xz
│ │ +-rw-r--r--   0        0        0   532456 2025-01-16 17:36:51.000000 data.tar.xz
│ ├── control.tar.xz
│ │ ├── control.tar
│ │ │ ├── ./md5sums
│ │ │ │ ├── ./md5sums
│ │ │ │ │┄ Files differ
│ ├── data.tar.xz
│ │ ├── data.tar
│ │ │ ├── ./usr/share/doc/python-inline-snapshot-doc/html/extra.html
│ │ │ │ @@ -1052,15 +1052,15 @@
│ │ │ │  <a id="__codelineno-2-13" name="__codelineno-2-13" href="#__codelineno-2-13"></a>        <span class="nb">print</span><span class="p">(</span><span class="s2">&quot;some error&quot;</span><span class="p">,</span> <span class="n">file</span><span class="o">=</span><span class="n">sys</span><span class="o">.</span><span class="n">stderr</span><span class="p">)</span>
│ │ │ │  </code></pre></div></p>
│ │ │ │  </div>
│ │ │ │  </div>
│ │ │ │  </div>
│ │ │ │  
│ │ │ │              <details class="quote">
│ │ │ │ -              <summary>Source code in <code>.pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/extra.py</code></summary>
│ │ │ │ +              <summary>Source code in <code>.pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/extra.py</code></summary>
│ │ │ │                <div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"><a href="#__codelineno-0-63"> 63</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-64"> 64</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-65"> 65</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-66"> 66</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-67"> 67</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-68"> 68</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-69"> 69</a></span>
│ │ │ │ @@ -1265,15 +1265,15 @@
│ │ │ │  </span><a id="__codelineno-1-7" name="__codelineno-1-7" href="#__codelineno-1-7"></a>        <span class="mi">1</span> <span class="o">/</span> <span class="mi">0</span>
│ │ │ │  </code></pre></div></p>
│ │ │ │  </div>
│ │ │ │  </div>
│ │ │ │  </div>
│ │ │ │  
│ │ │ │              <details class="quote">
│ │ │ │ -              <summary>Source code in <code>.pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/extra.py</code></summary>
│ │ │ │ +              <summary>Source code in <code>.pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/extra.py</code></summary>
│ │ │ │                <div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"><a href="#__codelineno-0-17">17</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-18">18</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-19">19</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-20">20</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-21">21</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-22">22</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-23">23</a></span>
│ │ │ │ @@ -1471,15 +1471,15 @@
│ │ │ │  </span><a id="__codelineno-1-8" name="__codelineno-1-8" href="#__codelineno-1-8"></a>        <span class="n">warn</span><span class="p">(</span><span class="s2">&quot;some problem&quot;</span><span class="p">)</span>
│ │ │ │  </code></pre></div></p>
│ │ │ │  </div>
│ │ │ │  </div>
│ │ │ │  </div>
│ │ │ │  
│ │ │ │              <details class="quote">
│ │ │ │ -              <summary>Source code in <code>.pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/extra.py</code></summary>
│ │ │ │ +              <summary>Source code in <code>.pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/extra.py</code></summary>
│ │ │ │                <div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"><a href="#__codelineno-0-136">136</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-137">137</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-138">138</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-139">139</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-140">140</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-141">141</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-142">142</a></span>
│ │ │ │ ├── html2text {}
│ │ │ │ │ @@ -82,15 +82,15 @@
│ │ │ │ │  def test_prints():
│ │ │ │ │      with prints(
│ │ │ │ │          stdout=IsStr(),
│ │ │ │ │          stderr=snapshot("some error\n"),
│ │ │ │ │      ):
│ │ │ │ │          print("hello world")
│ │ │ │ │          print("some error", file=sys.stderr)
│ │ │ │ │ -Source code in .pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/
│ │ │ │ │ +Source code in .pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/
│ │ │ │ │  extra.py
│ │ │ │ │      @contextlib.contextmanager
│ │ │ │ │  _ _6_3 def prints(*, stdout: Snapshot[str] = "", stderr: Snapshot[str] = ""):
│ │ │ │ │  _ _6_4     """Uses `contextlib.redirect_stderr/stdout` to capture the output and
│ │ │ │ │  _ _6_5     compare it with the snapshots. `dirty_equals.IsStr` can be used to
│ │ │ │ │  _ _6_6 ignore
│ │ │ │ │  _ _6_7     the output if needed.
│ │ │ │ │ @@ -178,15 +178,15 @@
│ │ │ │ │  from inline_snapshot import snapshot
│ │ │ │ │  from inline_snapshot.extra import raises
│ │ │ │ │  
│ │ │ │ │  
│ │ │ │ │  def test_raises():
│ │ │ │ │      with raises(snapshot("ZeroDivisionError: division by zero")):
│ │ │ │ │          1 / 0
│ │ │ │ │ -Source code in .pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/
│ │ │ │ │ +Source code in .pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/
│ │ │ │ │  extra.py
│ │ │ │ │     @contextlib.contextmanager
│ │ │ │ │  _1_7 def raises(exception: Snapshot[str]):
│ │ │ │ │  _1_8     """Check that an exception is raised.
│ │ │ │ │  _1_9
│ │ │ │ │  _2_0     Parameters:
│ │ │ │ │  _2_1         exception: snapshot which is compared with `#!python f"{type}:
│ │ │ │ │ @@ -265,15 +265,15 @@
│ │ │ │ │  from warnings import warn
│ │ │ │ │  
│ │ │ │ │  
│ │ │ │ │  def test_warns():
│ │ │ │ │      with warns(snapshot([(8, "UserWarning: some problem")]),
│ │ │ │ │  include_line=True):
│ │ │ │ │          warn("some problem")
│ │ │ │ │ -Source code in .pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/
│ │ │ │ │ +Source code in .pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/
│ │ │ │ │  extra.py
│ │ │ │ │      @contextlib.contextmanager
│ │ │ │ │      def warns(
│ │ │ │ │          expected_warnings: Snapshot[List[Warning]],
│ │ │ │ │  _1_3_6     /,
│ │ │ │ │  _1_3_7     include_line: bool = False,
│ │ │ │ │  _1_3_8     include_file: bool = False,
│ │ │ ├── ./usr/share/doc/python-inline-snapshot-doc/html/outsource.html
│ │ │ │ @@ -1169,15 +1169,15 @@
│ │ │ │                </div>
│ │ │ │              </td>
│ │ │ │            </tr>
│ │ │ │        </tbody>
│ │ │ │      </table>
│ │ │ │  
│ │ │ │              <details class="quote">
│ │ │ │ -              <summary>Source code in <code>.pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/_external.py</code></summary>
│ │ │ │ +              <summary>Source code in <code>.pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/_external.py</code></summary>
│ │ │ │                <div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"><a href="#__codelineno-0-137">137</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-138">138</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-139">139</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-140">140</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-141">141</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-142">142</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-143">143</a></span>
│ │ │ │ @@ -1285,15 +1285,15 @@
│ │ │ │  
│ │ │ │  
│ │ │ │  
│ │ │ │  
│ │ │ │  
│ │ │ │  
│ │ │ │                <details class="quote">
│ │ │ │ -                <summary>Source code in <code>.pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/_external.py</code></summary>
│ │ │ │ +                <summary>Source code in <code>.pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/_external.py</code></summary>
│ │ │ │                  <div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"><a href="#__codelineno-0-76"> 76</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-77"> 77</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-78"> 78</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-79"> 79</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-80"> 80</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-81"> 81</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-82"> 82</a></span>
│ │ │ │ @@ -1433,15 +1433,15 @@
│ │ │ │  
│ │ │ │      <div class="doc doc-contents ">
│ │ │ │  
│ │ │ │          <p>Two external objects are equal if they have the same hash and
│ │ │ │  suffix.</p>
│ │ │ │  
│ │ │ │              <details class="quote">
│ │ │ │ -              <summary>Source code in <code>.pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/_external.py</code></summary>
│ │ │ │ +              <summary>Source code in <code>.pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/_external.py</code></summary>
│ │ │ │                <div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"><a href="#__codelineno-0-116">116</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-117">117</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-118">118</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-119">119</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-120">120</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-121">121</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-122">122</a></span>
│ │ │ │ @@ -1519,15 +1519,15 @@
│ │ │ │                  <em>required</em>
│ │ │ │              </td>
│ │ │ │            </tr>
│ │ │ │        </tbody>
│ │ │ │      </table>
│ │ │ │  
│ │ │ │              <details class="quote">
│ │ │ │ -              <summary>Source code in <code>.pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/_external.py</code></summary>
│ │ │ │ +              <summary>Source code in <code>.pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/_external.py</code></summary>
│ │ │ │                <div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"><a href="#__codelineno-0-77">77</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-78">78</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-79">79</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-80">80</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-81">81</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-82">82</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-83">83</a></span>
│ │ │ │ @@ -1583,15 +1583,15 @@
│ │ │ │      <div class="doc doc-contents ">
│ │ │ │  
│ │ │ │          <p>Returns the representation of the external object.</p>
│ │ │ │  <p>The length of the hash can be specified in the
│ │ │ │  <a href="configuration.html">config</a>.</p>
│ │ │ │  
│ │ │ │              <details class="quote">
│ │ │ │ -              <summary>Source code in <code>.pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/_external.py</code></summary>
│ │ │ │ +              <summary>Source code in <code>.pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/_external.py</code></summary>
│ │ │ │                <div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"><a href="#__codelineno-0-103">103</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-104">104</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-105">105</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-106">106</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-107">107</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-108">108</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-109">109</a></span>
│ │ │ │ ├── html2text {}
│ │ │ │ │ @@ -115,15 +115,15 @@
│ │ │ │ │                           encoded with "utf-8".
│ │ │ │ │                           overwrite file suffix. The default is ".bin"
│ │ │ │ │  suffix Optional[str]     if data is an instance of bytes and ".txt"   None
│ │ │ │ │                           for str.
│ │ │ │ │  Returns:
│ │ │ │ │  TTyyppee     DDeessccrriippttiioonn
│ │ │ │ │  _e_x_t_e_r_n_a_l The external data.
│ │ │ │ │ -Source code in .pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/
│ │ │ │ │ +Source code in .pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/
│ │ │ │ │  _external.py
│ │ │ │ │      def outsource(data: Union[str, bytes], *, suffix: Optional[str] = None) -
│ │ │ │ │      > external:
│ │ │ │ │  _1_3_7     """Outsource some data into an external file.
│ │ │ │ │  _1_3_8
│ │ │ │ │  _1_3_9     ``` pycon
│ │ │ │ │  _1_4_0     >>> png_data = b"some_bytes"  # should be the replaced with your actual
│ │ │ │ │ @@ -167,15 +167,15 @@
│ │ │ │ │  _1_7_8
│ │ │ │ │  _1_7_9     if not storage.lookup_all(name):
│ │ │ │ │  _1_8_0         path = hash + "-new" + suffix
│ │ │ │ │  _1_8_1         storage.save(path, data)
│ │ │ │ │  
│ │ │ │ │          return external(name)
│ │ │ │ │  iinnlliinnee__ssnnaappsshhoott..eexxtteerrnnaall _?¶
│ │ │ │ │ -Source code in .pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/
│ │ │ │ │ +Source code in .pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/
│ │ │ │ │  _external.py
│ │ │ │ │      class external:
│ │ │ │ │          def __init__(self, name: str):
│ │ │ │ │              """External objects are used as a representation for outsourced
│ │ │ │ │  _ _7_6 data.
│ │ │ │ │  _ _7_7         You should not create them directly.
│ │ │ │ │  _ _7_8
│ │ │ │ │ @@ -236,15 +236,15 @@
│ │ │ │ │  _1_3_3         return True
│ │ │ │ │  _1_3_4
│ │ │ │ │          def _load_value(self):
│ │ │ │ │              assert storage is not None
│ │ │ │ │              return storage.read(self._path)
│ │ │ │ │  ____eeqq____((ootthheerr)) _?¶
│ │ │ │ │  Two external objects are equal if they have the same hash and suffix.
│ │ │ │ │ -Source code in .pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/
│ │ │ │ │ +Source code in .pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/
│ │ │ │ │  _external.py
│ │ │ │ │  _1_1_6 def __eq__(self, other):
│ │ │ │ │  _1_1_7     """Two external objects are equal if they have the same hash and
│ │ │ │ │  _1_1_8     suffix."""
│ │ │ │ │  _1_1_9     if not isinstance(other, external):
│ │ │ │ │  _1_2_0         return NotImplemented
│ │ │ │ │  _1_2_1
│ │ │ │ │ @@ -265,15 +265,15 @@
│ │ │ │ │  containing the Pytest configuration file, if any. To store data in a different
│ │ │ │ │  location, set the storage-dir option in pyproject.toml. Data which is
│ │ │ │ │  outsourced but not referenced in the source code jet has a '-new' suffix in the
│ │ │ │ │  filename.
│ │ │ │ │  Parameters:
│ │ │ │ │  NNaammee TTyyppee DDeessccrriippttiioonn                             DDeeffaauulltt
│ │ │ │ │  name str  the name of the external stored object. rreeqquuiirreedd
│ │ │ │ │ -Source code in .pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/
│ │ │ │ │ +Source code in .pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/
│ │ │ │ │  _external.py
│ │ │ │ │     def __init__(self, name: str):
│ │ │ │ │         """External objects are used as a representation for outsourced data.
│ │ │ │ │  _7_7     You should not create them directly.
│ │ │ │ │  _7_8
│ │ │ │ │  _7_9     The external data is by default stored inside
│ │ │ │ │  _8_0 `<pytest_config_dir>/.inline-snapshot/external`,
│ │ │ │ │ @@ -296,15 +296,15 @@
│ │ │ │ │  _9_7         raise ValueError(
│ │ │ │ │                 "path has to be of the form <hash>.<suffix> or
│ │ │ │ │     <partial_hash>*.<suffix>"
│ │ │ │ │             )
│ │ │ │ │  ____rreepprr____(()) _?¶
│ │ │ │ │  Returns the representation of the external object.
│ │ │ │ │  The length of the hash can be specified in the _c_o_n_f_i_g.
│ │ │ │ │ -Source code in .pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/
│ │ │ │ │ +Source code in .pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/
│ │ │ │ │  _external.py
│ │ │ │ │  _1_0_3 def __repr__(self):
│ │ │ │ │  _1_0_4     """Returns the representation of the external object.
│ │ │ │ │  _1_0_5
│ │ │ │ │  _1_0_6     The length of the hash can be specified in the
│ │ │ │ │  _1_0_7     [config](configuration.md).
│ │ │ │ │  _1_0_8     """
│ │ │ ├── ./usr/share/doc/python-inline-snapshot-doc/html/pytest.html
│ │ │ │ @@ -969,16 +969,16 @@
│ │ │ │  <a id="__codelineno-1-4" name="__codelineno-1-4" href="#__codelineno-1-4"></a><span class="k">def</span> <span class="nf">test_something</span><span class="p">():</span>
│ │ │ │  <a id="__codelineno-1-5" name="__codelineno-1-5" href="#__codelineno-1-5"></a>    <span class="k">assert</span> <span class="mi">1</span> <span class="o">==</span> <span class="n">snapshot</span><span class="p">()</span>
│ │ │ │  <a id="__codelineno-1-6" name="__codelineno-1-6" href="#__codelineno-1-6"></a>    <span class="k">assert</span> <span class="mi">2</span> <span class="o">&lt;=</span> <span class="n">snapshot</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span>
│ │ │ │  </code></pre></div>
│ │ │ │  <div class="highlight"><pre><span></span><code><a id="__codelineno-0-1" name="__codelineno-0-1" href="#__codelineno-0-1"></a><span class=" -Color -Color-Bold -Color-Bold-Blue">&gt; pytest test_something.py --inline-snapshot=create,report</span>
│ │ │ │  <a id="__codelineno-0-2" name="__codelineno-0-2" href="#__codelineno-0-2"></a><span class=" -Color -Color-Bold">============================= test session starts ==============================</span>
│ │ │ │  <a id="__codelineno-0-3" name="__codelineno-0-3" href="#__codelineno-0-3"></a>platform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0
│ │ │ │ -<a id="__codelineno-0-4" name="__codelineno-0-4" href="#__codelineno-0-4"></a>rootdir: /tmp/tmp.GZGVqEVxWM
│ │ │ │ -<a id="__codelineno-0-5" name="__codelineno-0-5" href="#__codelineno-0-5"></a>plugins: pytest_freezer-0.4.9, mock-3.14.0, hypothesis-6.124.0, typeguard-4.4.1, time-machine-2.16.0, inline-snapshot-0.19.3, subtests-0.13.1
│ │ │ │ +<a id="__codelineno-0-4" name="__codelineno-0-4" href="#__codelineno-0-4"></a>rootdir: /tmp/tmp.lpRrqOmrhn
│ │ │ │ +<a id="__codelineno-0-5" name="__codelineno-0-5" href="#__codelineno-0-5"></a>plugins: subtests-0.13.1, typeguard-4.4.1, mock-3.14.0, inline-snapshot-0.19.3, hypothesis-6.124.0, time-machine-2.16.0, pytest_freezer-0.4.9
│ │ │ │  <a id="__codelineno-0-6" name="__codelineno-0-6" href="#__codelineno-0-6"></a>collected 1 item
│ │ │ │  <a id="__codelineno-0-7" name="__codelineno-0-7" href="#__codelineno-0-7"></a>
│ │ │ │  <a id="__codelineno-0-8" name="__codelineno-0-8" href="#__codelineno-0-8"></a>test_something.py <span class=" -Color -Color-Green">.                                                      [100%]</span>
│ │ │ │  <a id="__codelineno-0-9" name="__codelineno-0-9" href="#__codelineno-0-9"></a>=============================== inline snapshot ================================
│ │ │ │  <a id="__codelineno-0-10" name="__codelineno-0-10" href="#__codelineno-0-10"></a>─────────────────────────────── Create snapshots ───────────────────────────────
│ │ │ │  <a id="__codelineno-0-11" name="__codelineno-0-11" href="#__codelineno-0-11"></a>+----------------------------- test_something.py ------------------------------+
│ │ │ │  <a id="__codelineno-0-12" name="__codelineno-0-12" href="#__codelineno-0-12"></a>| @@ -2,5 +2,5 @@                                                              |
│ │ │ │ @@ -1003,51 +1003,51 @@
│ │ │ │  <a id="__codelineno-0-31" name="__codelineno-0-31" href="#__codelineno-0-31"></a>| +    assert 2 &lt;= snapshot(2)                                                 |
│ │ │ │  <a id="__codelineno-0-32" name="__codelineno-0-32" href="#__codelineno-0-32"></a>+------------------------------------------------------------------------------+
│ │ │ │  <a id="__codelineno-0-33" name="__codelineno-0-33" href="#__codelineno-0-33"></a>These changes are not applied.
│ │ │ │  <a id="__codelineno-0-34" name="__codelineno-0-34" href="#__codelineno-0-34"></a>Use --inline-snapshot=trim to apply them, or use the interactive mode with 
│ │ │ │  <a id="__codelineno-0-35" name="__codelineno-0-35" href="#__codelineno-0-35"></a>--inline-snapshot=review
│ │ │ │  <a id="__codelineno-0-36" name="__codelineno-0-36" href="#__codelineno-0-36"></a>
│ │ │ │  <a id="__codelineno-0-37" name="__codelineno-0-37" href="#__codelineno-0-37"></a>
│ │ │ │ -<a id="__codelineno-0-38" name="__codelineno-0-38" href="#__codelineno-0-38"></a><span class=" -Color -Color-Green">============================== </span><span class=" -Color -Color-Bold -Color-Bold-Green">1 passed</span><span class=" -Color -Color-Green"> in 0.51s ===============================</span>
│ │ │ │ +<a id="__codelineno-0-38" name="__codelineno-0-38" href="#__codelineno-0-38"></a><span class=" -Color -Color-Green">============================== </span><span class=" -Color -Color-Bold -Color-Bold-Green">1 passed</span><span class=" -Color -Color-Green"> in 0.82s ===============================</span>
│ │ │ │  </code></pre></div>
│ │ │ │  <h2 id="-inline-snapshotshort-report">--inline-snapshot=short-report<a class="headerlink" href="#-inline-snapshotshort-report" title="Permanent link">&para;</a></h2>
│ │ │ │  <p>give a short report over which changes can be made to the snapshots</p>
│ │ │ │  <div class="highlight"><pre><span></span><code><a id="__codelineno-0-1" name="__codelineno-0-1" href="#__codelineno-0-1"></a><span class=" -Color -Color-Bold -Color-Bold-Blue">&gt; pytest test_something.py --inline-snapshot=short-report</span>
│ │ │ │  <a id="__codelineno-0-2" name="__codelineno-0-2" href="#__codelineno-0-2"></a><span class=" -Color -Color-Bold">============================= test session starts ==============================</span>
│ │ │ │  <a id="__codelineno-0-3" name="__codelineno-0-3" href="#__codelineno-0-3"></a>platform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0
│ │ │ │ -<a id="__codelineno-0-4" name="__codelineno-0-4" href="#__codelineno-0-4"></a>rootdir: /tmp/tmp.GmIm9FDPUH
│ │ │ │ -<a id="__codelineno-0-5" name="__codelineno-0-5" href="#__codelineno-0-5"></a>plugins: pytest_freezer-0.4.9, mock-3.14.0, hypothesis-6.124.0, typeguard-4.4.1, time-machine-2.16.0, inline-snapshot-0.19.3, subtests-0.13.1
│ │ │ │ +<a id="__codelineno-0-4" name="__codelineno-0-4" href="#__codelineno-0-4"></a>rootdir: /tmp/tmp.STPxwcG61L
│ │ │ │ +<a id="__codelineno-0-5" name="__codelineno-0-5" href="#__codelineno-0-5"></a>plugins: subtests-0.13.1, typeguard-4.4.1, mock-3.14.0, inline-snapshot-0.19.3, hypothesis-6.124.0, time-machine-2.16.0, pytest_freezer-0.4.9
│ │ │ │  <a id="__codelineno-0-6" name="__codelineno-0-6" href="#__codelineno-0-6"></a>collected 1 item
│ │ │ │  <a id="__codelineno-0-7" name="__codelineno-0-7" href="#__codelineno-0-7"></a>
│ │ │ │  <a id="__codelineno-0-8" name="__codelineno-0-8" href="#__codelineno-0-8"></a>test_something.py <span class=" -Color -Color-Green">.</span><span class=" -Color -Color-Red">E                                                     [100%]</span>
│ │ │ │  <a id="__codelineno-0-9" name="__codelineno-0-9" href="#__codelineno-0-9"></a>
│ │ │ │  <a id="__codelineno-0-10" name="__codelineno-0-10" href="#__codelineno-0-10"></a>==================================== ERRORS ====================================
│ │ │ │  <a id="__codelineno-0-11" name="__codelineno-0-11" href="#__codelineno-0-11"></a><span class=" -Color -Color-Bold -Color-Bold-Red">_____________________ ERROR at teardown of test_something ______________________</span>
│ │ │ │  <a id="__codelineno-0-12" name="__codelineno-0-12" href="#__codelineno-0-12"></a>your snapshot is missing one value.
│ │ │ │  <a id="__codelineno-0-13" name="__codelineno-0-13" href="#__codelineno-0-13"></a>=============================== inline snapshot ================================
│ │ │ │  <a id="__codelineno-0-14" name="__codelineno-0-14" href="#__codelineno-0-14"></a>Info: one snapshot can be trimmed (--inline-snapshot=trim)
│ │ │ │  <a id="__codelineno-0-15" name="__codelineno-0-15" href="#__codelineno-0-15"></a>Error: one snapshot is missing a value (--inline-snapshot=create)
│ │ │ │  <a id="__codelineno-0-16" name="__codelineno-0-16" href="#__codelineno-0-16"></a>
│ │ │ │  <a id="__codelineno-0-17" name="__codelineno-0-17" href="#__codelineno-0-17"></a>You can also use --inline-snapshot=review to approve the changes interactively
│ │ │ │  <a id="__codelineno-0-18" name="__codelineno-0-18" href="#__codelineno-0-18"></a><span class=" -Color -Color-Bold -Color-Bold-Cyan">=========================== short test summary info ============================</span>
│ │ │ │  <a id="__codelineno-0-19" name="__codelineno-0-19" href="#__codelineno-0-19"></a><span class=" -Color -Color-Red">ERROR</span> test_something.py::<span class=" -Color -Color-Bold">test_something</span> - Failed: your snapshot is missing one value.
│ │ │ │ -<a id="__codelineno-0-20" name="__codelineno-0-20" href="#__codelineno-0-20"></a><span class=" -Color -Color-Red">========================== </span><span class=" -Color -Color-Green">1 passed</span>, <span class=" -Color -Color-Bold -Color-Bold-Red">1 error</span><span class=" -Color -Color-Red"> in 0.46s ==========================</span>
│ │ │ │ +<a id="__codelineno-0-20" name="__codelineno-0-20" href="#__codelineno-0-20"></a><span class=" -Color -Color-Red">========================== </span><span class=" -Color -Color-Green">1 passed</span>, <span class=" -Color -Color-Bold -Color-Bold-Red">1 error</span><span class=" -Color -Color-Red"> in 0.80s ==========================</span>
│ │ │ │  </code></pre></div>
│ │ │ │  <div class="admonition info">
│ │ │ │  <p class="admonition-title">Info</p>
│ │ │ │  <p>short-report exists mainly to show that snapshots have changed with enabled pytest assert-rewriting.
│ │ │ │  This option will be replaced with <em>report</em> when this restriction is lifted.</p>
│ │ │ │  </div>
│ │ │ │  <h2 id="-inline-snapshotreport">--inline-snapshot=report<a class="headerlink" href="#-inline-snapshotreport" title="Permanent link">&para;</a></h2>
│ │ │ │  <p>Shows a diff report over which changes can be made to the snapshots</p>
│ │ │ │  <div class="highlight"><pre><span></span><code><a id="__codelineno-0-1" name="__codelineno-0-1" href="#__codelineno-0-1"></a><span class=" -Color -Color-Bold -Color-Bold-Blue">&gt; pytest test_something.py --inline-snapshot=report</span>
│ │ │ │  <a id="__codelineno-0-2" name="__codelineno-0-2" href="#__codelineno-0-2"></a><span class=" -Color -Color-Bold">============================= test session starts ==============================</span>
│ │ │ │  <a id="__codelineno-0-3" name="__codelineno-0-3" href="#__codelineno-0-3"></a>platform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0
│ │ │ │ -<a id="__codelineno-0-4" name="__codelineno-0-4" href="#__codelineno-0-4"></a>rootdir: /tmp/tmp.siYONHxJ2N
│ │ │ │ -<a id="__codelineno-0-5" name="__codelineno-0-5" href="#__codelineno-0-5"></a>plugins: pytest_freezer-0.4.9, mock-3.14.0, hypothesis-6.124.0, typeguard-4.4.1, time-machine-2.16.0, inline-snapshot-0.19.3, subtests-0.13.1
│ │ │ │ +<a id="__codelineno-0-4" name="__codelineno-0-4" href="#__codelineno-0-4"></a>rootdir: /tmp/tmp.m6vy7VYyQc
│ │ │ │ +<a id="__codelineno-0-5" name="__codelineno-0-5" href="#__codelineno-0-5"></a>plugins: subtests-0.13.1, typeguard-4.4.1, mock-3.14.0, inline-snapshot-0.19.3, hypothesis-6.124.0, time-machine-2.16.0, pytest_freezer-0.4.9
│ │ │ │  <a id="__codelineno-0-6" name="__codelineno-0-6" href="#__codelineno-0-6"></a>collected 1 item
│ │ │ │  <a id="__codelineno-0-7" name="__codelineno-0-7" href="#__codelineno-0-7"></a>
│ │ │ │  <a id="__codelineno-0-8" name="__codelineno-0-8" href="#__codelineno-0-8"></a>test_something.py <span class=" -Color -Color-Green">.</span><span class=" -Color -Color-Red">E                                                     [100%]</span>
│ │ │ │  <a id="__codelineno-0-9" name="__codelineno-0-9" href="#__codelineno-0-9"></a>
│ │ │ │  <a id="__codelineno-0-10" name="__codelineno-0-10" href="#__codelineno-0-10"></a>==================================== ERRORS ====================================
│ │ │ │  <a id="__codelineno-0-11" name="__codelineno-0-11" href="#__codelineno-0-11"></a><span class=" -Color -Color-Bold -Color-Bold-Red">_____________________ ERROR at teardown of test_something ______________________</span>
│ │ │ │  <a id="__codelineno-0-12" name="__codelineno-0-12" href="#__codelineno-0-12"></a>your snapshot is missing one value.
│ │ │ │ @@ -1079,23 +1079,23 @@
│ │ │ │  <a id="__codelineno-0-38" name="__codelineno-0-38" href="#__codelineno-0-38"></a>+------------------------------------------------------------------------------+
│ │ │ │  <a id="__codelineno-0-39" name="__codelineno-0-39" href="#__codelineno-0-39"></a>These changes are not applied.
│ │ │ │  <a id="__codelineno-0-40" name="__codelineno-0-40" href="#__codelineno-0-40"></a>Use --inline-snapshot=trim to apply them, or use the interactive mode with 
│ │ │ │  <a id="__codelineno-0-41" name="__codelineno-0-41" href="#__codelineno-0-41"></a>--inline-snapshot=review
│ │ │ │  <a id="__codelineno-0-42" name="__codelineno-0-42" href="#__codelineno-0-42"></a>
│ │ │ │  <a id="__codelineno-0-43" name="__codelineno-0-43" href="#__codelineno-0-43"></a><span class=" -Color -Color-Bold -Color-Bold-Cyan">=========================== short test summary info ============================</span>
│ │ │ │  <a id="__codelineno-0-44" name="__codelineno-0-44" href="#__codelineno-0-44"></a><span class=" -Color -Color-Red">ERROR</span> test_something.py::<span class=" -Color -Color-Bold">test_something</span> - Failed: your snapshot is missing one value.
│ │ │ │ -<a id="__codelineno-0-45" name="__codelineno-0-45" href="#__codelineno-0-45"></a><span class=" -Color -Color-Red">========================== </span><span class=" -Color -Color-Green">1 passed</span>, <span class=" -Color -Color-Bold -Color-Bold-Red">1 error</span><span class=" -Color -Color-Red"> in 0.46s ==========================</span>
│ │ │ │ +<a id="__codelineno-0-45" name="__codelineno-0-45" href="#__codelineno-0-45"></a><span class=" -Color -Color-Red">========================== </span><span class=" -Color -Color-Green">1 passed</span>, <span class=" -Color -Color-Bold -Color-Bold-Red">1 error</span><span class=" -Color -Color-Red"> in 0.78s ==========================</span>
│ │ │ │  </code></pre></div>
│ │ │ │  <h2 id="-inline-snapshotreview">--inline-snapshot=review<a class="headerlink" href="#-inline-snapshotreview" title="Permanent link">&para;</a></h2>
│ │ │ │  <p>Shows a diff report for each category and ask if you want to apply the changes</p>
│ │ │ │  <div class="highlight"><pre><span></span><code><a id="__codelineno-0-1" name="__codelineno-0-1" href="#__codelineno-0-1"></a><span class=" -Color -Color-Bold -Color-Bold-Blue">&gt; pytest test_something.py --inline-snapshot=review</span>
│ │ │ │  <a id="__codelineno-0-2" name="__codelineno-0-2" href="#__codelineno-0-2"></a><span class=" -Color -Color-Bold">============================= test session starts ==============================</span>
│ │ │ │  <a id="__codelineno-0-3" name="__codelineno-0-3" href="#__codelineno-0-3"></a>platform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0
│ │ │ │ -<a id="__codelineno-0-4" name="__codelineno-0-4" href="#__codelineno-0-4"></a>rootdir: /tmp/tmp.pdpnCdJwR4
│ │ │ │ -<a id="__codelineno-0-5" name="__codelineno-0-5" href="#__codelineno-0-5"></a>plugins: pytest_freezer-0.4.9, mock-3.14.0, hypothesis-6.124.0, typeguard-4.4.1, time-machine-2.16.0, inline-snapshot-0.19.3, subtests-0.13.1
│ │ │ │ +<a id="__codelineno-0-4" name="__codelineno-0-4" href="#__codelineno-0-4"></a>rootdir: /tmp/tmp.LU2pcziyBH
│ │ │ │ +<a id="__codelineno-0-5" name="__codelineno-0-5" href="#__codelineno-0-5"></a>plugins: subtests-0.13.1, typeguard-4.4.1, mock-3.14.0, inline-snapshot-0.19.3, hypothesis-6.124.0, time-machine-2.16.0, pytest_freezer-0.4.9
│ │ │ │  <a id="__codelineno-0-6" name="__codelineno-0-6" href="#__codelineno-0-6"></a>collected 1 item
│ │ │ │  <a id="__codelineno-0-7" name="__codelineno-0-7" href="#__codelineno-0-7"></a>
│ │ │ │  <a id="__codelineno-0-8" name="__codelineno-0-8" href="#__codelineno-0-8"></a>test_something.py <span class=" -Color -Color-Green">.                                                      [100%]</span>
│ │ │ │  <a id="__codelineno-0-9" name="__codelineno-0-9" href="#__codelineno-0-9"></a>=============================== inline snapshot ================================
│ │ │ │  <a id="__codelineno-0-10" name="__codelineno-0-10" href="#__codelineno-0-10"></a>─────────────────────────────── Create snapshots ───────────────────────────────
│ │ │ │  <a id="__codelineno-0-11" name="__codelineno-0-11" href="#__codelineno-0-11"></a>+----------------------------- test_something.py ------------------------------+
│ │ │ │  <a id="__codelineno-0-12" name="__codelineno-0-12" href="#__codelineno-0-12"></a>| @@ -2,5 +2,5 @@                                                              |
│ │ │ │ @@ -1116,15 +1116,15 @@
│ │ │ │  <a id="__codelineno-0-27" name="__codelineno-0-27" href="#__codelineno-0-27"></a>|  def test_something():                                                       |
│ │ │ │  <a id="__codelineno-0-28" name="__codelineno-0-28" href="#__codelineno-0-28"></a>|      assert 1 == snapshot(1)                                                 |
│ │ │ │  <a id="__codelineno-0-29" name="__codelineno-0-29" href="#__codelineno-0-29"></a>| -    assert 2 &lt;= snapshot(5)                                                 |
│ │ │ │  <a id="__codelineno-0-30" name="__codelineno-0-30" href="#__codelineno-0-30"></a>| +    assert 2 &lt;= snapshot(2)                                                 |
│ │ │ │  <a id="__codelineno-0-31" name="__codelineno-0-31" href="#__codelineno-0-31"></a>+------------------------------------------------------------------------------+
│ │ │ │  <a id="__codelineno-0-32" name="__codelineno-0-32" href="#__codelineno-0-32"></a>do you want to trim these snapshots? [y/n] (n): 
│ │ │ │  <a id="__codelineno-0-33" name="__codelineno-0-33" href="#__codelineno-0-33"></a>
│ │ │ │ -<a id="__codelineno-0-34" name="__codelineno-0-34" href="#__codelineno-0-34"></a><span class=" -Color -Color-Green">============================== </span><span class=" -Color -Color-Bold -Color-Bold-Green">1 passed</span><span class=" -Color -Color-Green"> in 0.49s ===============================</span>
│ │ │ │ +<a id="__codelineno-0-34" name="__codelineno-0-34" href="#__codelineno-0-34"></a><span class=" -Color -Color-Green">============================== </span><span class=" -Color -Color-Bold -Color-Bold-Green">1 passed</span><span class=" -Color -Color-Green"> in 0.82s ===============================</span>
│ │ │ │  </code></pre></div>
│ │ │ │  <h2 id="-inline-snapshotdisable">--inline-snapshot=disable<a class="headerlink" href="#-inline-snapshotdisable" title="Permanent link">&para;</a></h2>
│ │ │ │  <p>Disables all the snapshot logic. <code>snapshot(x)</code> will just return <code>x</code>.
│ │ │ │  This can be used if you think exclude that snapshot logic causes a problem in your tests, or if you want to speedup your CI.</p>
│ │ │ │  <div class="admonition info">
│ │ │ │  <p class="admonition-title">deprecation</p>
│ │ │ │  <p>This option was previously called <code>--inline-snapshot-disable</code></p>
│ │ │ │ ├── html2text {}
│ │ │ │ │ @@ -66,17 +66,17 @@
│ │ │ │ │  def test_something():
│ │ │ │ │      assert 1 == snapshot()
│ │ │ │ │      assert 2 <= snapshot(5)
│ │ │ │ │  > pytest test_something.py --inline-snapshot=create,report
│ │ │ │ │  ============================= test session starts
│ │ │ │ │  ==============================
│ │ │ │ │  platform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0
│ │ │ │ │ -rootdir: /tmp/tmp.GZGVqEVxWM
│ │ │ │ │ -plugins: pytest_freezer-0.4.9, mock-3.14.0, hypothesis-6.124.0, typeguard-
│ │ │ │ │ -4.4.1, time-machine-2.16.0, inline-snapshot-0.19.3, subtests-0.13.1
│ │ │ │ │ +rootdir: /tmp/tmp.lpRrqOmrhn
│ │ │ │ │ +plugins: subtests-0.13.1, typeguard-4.4.1, mock-3.14.0, inline-snapshot-0.19.3,
│ │ │ │ │ +hypothesis-6.124.0, time-machine-2.16.0, pytest_freezer-0.4.9
│ │ │ │ │  collected 1 item
│ │ │ │ │  
│ │ │ │ │  test_something.py .                                                      [100%]
│ │ │ │ │  =============================== inline snapshot
│ │ │ │ │  ================================
│ │ │ │ │  ─────────────────────────────── Create snapshots
│ │ │ │ │  ───────────────────────────────
│ │ │ │ │ @@ -123,25 +123,25 @@
│ │ │ │ │  +------------------------------------------------------------------------------
│ │ │ │ │  +
│ │ │ │ │  These changes are not applied.
│ │ │ │ │  Use --inline-snapshot=trim to apply them, or use the interactive mode with
│ │ │ │ │  --inline-snapshot=review
│ │ │ │ │  
│ │ │ │ │  
│ │ │ │ │ -============================== 1 passed in 0.51s
│ │ │ │ │ +============================== 1 passed in 0.82s
│ │ │ │ │  ===============================
│ │ │ │ │  ********** ----iinnlliinnee--ssnnaappsshhoott==sshhoorrtt--rreeppoorrtt_?¶ **********
│ │ │ │ │  give a short report over which changes can be made to the snapshots
│ │ │ │ │  > pytest test_something.py --inline-snapshot=short-report
│ │ │ │ │  ============================= test session starts
│ │ │ │ │  ==============================
│ │ │ │ │  platform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0
│ │ │ │ │ -rootdir: /tmp/tmp.GmIm9FDPUH
│ │ │ │ │ -plugins: pytest_freezer-0.4.9, mock-3.14.0, hypothesis-6.124.0, typeguard-
│ │ │ │ │ -4.4.1, time-machine-2.16.0, inline-snapshot-0.19.3, subtests-0.13.1
│ │ │ │ │ +rootdir: /tmp/tmp.STPxwcG61L
│ │ │ │ │ +plugins: subtests-0.13.1, typeguard-4.4.1, mock-3.14.0, inline-snapshot-0.19.3,
│ │ │ │ │ +hypothesis-6.124.0, time-machine-2.16.0, pytest_freezer-0.4.9
│ │ │ │ │  collected 1 item
│ │ │ │ │  
│ │ │ │ │  test_something.py .E                                                     [100%]
│ │ │ │ │  
│ │ │ │ │  ==================================== ERRORS
│ │ │ │ │  ====================================
│ │ │ │ │  _____________________ ERROR at teardown of test_something
│ │ │ │ │ @@ -153,29 +153,29 @@
│ │ │ │ │  Error: one snapshot is missing a value (--inline-snapshot=create)
│ │ │ │ │  
│ │ │ │ │  You can also use --inline-snapshot=review to approve the changes interactively
│ │ │ │ │  =========================== short test summary info
│ │ │ │ │  ============================
│ │ │ │ │  ERROR test_something.py::test_something - Failed: your snapshot is missing one
│ │ │ │ │  value.
│ │ │ │ │ -========================== 1 passed, 1 error in 0.46s
│ │ │ │ │ +========================== 1 passed, 1 error in 0.80s
│ │ │ │ │  ==========================
│ │ │ │ │  Info
│ │ │ │ │  short-report exists mainly to show that snapshots have changed with enabled
│ │ │ │ │  pytest assert-rewriting. This option will be replaced with rreeppoorrtt when this
│ │ │ │ │  restriction is lifted.
│ │ │ │ │  ********** ----iinnlliinnee--ssnnaappsshhoott==rreeppoorrtt_?¶ **********
│ │ │ │ │  Shows a diff report over which changes can be made to the snapshots
│ │ │ │ │  > pytest test_something.py --inline-snapshot=report
│ │ │ │ │  ============================= test session starts
│ │ │ │ │  ==============================
│ │ │ │ │  platform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0
│ │ │ │ │ -rootdir: /tmp/tmp.siYONHxJ2N
│ │ │ │ │ -plugins: pytest_freezer-0.4.9, mock-3.14.0, hypothesis-6.124.0, typeguard-
│ │ │ │ │ -4.4.1, time-machine-2.16.0, inline-snapshot-0.19.3, subtests-0.13.1
│ │ │ │ │ +rootdir: /tmp/tmp.m6vy7VYyQc
│ │ │ │ │ +plugins: subtests-0.13.1, typeguard-4.4.1, mock-3.14.0, inline-snapshot-0.19.3,
│ │ │ │ │ +hypothesis-6.124.0, time-machine-2.16.0, pytest_freezer-0.4.9
│ │ │ │ │  collected 1 item
│ │ │ │ │  
│ │ │ │ │  test_something.py .E                                                     [100%]
│ │ │ │ │  
│ │ │ │ │  ==================================== ERRORS
│ │ │ │ │  ====================================
│ │ │ │ │  _____________________ ERROR at teardown of test_something
│ │ │ │ │ @@ -233,25 +233,25 @@
│ │ │ │ │  Use --inline-snapshot=trim to apply them, or use the interactive mode with
│ │ │ │ │  --inline-snapshot=review
│ │ │ │ │  
│ │ │ │ │  =========================== short test summary info
│ │ │ │ │  ============================
│ │ │ │ │  ERROR test_something.py::test_something - Failed: your snapshot is missing one
│ │ │ │ │  value.
│ │ │ │ │ -========================== 1 passed, 1 error in 0.46s
│ │ │ │ │ +========================== 1 passed, 1 error in 0.78s
│ │ │ │ │  ==========================
│ │ │ │ │  ********** ----iinnlliinnee--ssnnaappsshhoott==rreevviieeww_?¶ **********
│ │ │ │ │  Shows a diff report for each category and ask if you want to apply the changes
│ │ │ │ │  > pytest test_something.py --inline-snapshot=review
│ │ │ │ │  ============================= test session starts
│ │ │ │ │  ==============================
│ │ │ │ │  platform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0
│ │ │ │ │ -rootdir: /tmp/tmp.pdpnCdJwR4
│ │ │ │ │ -plugins: pytest_freezer-0.4.9, mock-3.14.0, hypothesis-6.124.0, typeguard-
│ │ │ │ │ -4.4.1, time-machine-2.16.0, inline-snapshot-0.19.3, subtests-0.13.1
│ │ │ │ │ +rootdir: /tmp/tmp.LU2pcziyBH
│ │ │ │ │ +plugins: subtests-0.13.1, typeguard-4.4.1, mock-3.14.0, inline-snapshot-0.19.3,
│ │ │ │ │ +hypothesis-6.124.0, time-machine-2.16.0, pytest_freezer-0.4.9
│ │ │ │ │  collected 1 item
│ │ │ │ │  
│ │ │ │ │  test_something.py .                                                      [100%]
│ │ │ │ │  =============================== inline snapshot
│ │ │ │ │  ================================
│ │ │ │ │  ─────────────────────────────── Create snapshots
│ │ │ │ │  ───────────────────────────────
│ │ │ │ │ @@ -294,15 +294,15 @@
│ │ │ │ │  |
│ │ │ │ │  | +    assert 2 <= snapshot(2)
│ │ │ │ │  |
│ │ │ │ │  +------------------------------------------------------------------------------
│ │ │ │ │  +
│ │ │ │ │  do you want to trim these snapshots? [y/n] (n):
│ │ │ │ │  
│ │ │ │ │ -============================== 1 passed in 0.49s
│ │ │ │ │ +============================== 1 passed in 0.82s
│ │ │ │ │  ===============================
│ │ │ │ │  ********** ----iinnlliinnee--ssnnaappsshhoott==ddiissaabbllee_?¶ **********
│ │ │ │ │  Disables all the snapshot logic. snapshot(x) will just return x. This can be
│ │ │ │ │  used if you think exclude that snapshot logic causes a problem in your tests,
│ │ │ │ │  or if you want to speedup your CI.
│ │ │ │ │  deprecation
│ │ │ │ │  This option was previously called --inline-snapshot-disable
│ │ │ ├── ./usr/share/doc/python-inline-snapshot-doc/html/search/search_index.json
│ │ │ │ ├── Pretty-printed
│ │ │ │ │┄ Similarity: 0.9970878136200718%
│ │ │ │ │┄ Differences: {"'docs'": "{147: {'text': '<p>Uses <code>contextlib.redirect_stderr/stdout</code> to capture the "
│ │ │ │ │┄            'output and compare it with the snapshots. <code>dirty_equals.IsStr</code> can be used '
│ │ │ │ │┄            'to ignore the output if needed.</p> <p>Parameters:</p> Name Type Description Default '
│ │ │ │ │┄            '<code>stdout</code> <code>Snapshot[str]</code> <p>snapshot which is compared to the '
│ │ │ │ │┄            "recorded output</p> <code>\\'\\'</code> <code>stderr</code> <code>Snapshot[str]</code> "
│ │ │ │ │┄            "<p […]
│ │ │ │ │ @@ -742,25 +742,25 @@
│ │ │ │ │          {
│ │ │ │ │              "location": "extra.html#inline_snapshot.extra",
│ │ │ │ │              "text": "<p>The following functions are build on top of inline-snapshot and could also be implemented in an extra library.</p> <p>They are part of inline-snapshot because they are general useful and do not depend on other libraries.</p>",
│ │ │ │ │              "title": "<code>inline_snapshot.extra</code>"
│ │ │ │ │          },
│ │ │ │ │          {
│ │ │ │ │              "location": "extra.html#inline_snapshot.extra.prints",
│ │ │ │ │ -            "text": "<p>Uses <code>contextlib.redirect_stderr/stdout</code> to capture the output and compare it with the snapshots. <code>dirty_equals.IsStr</code> can be used to ignore the output if needed.</p> <p>Parameters:</p> Name Type Description Default <code>stdout</code> <code>Snapshot[str]</code> <p>snapshot which is compared to the recorded output</p> <code>''</code> <code>stderr</code> <code>Snapshot[str]</code> <p>snapshot which is compared to the recorded error output</p> <code>''</code> original--inline-snapshot=createignore stdout <p> <pre><code>from inline_snapshot import snapshot\nfrom inline_snapshot.extra import prints\nimport sys\n\n\ndef test_prints():\n    with prints(stdout=snapshot(), stderr=snapshot()):\n        print(\"hello world\")\n        print(\"some error\", file=sys.stderr)\n</code></pre></p> <p> <pre><code>from inline_snapshot import snapshot\nfrom inline_snapshot.extra import prints\nimport sys\n\n\ndef test_prints():\n    with prints(\n        stdout=snapshot(\"hello world\\n\"), stderr=snapshot(\"some error\\n\")\n    ):\n        print(\"hello world\")\n        print(\"some error\", file=sys.stderr)\n</code></pre></p> <p> <pre><code>from inline_snapshot import snapshot\nfrom inline_snapshot.extra import prints\nfrom dirty_equals import IsStr\nimport sys\n\n\ndef test_prints():\n    with prints(\n        stdout=IsStr(),\n        stderr=snapshot(\"some error\\n\"),\n    ):\n        print(\"hello world\")\n        print(\"some error\", file=sys.stderr)\n</code></pre></p> Source code in <code>.pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/extra.py</code> <pre><code>@contextlib.contextmanager\ndef prints(*, stdout: Snapshot[str] = \"\", stderr: Snapshot[str] = \"\"):\n    \"\"\"Uses `contextlib.redirect_stderr/stdout` to capture the output and\n    compare it with the snapshots. `dirty_equals.IsStr` can be used to ignore\n    the output if needed.\n\n    Parameters:\n        stdout: snapshot which is compared to the recorded output\n        stderr: snapshot which is compared to the recorded error output\n\n    === \"original\"\n\n        &lt;!-- inline-snapshot: first_block outcome-passed=1 outcome-errors=1 --&gt;\n        ``` python\n        from inline_snapshot import snapshot\n        from inline_snapshot.extra import prints\n        import sys\n\n\n        def test_prints():\n            with prints(stdout=snapshot(), stderr=snapshot()):\n                print(\"hello world\")\n                print(\"some error\", file=sys.stderr)\n        ```\n\n    === \"--inline-snapshot=create\"\n\n        &lt;!-- inline-snapshot: create outcome-passed=1 --&gt;\n        ``` python hl_lines=\"7 8 9\"\n        from inline_snapshot import snapshot\n        from inline_snapshot.extra import prints\n        import sys\n\n\n        def test_prints():\n            with prints(\n                stdout=snapshot(\"hello world\\\\n\"), stderr=snapshot(\"some error\\\\n\")\n            ):\n                print(\"hello world\")\n                print(\"some error\", file=sys.stderr)\n        ```\n\n    === \"ignore stdout\"\n\n        &lt;!-- inline-snapshot: outcome-passed=1 --&gt;\n        ``` python hl_lines=\"3 9 10\"\n        from inline_snapshot import snapshot\n        from inline_snapshot.extra import prints\n        from dirty_equals import IsStr\n        import sys\n\n\n        def test_prints():\n            with prints(\n                stdout=IsStr(),\n                stderr=snapshot(\"some error\\\\n\"),\n            ):\n                print(\"hello world\")\n                print(\"some error\", file=sys.stderr)\n        ```\n    \"\"\"\n\n    with redirect_stdout(io.StringIO()) as stdout_io:\n        with redirect_stderr(io.StringIO()) as stderr_io:\n            yield\n\n    assert stderr_io.getvalue() == stderr\n    assert stdout_io.getvalue() == stdout\n</code></pre>",
│ │ │ │ │ +            "text": "<p>Uses <code>contextlib.redirect_stderr/stdout</code> to capture the output and compare it with the snapshots. <code>dirty_equals.IsStr</code> can be used to ignore the output if needed.</p> <p>Parameters:</p> Name Type Description Default <code>stdout</code> <code>Snapshot[str]</code> <p>snapshot which is compared to the recorded output</p> <code>''</code> <code>stderr</code> <code>Snapshot[str]</code> <p>snapshot which is compared to the recorded error output</p> <code>''</code> original--inline-snapshot=createignore stdout <p> <pre><code>from inline_snapshot import snapshot\nfrom inline_snapshot.extra import prints\nimport sys\n\n\ndef test_prints():\n    with prints(stdout=snapshot(), stderr=snapshot()):\n        print(\"hello world\")\n        print(\"some error\", file=sys.stderr)\n</code></pre></p> <p> <pre><code>from inline_snapshot import snapshot\nfrom inline_snapshot.extra import prints\nimport sys\n\n\ndef test_prints():\n    with prints(\n        stdout=snapshot(\"hello world\\n\"), stderr=snapshot(\"some error\\n\")\n    ):\n        print(\"hello world\")\n        print(\"some error\", file=sys.stderr)\n</code></pre></p> <p> <pre><code>from inline_snapshot import snapshot\nfrom inline_snapshot.extra import prints\nfrom dirty_equals import IsStr\nimport sys\n\n\ndef test_prints():\n    with prints(\n        stdout=IsStr(),\n        stderr=snapshot(\"some error\\n\"),\n    ):\n        print(\"hello world\")\n        print(\"some error\", file=sys.stderr)\n</code></pre></p> Source code in <code>.pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/extra.py</code> <pre><code>@contextlib.contextmanager\ndef prints(*, stdout: Snapshot[str] = \"\", stderr: Snapshot[str] = \"\"):\n    \"\"\"Uses `contextlib.redirect_stderr/stdout` to capture the output and\n    compare it with the snapshots. `dirty_equals.IsStr` can be used to ignore\n    the output if needed.\n\n    Parameters:\n        stdout: snapshot which is compared to the recorded output\n        stderr: snapshot which is compared to the recorded error output\n\n    === \"original\"\n\n        &lt;!-- inline-snapshot: first_block outcome-passed=1 outcome-errors=1 --&gt;\n        ``` python\n        from inline_snapshot import snapshot\n        from inline_snapshot.extra import prints\n        import sys\n\n\n        def test_prints():\n            with prints(stdout=snapshot(), stderr=snapshot()):\n                print(\"hello world\")\n                print(\"some error\", file=sys.stderr)\n        ```\n\n    === \"--inline-snapshot=create\"\n\n        &lt;!-- inline-snapshot: create outcome-passed=1 --&gt;\n        ``` python hl_lines=\"7 8 9\"\n        from inline_snapshot import snapshot\n        from inline_snapshot.extra import prints\n        import sys\n\n\n        def test_prints():\n            with prints(\n                stdout=snapshot(\"hello world\\\\n\"), stderr=snapshot(\"some error\\\\n\")\n            ):\n                print(\"hello world\")\n                print(\"some error\", file=sys.stderr)\n        ```\n\n    === \"ignore stdout\"\n\n        &lt;!-- inline-snapshot: outcome-passed=1 --&gt;\n        ``` python hl_lines=\"3 9 10\"\n        from inline_snapshot import snapshot\n        from inline_snapshot.extra import prints\n        from dirty_equals import IsStr\n        import sys\n\n\n        def test_prints():\n            with prints(\n                stdout=IsStr(),\n                stderr=snapshot(\"some error\\\\n\"),\n            ):\n                print(\"hello world\")\n                print(\"some error\", file=sys.stderr)\n        ```\n    \"\"\"\n\n    with redirect_stdout(io.StringIO()) as stdout_io:\n        with redirect_stderr(io.StringIO()) as stderr_io:\n            yield\n\n    assert stderr_io.getvalue() == stderr\n    assert stdout_io.getvalue() == stdout\n</code></pre>",
│ │ │ │ │              "title": "<code>prints(*, stdout='', stderr='')</code>"
│ │ │ │ │          },
│ │ │ │ │          {
│ │ │ │ │              "location": "extra.html#inline_snapshot.extra.raises",
│ │ │ │ │ -            "text": "<p>Check that an exception is raised.</p> <p>Parameters:</p> Name Type Description Default <code>exception</code> <code>Snapshot[str]</code> <p>snapshot which is compared with <code>f\"{type}: {message}\"</code> if an exception occured or <code>\"&lt;no exception&gt;\"</code> if no exception was raised.</p> required original--inline-snapshot=create <p> <pre><code>from inline_snapshot import snapshot\nfrom inline_snapshot.extra import raises\n\n\ndef test_raises():\n    with raises(snapshot()):\n        1 / 0\n</code></pre></p> <p> <pre><code>from inline_snapshot import snapshot\nfrom inline_snapshot.extra import raises\n\n\ndef test_raises():\n    with raises(snapshot(\"ZeroDivisionError: division by zero\")):\n        1 / 0\n</code></pre></p> Source code in <code>.pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/extra.py</code> <pre><code>@contextlib.contextmanager\ndef raises(exception: Snapshot[str]):\n    \"\"\"Check that an exception is raised.\n\n    Parameters:\n        exception: snapshot which is compared with `#!python f\"{type}: {message}\"` if an exception occured or `#!python \"&lt;no exception&gt;\"` if no exception was raised.\n\n    === \"original\"\n\n        &lt;!-- inline-snapshot: first_block outcome-passed=1 outcome-errors=1 --&gt;\n        ``` python\n        from inline_snapshot import snapshot\n        from inline_snapshot.extra import raises\n\n\n        def test_raises():\n            with raises(snapshot()):\n                1 / 0\n        ```\n\n    === \"--inline-snapshot=create\"\n\n        &lt;!-- inline-snapshot: create outcome-passed=1 --&gt;\n        ``` python hl_lines=\"6\"\n        from inline_snapshot import snapshot\n        from inline_snapshot.extra import raises\n\n\n        def test_raises():\n            with raises(snapshot(\"ZeroDivisionError: division by zero\")):\n                1 / 0\n        ```\n    \"\"\"\n\n    try:\n        yield\n    except Exception as ex:\n        msg = str(ex)\n        if \"\\n\" in msg:\n            assert f\"{type(ex).__name__}:\\n{ex}\" == exception\n        else:\n            assert f\"{type(ex).__name__}: {ex}\" == exception\n    else:\n        assert \"&lt;no exception&gt;\" == exception\n</code></pre>",
│ │ │ │ │ +            "text": "<p>Check that an exception is raised.</p> <p>Parameters:</p> Name Type Description Default <code>exception</code> <code>Snapshot[str]</code> <p>snapshot which is compared with <code>f\"{type}: {message}\"</code> if an exception occured or <code>\"&lt;no exception&gt;\"</code> if no exception was raised.</p> required original--inline-snapshot=create <p> <pre><code>from inline_snapshot import snapshot\nfrom inline_snapshot.extra import raises\n\n\ndef test_raises():\n    with raises(snapshot()):\n        1 / 0\n</code></pre></p> <p> <pre><code>from inline_snapshot import snapshot\nfrom inline_snapshot.extra import raises\n\n\ndef test_raises():\n    with raises(snapshot(\"ZeroDivisionError: division by zero\")):\n        1 / 0\n</code></pre></p> Source code in <code>.pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/extra.py</code> <pre><code>@contextlib.contextmanager\ndef raises(exception: Snapshot[str]):\n    \"\"\"Check that an exception is raised.\n\n    Parameters:\n        exception: snapshot which is compared with `#!python f\"{type}: {message}\"` if an exception occured or `#!python \"&lt;no exception&gt;\"` if no exception was raised.\n\n    === \"original\"\n\n        &lt;!-- inline-snapshot: first_block outcome-passed=1 outcome-errors=1 --&gt;\n        ``` python\n        from inline_snapshot import snapshot\n        from inline_snapshot.extra import raises\n\n\n        def test_raises():\n            with raises(snapshot()):\n                1 / 0\n        ```\n\n    === \"--inline-snapshot=create\"\n\n        &lt;!-- inline-snapshot: create outcome-passed=1 --&gt;\n        ``` python hl_lines=\"6\"\n        from inline_snapshot import snapshot\n        from inline_snapshot.extra import raises\n\n\n        def test_raises():\n            with raises(snapshot(\"ZeroDivisionError: division by zero\")):\n                1 / 0\n        ```\n    \"\"\"\n\n    try:\n        yield\n    except Exception as ex:\n        msg = str(ex)\n        if \"\\n\" in msg:\n            assert f\"{type(ex).__name__}:\\n{ex}\" == exception\n        else:\n            assert f\"{type(ex).__name__}: {ex}\" == exception\n    else:\n        assert \"&lt;no exception&gt;\" == exception\n</code></pre>",
│ │ │ │ │              "title": "<code>raises(exception)</code>"
│ │ │ │ │          },
│ │ │ │ │          {
│ │ │ │ │              "location": "extra.html#inline_snapshot.extra.warns",
│ │ │ │ │ -            "text": "<p>Captures warnings with <code>warnings.catch_warnings</code> and compares them against expected warnings.</p> <p>Parameters:</p> Name Type Description Default <code>expected_warnings</code> <code>Snapshot[List[Warning]]</code> <p>Snapshot containing a list of expected warnings.</p> required <code>include_line</code> <code>bool</code> <p>If <code>True</code>, each expected warning is a tuple <code>(linenumber, message)</code>.</p> <code>False</code> <code>include_file</code> <code>bool</code> <p>If <code>True</code>, each expected warning is a tuple <code>(filename, message)</code>.</p> <code>False</code> <p>The format of the expected warning:</p> <ul> <li><code>(filename, linenumber, message)</code> if both <code>include_line</code> and <code>include_file</code> are <code>True</code>.</li> <li><code>(linenumber, message)</code> if only <code>include_line</code> is <code>True</code>.</li> <li><code>(filename, message)</code> if only <code>include_file</code> is <code>True</code>.</li> <li>A string <code>message</code> if both are <code>False</code>.</li> </ul> original--inline-snapshot=create <p> <pre><code>from inline_snapshot import snapshot\nfrom inline_snapshot.extra import warns\nfrom warnings import warn\n\n\ndef test_warns():\n    with warns(snapshot(), include_line=True):\n        warn(\"some problem\")\n</code></pre></p> <p> <pre><code>from inline_snapshot import snapshot\nfrom inline_snapshot.extra import warns\nfrom warnings import warn\n\n\ndef test_warns():\n    with warns(snapshot([(8, \"UserWarning: some problem\")]), include_line=True):\n        warn(\"some problem\")\n</code></pre></p> Source code in <code>.pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/extra.py</code> <pre><code>@contextlib.contextmanager\ndef warns(\n    expected_warnings: Snapshot[List[Warning]],\n    /,\n    include_line: bool = False,\n    include_file: bool = False,\n):\n    \"\"\"\n    Captures warnings with `warnings.catch_warnings` and compares them against expected warnings.\n\n    Parameters:\n        expected_warnings: Snapshot containing a list of expected warnings.\n        include_line: If `True`, each expected warning is a tuple `(linenumber, message)`.\n        include_file: If `True`, each expected warning is a tuple `(filename, message)`.\n\n    The format of the expected warning:\n\n    - `(filename, linenumber, message)` if both `include_line` and `include_file` are `True`.\n    - `(linenumber, message)` if only `include_line` is `True`.\n    - `(filename, message)` if only `include_file` is `True`.\n    - A string `message` if both are `False`.\n\n    === \"original\"\n\n        &lt;!-- inline-snapshot: first_block outcome-passed=1 outcome-errors=1 --&gt;\n        ``` python\n        from inline_snapshot import snapshot\n        from inline_snapshot.extra import warns\n        from warnings import warn\n\n\n        def test_warns():\n            with warns(snapshot(), include_line=True):\n                warn(\"some problem\")\n        ```\n\n    === \"--inline-snapshot=create\"\n\n        &lt;!-- inline-snapshot: create fix outcome-passed=1 --&gt;\n        ``` python hl_lines=\"7\"\n        from inline_snapshot import snapshot\n        from inline_snapshot.extra import warns\n        from warnings import warn\n\n\n        def test_warns():\n            with warns(snapshot([(8, \"UserWarning: some problem\")]), include_line=True):\n                warn(\"some problem\")\n        ```\n    \"\"\"\n    with warnings.catch_warnings(record=True) as result:\n        warnings.simplefilter(\"always\")\n        yield\n\n    def make_warning(w):\n        message = f\"{w.category.__name__}: {w.message}\"\n        if not include_line and not include_file:\n            return message\n        message = (message,)\n\n        if include_line:\n            message = (w.lineno, *message)\n        if include_file:\n            message = (w.filename, *message)\n\n        return message\n\n    assert [make_warning(w) for w in result] == expected_warnings\n</code></pre>",
│ │ │ │ │ +            "text": "<p>Captures warnings with <code>warnings.catch_warnings</code> and compares them against expected warnings.</p> <p>Parameters:</p> Name Type Description Default <code>expected_warnings</code> <code>Snapshot[List[Warning]]</code> <p>Snapshot containing a list of expected warnings.</p> required <code>include_line</code> <code>bool</code> <p>If <code>True</code>, each expected warning is a tuple <code>(linenumber, message)</code>.</p> <code>False</code> <code>include_file</code> <code>bool</code> <p>If <code>True</code>, each expected warning is a tuple <code>(filename, message)</code>.</p> <code>False</code> <p>The format of the expected warning:</p> <ul> <li><code>(filename, linenumber, message)</code> if both <code>include_line</code> and <code>include_file</code> are <code>True</code>.</li> <li><code>(linenumber, message)</code> if only <code>include_line</code> is <code>True</code>.</li> <li><code>(filename, message)</code> if only <code>include_file</code> is <code>True</code>.</li> <li>A string <code>message</code> if both are <code>False</code>.</li> </ul> original--inline-snapshot=create <p> <pre><code>from inline_snapshot import snapshot\nfrom inline_snapshot.extra import warns\nfrom warnings import warn\n\n\ndef test_warns():\n    with warns(snapshot(), include_line=True):\n        warn(\"some problem\")\n</code></pre></p> <p> <pre><code>from inline_snapshot import snapshot\nfrom inline_snapshot.extra import warns\nfrom warnings import warn\n\n\ndef test_warns():\n    with warns(snapshot([(8, \"UserWarning: some problem\")]), include_line=True):\n        warn(\"some problem\")\n</code></pre></p> Source code in <code>.pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/extra.py</code> <pre><code>@contextlib.contextmanager\ndef warns(\n    expected_warnings: Snapshot[List[Warning]],\n    /,\n    include_line: bool = False,\n    include_file: bool = False,\n):\n    \"\"\"\n    Captures warnings with `warnings.catch_warnings` and compares them against expected warnings.\n\n    Parameters:\n        expected_warnings: Snapshot containing a list of expected warnings.\n        include_line: If `True`, each expected warning is a tuple `(linenumber, message)`.\n        include_file: If `True`, each expected warning is a tuple `(filename, message)`.\n\n    The format of the expected warning:\n\n    - `(filename, linenumber, message)` if both `include_line` and `include_file` are `True`.\n    - `(linenumber, message)` if only `include_line` is `True`.\n    - `(filename, message)` if only `include_file` is `True`.\n    - A string `message` if both are `False`.\n\n    === \"original\"\n\n        &lt;!-- inline-snapshot: first_block outcome-passed=1 outcome-errors=1 --&gt;\n        ``` python\n        from inline_snapshot import snapshot\n        from inline_snapshot.extra import warns\n        from warnings import warn\n\n\n        def test_warns():\n            with warns(snapshot(), include_line=True):\n                warn(\"some problem\")\n        ```\n\n    === \"--inline-snapshot=create\"\n\n        &lt;!-- inline-snapshot: create fix outcome-passed=1 --&gt;\n        ``` python hl_lines=\"7\"\n        from inline_snapshot import snapshot\n        from inline_snapshot.extra import warns\n        from warnings import warn\n\n\n        def test_warns():\n            with warns(snapshot([(8, \"UserWarning: some problem\")]), include_line=True):\n                warn(\"some problem\")\n        ```\n    \"\"\"\n    with warnings.catch_warnings(record=True) as result:\n        warnings.simplefilter(\"always\")\n        yield\n\n    def make_warning(w):\n        message = f\"{w.category.__name__}: {w.message}\"\n        if not include_line and not include_file:\n            return message\n        message = (message,)\n\n        if include_line:\n            message = (w.lineno, *message)\n        if include_file:\n            message = (w.filename, *message)\n\n        return message\n\n    assert [make_warning(w) for w in result] == expected_warnings\n</code></pre>",
│ │ │ │ │              "title": "<code>warns(expected_warnings, /, include_line=False, include_file=False)</code>"
│ │ │ │ │          },
│ │ │ │ │          {
│ │ │ │ │              "location": "getitem_snapshot.html",
│ │ │ │ │              "text": "",
│ │ │ │ │              "title": "snapshot()[key]"
│ │ │ │ │          },
│ │ │ │ │ @@ -822,65 +822,65 @@
│ │ │ │ │          {
│ │ │ │ │              "location": "outsource.html#api",
│ │ │ │ │              "text": "",
│ │ │ │ │              "title": "API"
│ │ │ │ │          },
│ │ │ │ │          {
│ │ │ │ │              "location": "outsource.html#inline_snapshot.outsource",
│ │ │ │ │ -            "text": "<p>Outsource some data into an external file.</p> <pre><code>&gt;&gt;&gt; png_data = b\"some_bytes\"  # should be the replaced with your actual data\n&gt;&gt;&gt; outsource(png_data, suffix=\".png\")\nexternal(\"212974ed1835*.png\")\n</code></pre> <p>Parameters:</p> Name Type Description Default <code>data</code> <code>Union[str, bytes]</code> <p>data which should be outsourced. strings are encoded with <code>\"utf-8\"</code>.</p> required <code>suffix</code> <code>Optional[str]</code> <p>overwrite file suffix. The default is <code>\".bin\"</code> if data is an instance of <code>bytes</code> and <code>\".txt\"</code> for <code>str</code>.</p> <code>None</code> <p>Returns:</p> Type Description <code>external</code> <p>The external data.</p> Source code in <code>.pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/_external.py</code> <pre><code>def outsource(data: Union[str, bytes], *, suffix: Optional[str] = None) -&gt; external:\n    \"\"\"Outsource some data into an external file.\n\n    ``` pycon\n    &gt;&gt;&gt; png_data = b\"some_bytes\"  # should be the replaced with your actual data\n    &gt;&gt;&gt; outsource(png_data, suffix=\".png\")\n    external(\"212974ed1835*.png\")\n\n    ```\n\n    Parameters:\n        data: data which should be outsourced. strings are encoded with `\"utf-8\"`.\n\n        suffix: overwrite file suffix. The default is `\".bin\"` if data is an instance of `#!python bytes` and `\".txt\"` for `#!python str`.\n\n    Returns:\n        The external data.\n    \"\"\"\n    if isinstance(data, str):\n        data = data.encode(\"utf-8\")\n        if suffix is None:\n            suffix = \".txt\"\n\n    elif isinstance(data, bytes):\n        if suffix is None:\n            suffix = \".bin\"\n    else:\n        raise TypeError(\"data has to be of type bytes | str\")\n\n    if not suffix or suffix[0] != \".\":\n        raise ValueError(\"suffix has to start with a '.' like '.png'\")\n\n    m = hashlib.sha256()\n    m.update(data)\n    hash = m.hexdigest()\n\n    assert storage is not None\n\n    name = hash + suffix\n\n    if not storage.lookup_all(name):\n        path = hash + \"-new\" + suffix\n        storage.save(path, data)\n\n    return external(name)\n</code></pre>",
│ │ │ │ │ +            "text": "<p>Outsource some data into an external file.</p> <pre><code>&gt;&gt;&gt; png_data = b\"some_bytes\"  # should be the replaced with your actual data\n&gt;&gt;&gt; outsource(png_data, suffix=\".png\")\nexternal(\"212974ed1835*.png\")\n</code></pre> <p>Parameters:</p> Name Type Description Default <code>data</code> <code>Union[str, bytes]</code> <p>data which should be outsourced. strings are encoded with <code>\"utf-8\"</code>.</p> required <code>suffix</code> <code>Optional[str]</code> <p>overwrite file suffix. The default is <code>\".bin\"</code> if data is an instance of <code>bytes</code> and <code>\".txt\"</code> for <code>str</code>.</p> <code>None</code> <p>Returns:</p> Type Description <code>external</code> <p>The external data.</p> Source code in <code>.pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/_external.py</code> <pre><code>def outsource(data: Union[str, bytes], *, suffix: Optional[str] = None) -&gt; external:\n    \"\"\"Outsource some data into an external file.\n\n    ``` pycon\n    &gt;&gt;&gt; png_data = b\"some_bytes\"  # should be the replaced with your actual data\n    &gt;&gt;&gt; outsource(png_data, suffix=\".png\")\n    external(\"212974ed1835*.png\")\n\n    ```\n\n    Parameters:\n        data: data which should be outsourced. strings are encoded with `\"utf-8\"`.\n\n        suffix: overwrite file suffix. The default is `\".bin\"` if data is an instance of `#!python bytes` and `\".txt\"` for `#!python str`.\n\n    Returns:\n        The external data.\n    \"\"\"\n    if isinstance(data, str):\n        data = data.encode(\"utf-8\")\n        if suffix is None:\n            suffix = \".txt\"\n\n    elif isinstance(data, bytes):\n        if suffix is None:\n            suffix = \".bin\"\n    else:\n        raise TypeError(\"data has to be of type bytes | str\")\n\n    if not suffix or suffix[0] != \".\":\n        raise ValueError(\"suffix has to start with a '.' like '.png'\")\n\n    m = hashlib.sha256()\n    m.update(data)\n    hash = m.hexdigest()\n\n    assert storage is not None\n\n    name = hash + suffix\n\n    if not storage.lookup_all(name):\n        path = hash + \"-new\" + suffix\n        storage.save(path, data)\n\n    return external(name)\n</code></pre>",
│ │ │ │ │              "title": "<code>inline_snapshot.outsource(data, *, suffix=None)</code>"
│ │ │ │ │          },
│ │ │ │ │          {
│ │ │ │ │              "location": "outsource.html#inline_snapshot.external",
│ │ │ │ │ -            "text": "Source code in <code>.pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/_external.py</code> <pre><code>class external:\n    def __init__(self, name: str):\n        \"\"\"External objects are used as a representation for outsourced data.\n        You should not create them directly.\n\n        The external data is by default stored inside `&lt;pytest_config_dir&gt;/.inline-snapshot/external`,\n        where `&lt;pytest_config_dir&gt;` is replaced by the directory containing the Pytest configuration file, if any.\n        To store data in a different location, set the `storage-dir` option in pyproject.toml.\n        Data which is outsourced but not referenced in the source code jet has a '-new' suffix in the filename.\n\n        Parameters:\n            name: the name of the external stored object.\n        \"\"\"\n\n        m = re.fullmatch(r\"([0-9a-fA-F]*)\\*?(\\.[a-zA-Z0-9]*)\", name)\n\n        if m:\n            self._hash, self._suffix = m.groups()\n        else:\n            raise ValueError(\n                \"path has to be of the form &lt;hash&gt;.&lt;suffix&gt; or &lt;partial_hash&gt;*.&lt;suffix&gt;\"\n            )\n\n    @property\n    def _path(self):\n        return f\"{self._hash}*{self._suffix}\"\n\n    def __repr__(self):\n        \"\"\"Returns the representation of the external object.\n\n        The length of the hash can be specified in the\n        [config](configuration.md).\n        \"\"\"\n        hash = self._hash[: _config.config.hash_length]\n\n        if len(hash) == 64:\n            return f'external(\"{hash}{self._suffix}\")'\n        else:\n            return f'external(\"{hash}*{self._suffix}\")'\n\n    def __eq__(self, other):\n        \"\"\"Two external objects are equal if they have the same hash and\n        suffix.\"\"\"\n        if not isinstance(other, external):\n            return NotImplemented\n\n        min_hash_len = min(len(self._hash), len(other._hash))\n\n        if self._hash[:min_hash_len] != other._hash[:min_hash_len]:\n            return False\n\n        if self._suffix != other._suffix:\n            return False\n\n        return True\n\n    def _load_value(self):\n        assert storage is not None\n        return storage.read(self._path)\n</code></pre>",
│ │ │ │ │ +            "text": "Source code in <code>.pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/_external.py</code> <pre><code>class external:\n    def __init__(self, name: str):\n        \"\"\"External objects are used as a representation for outsourced data.\n        You should not create them directly.\n\n        The external data is by default stored inside `&lt;pytest_config_dir&gt;/.inline-snapshot/external`,\n        where `&lt;pytest_config_dir&gt;` is replaced by the directory containing the Pytest configuration file, if any.\n        To store data in a different location, set the `storage-dir` option in pyproject.toml.\n        Data which is outsourced but not referenced in the source code jet has a '-new' suffix in the filename.\n\n        Parameters:\n            name: the name of the external stored object.\n        \"\"\"\n\n        m = re.fullmatch(r\"([0-9a-fA-F]*)\\*?(\\.[a-zA-Z0-9]*)\", name)\n\n        if m:\n            self._hash, self._suffix = m.groups()\n        else:\n            raise ValueError(\n                \"path has to be of the form &lt;hash&gt;.&lt;suffix&gt; or &lt;partial_hash&gt;*.&lt;suffix&gt;\"\n            )\n\n    @property\n    def _path(self):\n        return f\"{self._hash}*{self._suffix}\"\n\n    def __repr__(self):\n        \"\"\"Returns the representation of the external object.\n\n        The length of the hash can be specified in the\n        [config](configuration.md).\n        \"\"\"\n        hash = self._hash[: _config.config.hash_length]\n\n        if len(hash) == 64:\n            return f'external(\"{hash}{self._suffix}\")'\n        else:\n            return f'external(\"{hash}*{self._suffix}\")'\n\n    def __eq__(self, other):\n        \"\"\"Two external objects are equal if they have the same hash and\n        suffix.\"\"\"\n        if not isinstance(other, external):\n            return NotImplemented\n\n        min_hash_len = min(len(self._hash), len(other._hash))\n\n        if self._hash[:min_hash_len] != other._hash[:min_hash_len]:\n            return False\n\n        if self._suffix != other._suffix:\n            return False\n\n        return True\n\n    def _load_value(self):\n        assert storage is not None\n        return storage.read(self._path)\n</code></pre>",
│ │ │ │ │              "title": "<code>inline_snapshot.external</code>"
│ │ │ │ │          },
│ │ │ │ │          {
│ │ │ │ │              "location": "outsource.html#inline_snapshot.external.__eq__",
│ │ │ │ │ -            "text": "<p>Two external objects are equal if they have the same hash and suffix.</p> Source code in <code>.pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/_external.py</code> <pre><code>def __eq__(self, other):\n    \"\"\"Two external objects are equal if they have the same hash and\n    suffix.\"\"\"\n    if not isinstance(other, external):\n        return NotImplemented\n\n    min_hash_len = min(len(self._hash), len(other._hash))\n\n    if self._hash[:min_hash_len] != other._hash[:min_hash_len]:\n        return False\n\n    if self._suffix != other._suffix:\n        return False\n\n    return True\n</code></pre>",
│ │ │ │ │ +            "text": "<p>Two external objects are equal if they have the same hash and suffix.</p> Source code in <code>.pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/_external.py</code> <pre><code>def __eq__(self, other):\n    \"\"\"Two external objects are equal if they have the same hash and\n    suffix.\"\"\"\n    if not isinstance(other, external):\n        return NotImplemented\n\n    min_hash_len = min(len(self._hash), len(other._hash))\n\n    if self._hash[:min_hash_len] != other._hash[:min_hash_len]:\n        return False\n\n    if self._suffix != other._suffix:\n        return False\n\n    return True\n</code></pre>",
│ │ │ │ │              "title": "<code>__eq__(other)</code>"
│ │ │ │ │          },
│ │ │ │ │          {
│ │ │ │ │              "location": "outsource.html#inline_snapshot.external.__init__",
│ │ │ │ │ -            "text": "<p>External objects are used as a representation for outsourced data. You should not create them directly.</p> <p>The external data is by default stored inside <code>&lt;pytest_config_dir&gt;/.inline-snapshot/external</code>, where <code>&lt;pytest_config_dir&gt;</code> is replaced by the directory containing the Pytest configuration file, if any. To store data in a different location, set the <code>storage-dir</code> option in pyproject.toml. Data which is outsourced but not referenced in the source code jet has a '-new' suffix in the filename.</p> <p>Parameters:</p> Name Type Description Default <code>name</code> <code>str</code> <p>the name of the external stored object.</p> required Source code in <code>.pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/_external.py</code> <pre><code>def __init__(self, name: str):\n    \"\"\"External objects are used as a representation for outsourced data.\n    You should not create them directly.\n\n    The external data is by default stored inside `&lt;pytest_config_dir&gt;/.inline-snapshot/external`,\n    where `&lt;pytest_config_dir&gt;` is replaced by the directory containing the Pytest configuration file, if any.\n    To store data in a different location, set the `storage-dir` option in pyproject.toml.\n    Data which is outsourced but not referenced in the source code jet has a '-new' suffix in the filename.\n\n    Parameters:\n        name: the name of the external stored object.\n    \"\"\"\n\n    m = re.fullmatch(r\"([0-9a-fA-F]*)\\*?(\\.[a-zA-Z0-9]*)\", name)\n\n    if m:\n        self._hash, self._suffix = m.groups()\n    else:\n        raise ValueError(\n            \"path has to be of the form &lt;hash&gt;.&lt;suffix&gt; or &lt;partial_hash&gt;*.&lt;suffix&gt;\"\n        )\n</code></pre>",
│ │ │ │ │ +            "text": "<p>External objects are used as a representation for outsourced data. You should not create them directly.</p> <p>The external data is by default stored inside <code>&lt;pytest_config_dir&gt;/.inline-snapshot/external</code>, where <code>&lt;pytest_config_dir&gt;</code> is replaced by the directory containing the Pytest configuration file, if any. To store data in a different location, set the <code>storage-dir</code> option in pyproject.toml. Data which is outsourced but not referenced in the source code jet has a '-new' suffix in the filename.</p> <p>Parameters:</p> Name Type Description Default <code>name</code> <code>str</code> <p>the name of the external stored object.</p> required Source code in <code>.pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/_external.py</code> <pre><code>def __init__(self, name: str):\n    \"\"\"External objects are used as a representation for outsourced data.\n    You should not create them directly.\n\n    The external data is by default stored inside `&lt;pytest_config_dir&gt;/.inline-snapshot/external`,\n    where `&lt;pytest_config_dir&gt;` is replaced by the directory containing the Pytest configuration file, if any.\n    To store data in a different location, set the `storage-dir` option in pyproject.toml.\n    Data which is outsourced but not referenced in the source code jet has a '-new' suffix in the filename.\n\n    Parameters:\n        name: the name of the external stored object.\n    \"\"\"\n\n    m = re.fullmatch(r\"([0-9a-fA-F]*)\\*?(\\.[a-zA-Z0-9]*)\", name)\n\n    if m:\n        self._hash, self._suffix = m.groups()\n    else:\n        raise ValueError(\n            \"path has to be of the form &lt;hash&gt;.&lt;suffix&gt; or &lt;partial_hash&gt;*.&lt;suffix&gt;\"\n        )\n</code></pre>",
│ │ │ │ │              "title": "<code>__init__(name)</code>"
│ │ │ │ │          },
│ │ │ │ │          {
│ │ │ │ │              "location": "outsource.html#inline_snapshot.external.__repr__",
│ │ │ │ │ -            "text": "<p>Returns the representation of the external object.</p> <p>The length of the hash can be specified in the config.</p> Source code in <code>.pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/_external.py</code> <pre><code>def __repr__(self):\n    \"\"\"Returns the representation of the external object.\n\n    The length of the hash can be specified in the\n    [config](configuration.md).\n    \"\"\"\n    hash = self._hash[: _config.config.hash_length]\n\n    if len(hash) == 64:\n        return f'external(\"{hash}{self._suffix}\")'\n    else:\n        return f'external(\"{hash}*{self._suffix}\")'\n</code></pre>",
│ │ │ │ │ +            "text": "<p>Returns the representation of the external object.</p> <p>The length of the hash can be specified in the config.</p> Source code in <code>.pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/_external.py</code> <pre><code>def __repr__(self):\n    \"\"\"Returns the representation of the external object.\n\n    The length of the hash can be specified in the\n    [config](configuration.md).\n    \"\"\"\n    hash = self._hash[: _config.config.hash_length]\n\n    if len(hash) == 64:\n        return f'external(\"{hash}{self._suffix}\")'\n    else:\n        return f'external(\"{hash}*{self._suffix}\")'\n</code></pre>",
│ │ │ │ │              "title": "<code>__repr__()</code>"
│ │ │ │ │          },
│ │ │ │ │          {
│ │ │ │ │              "location": "outsource.html#pytest-options",
│ │ │ │ │              "text": "<p>It interacts with the following <code>--inline-snapshot</code> flags:</p> <ul> <li><code>trim</code> removes every snapshots form the storage which is not referenced with <code>external(...)</code> in the code.</li> </ul>",
│ │ │ │ │              "title": "pytest options"
│ │ │ │ │          },
│ │ │ │ │          {
│ │ │ │ │              "location": "pytest.html",
│ │ │ │ │              "text": "<p>inline-snapshot provides one pytest option with different flags (create, fix, trim, update, short-report, report, disable).</p> <p>Snapshot comparisons return always <code>True</code> if you use one of the flags create, fix or review. This is necessary because the whole test needs to be run to fix all snapshots like in this case:</p> <pre><code>from inline_snapshot import snapshot\n\n\ndef test_something():\n    assert 1 == snapshot(5)\n    assert 2 &lt;= snapshot(5)\n</code></pre> <p>Note</p> <p>Every flag with the exception of disable and short-report disables the pytest assert-rewriting.</p>",
│ │ │ │ │              "title": "pytest integration"
│ │ │ │ │          },
│ │ │ │ │          {
│ │ │ │ │              "location": "pytest.html#-inline-snapshotcreatefixtrimupdate",
│ │ │ │ │ -            "text": "<p>Approve the changes of the given category. These flags can be combined with report and review.</p> test_something.py<pre><code>from inline_snapshot import snapshot\n\n\ndef test_something():\n    assert 1 == snapshot()\n    assert 2 &lt;= snapshot(5)\n</code></pre> <pre><code>&gt; pytest test_something.py --inline-snapshot=create,report\n============================= test session starts ==============================\nplatform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0\nrootdir: /tmp/tmp.GZGVqEVxWM\nplugins: pytest_freezer-0.4.9, mock-3.14.0, hypothesis-6.124.0, typeguard-4.4.1, time-machine-2.16.0, inline-snapshot-0.19.3, subtests-0.13.1\ncollected 1 item\n\ntest_something.py .                                                      [100%]\n=============================== inline snapshot ================================\n\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Create snapshots \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n+----------------------------- test_something.py ------------------------------+\n| @@ -2,5 +2,5 @@                                                              |\n|                                                                              |\n|                                                                              |\n|                                                                              |\n|  def test_something():                                                       |\n| -    assert 1 == snapshot()                                                  |\n| +    assert 1 == snapshot(1)                                                 |\n|      assert 2 &lt;= snapshot(5)                                                 |\n+------------------------------------------------------------------------------+\nThese changes will be applied, because you used --inline-snapshot=create\n\n\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Trim snapshots \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n+----------------------------- test_something.py ------------------------------+\n| @@ -3,4 +3,4 @@                                                              |\n|                                                                              |\n|                                                                              |\n|  def test_something():                                                       |\n|      assert 1 == snapshot(1)                                                 |\n| -    assert 2 &lt;= snapshot(5)                                                 |\n| +    assert 2 &lt;= snapshot(2)                                                 |\n+------------------------------------------------------------------------------+\nThese changes are not applied.\nUse --inline-snapshot=trim to apply them, or use the interactive mode with \n--inline-snapshot=review\n\n\n============================== 1 passed in 0.51s ===============================\n</code></pre>",
│ │ │ │ │ +            "text": "<p>Approve the changes of the given category. These flags can be combined with report and review.</p> test_something.py<pre><code>from inline_snapshot import snapshot\n\n\ndef test_something():\n    assert 1 == snapshot()\n    assert 2 &lt;= snapshot(5)\n</code></pre> <pre><code>&gt; pytest test_something.py --inline-snapshot=create,report\n============================= test session starts ==============================\nplatform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0\nrootdir: /tmp/tmp.lpRrqOmrhn\nplugins: subtests-0.13.1, typeguard-4.4.1, mock-3.14.0, inline-snapshot-0.19.3, hypothesis-6.124.0, time-machine-2.16.0, pytest_freezer-0.4.9\ncollected 1 item\n\ntest_something.py .                                                      [100%]\n=============================== inline snapshot ================================\n\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Create snapshots \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n+----------------------------- test_something.py ------------------------------+\n| @@ -2,5 +2,5 @@                                                              |\n|                                                                              |\n|                                                                              |\n|                                                                              |\n|  def test_something():                                                       |\n| -    assert 1 == snapshot()                                                  |\n| +    assert 1 == snapshot(1)                                                 |\n|      assert 2 &lt;= snapshot(5)                                                 |\n+------------------------------------------------------------------------------+\nThese changes will be applied, because you used --inline-snapshot=create\n\n\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Trim snapshots \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n+----------------------------- test_something.py ------------------------------+\n| @@ -3,4 +3,4 @@                                                              |\n|                                                                              |\n|                                                                              |\n|  def test_something():                                                       |\n|      assert 1 == snapshot(1)                                                 |\n| -    assert 2 &lt;= snapshot(5)                                                 |\n| +    assert 2 &lt;= snapshot(2)                                                 |\n+------------------------------------------------------------------------------+\nThese changes are not applied.\nUse --inline-snapshot=trim to apply them, or use the interactive mode with \n--inline-snapshot=review\n\n\n============================== 1 passed in 0.82s ===============================\n</code></pre>",
│ │ │ │ │              "title": "--inline-snapshot=create,fix,trim,update"
│ │ │ │ │          },
│ │ │ │ │          {
│ │ │ │ │              "location": "pytest.html#-inline-snapshotshort-report",
│ │ │ │ │ -            "text": "<p>give a short report over which changes can be made to the snapshots</p> <pre><code>&gt; pytest test_something.py --inline-snapshot=short-report\n============================= test session starts ==============================\nplatform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0\nrootdir: /tmp/tmp.GmIm9FDPUH\nplugins: pytest_freezer-0.4.9, mock-3.14.0, hypothesis-6.124.0, typeguard-4.4.1, time-machine-2.16.0, inline-snapshot-0.19.3, subtests-0.13.1\ncollected 1 item\n\ntest_something.py .E                                                     [100%]\n\n==================================== ERRORS ====================================\n_____________________ ERROR at teardown of test_something ______________________\nyour snapshot is missing one value.\n=============================== inline snapshot ================================\nInfo: one snapshot can be trimmed (--inline-snapshot=trim)\nError: one snapshot is missing a value (--inline-snapshot=create)\n\nYou can also use --inline-snapshot=review to approve the changes interactively\n=========================== short test summary info ============================\nERROR test_something.py::test_something - Failed: your snapshot is missing one value.\n========================== 1 passed, 1 error in 0.46s ==========================\n</code></pre> <p>Info</p> <p>short-report exists mainly to show that snapshots have changed with enabled pytest assert-rewriting. This option will be replaced with report when this restriction is lifted.</p>",
│ │ │ │ │ +            "text": "<p>give a short report over which changes can be made to the snapshots</p> <pre><code>&gt; pytest test_something.py --inline-snapshot=short-report\n============================= test session starts ==============================\nplatform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0\nrootdir: /tmp/tmp.STPxwcG61L\nplugins: subtests-0.13.1, typeguard-4.4.1, mock-3.14.0, inline-snapshot-0.19.3, hypothesis-6.124.0, time-machine-2.16.0, pytest_freezer-0.4.9\ncollected 1 item\n\ntest_something.py .E                                                     [100%]\n\n==================================== ERRORS ====================================\n_____________________ ERROR at teardown of test_something ______________________\nyour snapshot is missing one value.\n=============================== inline snapshot ================================\nInfo: one snapshot can be trimmed (--inline-snapshot=trim)\nError: one snapshot is missing a value (--inline-snapshot=create)\n\nYou can also use --inline-snapshot=review to approve the changes interactively\n=========================== short test summary info ============================\nERROR test_something.py::test_something - Failed: your snapshot is missing one value.\n========================== 1 passed, 1 error in 0.80s ==========================\n</code></pre> <p>Info</p> <p>short-report exists mainly to show that snapshots have changed with enabled pytest assert-rewriting. This option will be replaced with report when this restriction is lifted.</p>",
│ │ │ │ │              "title": "--inline-snapshot=short-report"
│ │ │ │ │          },
│ │ │ │ │          {
│ │ │ │ │              "location": "pytest.html#-inline-snapshotreport",
│ │ │ │ │ -            "text": "<p>Shows a diff report over which changes can be made to the snapshots</p> <pre><code>&gt; pytest test_something.py --inline-snapshot=report\n============================= test session starts ==============================\nplatform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0\nrootdir: /tmp/tmp.siYONHxJ2N\nplugins: pytest_freezer-0.4.9, mock-3.14.0, hypothesis-6.124.0, typeguard-4.4.1, time-machine-2.16.0, inline-snapshot-0.19.3, subtests-0.13.1\ncollected 1 item\n\ntest_something.py .E                                                     [100%]\n\n==================================== ERRORS ====================================\n_____________________ ERROR at teardown of test_something ______________________\nyour snapshot is missing one value.\n=============================== inline snapshot ================================\n\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Create snapshots \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n+----------------------------- test_something.py ------------------------------+\n| @@ -2,5 +2,5 @@                                                              |\n|                                                                              |\n|                                                                              |\n|                                                                              |\n|  def test_something():                                                       |\n| -    assert 1 == snapshot()                                                  |\n| +    assert 1 == snapshot(1)                                                 |\n|      assert 2 &lt;= snapshot(5)                                                 |\n+------------------------------------------------------------------------------+\nThese changes are not applied.\nUse --inline-snapshot=create to apply them, or use the interactive mode with \n--inline-snapshot=review\n\n\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Trim snapshots \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n+----------------------------- test_something.py ------------------------------+\n| @@ -3,4 +3,4 @@                                                              |\n|                                                                              |\n|                                                                              |\n|  def test_something():                                                       |\n|      assert 1 == snapshot()                                                  |\n| -    assert 2 &lt;= snapshot(5)                                                 |\n| +    assert 2 &lt;= snapshot(2)                                                 |\n+------------------------------------------------------------------------------+\nThese changes are not applied.\nUse --inline-snapshot=trim to apply them, or use the interactive mode with \n--inline-snapshot=review\n\n=========================== short test summary info ============================\nERROR test_something.py::test_something - Failed: your snapshot is missing one value.\n========================== 1 passed, 1 error in 0.46s ==========================\n</code></pre>",
│ │ │ │ │ +            "text": "<p>Shows a diff report over which changes can be made to the snapshots</p> <pre><code>&gt; pytest test_something.py --inline-snapshot=report\n============================= test session starts ==============================\nplatform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0\nrootdir: /tmp/tmp.m6vy7VYyQc\nplugins: subtests-0.13.1, typeguard-4.4.1, mock-3.14.0, inline-snapshot-0.19.3, hypothesis-6.124.0, time-machine-2.16.0, pytest_freezer-0.4.9\ncollected 1 item\n\ntest_something.py .E                                                     [100%]\n\n==================================== ERRORS ====================================\n_____________________ ERROR at teardown of test_something ______________________\nyour snapshot is missing one value.\n=============================== inline snapshot ================================\n\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Create snapshots \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n+----------------------------- test_something.py ------------------------------+\n| @@ -2,5 +2,5 @@                                                              |\n|                                                                              |\n|                                                                              |\n|                                                                              |\n|  def test_something():                                                       |\n| -    assert 1 == snapshot()                                                  |\n| +    assert 1 == snapshot(1)                                                 |\n|      assert 2 &lt;= snapshot(5)                                                 |\n+------------------------------------------------------------------------------+\nThese changes are not applied.\nUse --inline-snapshot=create to apply them, or use the interactive mode with \n--inline-snapshot=review\n\n\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Trim snapshots \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n+----------------------------- test_something.py ------------------------------+\n| @@ -3,4 +3,4 @@                                                              |\n|                                                                              |\n|                                                                              |\n|  def test_something():                                                       |\n|      assert 1 == snapshot()                                                  |\n| -    assert 2 &lt;= snapshot(5)                                                 |\n| +    assert 2 &lt;= snapshot(2)                                                 |\n+------------------------------------------------------------------------------+\nThese changes are not applied.\nUse --inline-snapshot=trim to apply them, or use the interactive mode with \n--inline-snapshot=review\n\n=========================== short test summary info ============================\nERROR test_something.py::test_something - Failed: your snapshot is missing one value.\n========================== 1 passed, 1 error in 0.78s ==========================\n</code></pre>",
│ │ │ │ │              "title": "--inline-snapshot=report"
│ │ │ │ │          },
│ │ │ │ │          {
│ │ │ │ │              "location": "pytest.html#-inline-snapshotreview",
│ │ │ │ │ -            "text": "<p>Shows a diff report for each category and ask if you want to apply the changes</p> <pre><code>&gt; pytest test_something.py --inline-snapshot=review\n============================= test session starts ==============================\nplatform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0\nrootdir: /tmp/tmp.pdpnCdJwR4\nplugins: pytest_freezer-0.4.9, mock-3.14.0, hypothesis-6.124.0, typeguard-4.4.1, time-machine-2.16.0, inline-snapshot-0.19.3, subtests-0.13.1\ncollected 1 item\n\ntest_something.py .                                                      [100%]\n=============================== inline snapshot ================================\n\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Create snapshots \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n+----------------------------- test_something.py ------------------------------+\n| @@ -2,5 +2,5 @@                                                              |\n|                                                                              |\n|                                                                              |\n|                                                                              |\n|  def test_something():                                                       |\n| -    assert 1 == snapshot()                                                  |\n| +    assert 1 == snapshot(1)                                                 |\n|      assert 2 &lt;= snapshot(5)                                                 |\n+------------------------------------------------------------------------------+\ndo you want to create these snapshots? [y/n] (n): \n\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Trim snapshots \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n+----------------------------- test_something.py ------------------------------+\n| @@ -3,4 +3,4 @@                                                              |\n|                                                                              |\n|                                                                              |\n|  def test_something():                                                       |\n|      assert 1 == snapshot(1)                                                 |\n| -    assert 2 &lt;= snapshot(5)                                                 |\n| +    assert 2 &lt;= snapshot(2)                                                 |\n+------------------------------------------------------------------------------+\ndo you want to trim these snapshots? [y/n] (n): \n\n============================== 1 passed in 0.49s ===============================\n</code></pre>",
│ │ │ │ │ +            "text": "<p>Shows a diff report for each category and ask if you want to apply the changes</p> <pre><code>&gt; pytest test_something.py --inline-snapshot=review\n============================= test session starts ==============================\nplatform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0\nrootdir: /tmp/tmp.LU2pcziyBH\nplugins: subtests-0.13.1, typeguard-4.4.1, mock-3.14.0, inline-snapshot-0.19.3, hypothesis-6.124.0, time-machine-2.16.0, pytest_freezer-0.4.9\ncollected 1 item\n\ntest_something.py .                                                      [100%]\n=============================== inline snapshot ================================\n\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Create snapshots \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n+----------------------------- test_something.py ------------------------------+\n| @@ -2,5 +2,5 @@                                                              |\n|                                                                              |\n|                                                                              |\n|                                                                              |\n|  def test_something():                                                       |\n| -    assert 1 == snapshot()                                                  |\n| +    assert 1 == snapshot(1)                                                 |\n|      assert 2 &lt;= snapshot(5)                                                 |\n+------------------------------------------------------------------------------+\ndo you want to create these snapshots? [y/n] (n): \n\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 Trim snapshots \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n+----------------------------- test_something.py ------------------------------+\n| @@ -3,4 +3,4 @@                                                              |\n|                                                                              |\n|                                                                              |\n|  def test_something():                                                       |\n|      assert 1 == snapshot(1)                                                 |\n| -    assert 2 &lt;= snapshot(5)                                                 |\n| +    assert 2 &lt;= snapshot(2)                                                 |\n+------------------------------------------------------------------------------+\ndo you want to trim these snapshots? [y/n] (n): \n\n============================== 1 passed in 0.82s ===============================\n</code></pre>",
│ │ │ │ │              "title": "--inline-snapshot=review"
│ │ │ │ │          },
│ │ │ │ │          {
│ │ │ │ │              "location": "pytest.html#-inline-snapshotdisable",
│ │ │ │ │              "text": "<p>Disables all the snapshot logic. <code>snapshot(x)</code> will just return <code>x</code>. This can be used if you think exclude that snapshot logic causes a problem in your tests, or if you want to speedup your CI.</p> <p>deprecation</p> <p>This option was previously called <code>--inline-snapshot-disable</code></p>",
│ │ │ │ │              "title": "--inline-snapshot=disable"
│ │ │ │ │          },
│ │ │ │ │ @@ -932,12 +932,12 @@
│ │ │ │ │          {
│ │ │ │ │              "location": "types.html#inline_snapshot.Category",
│ │ │ │ │              "text": "<p>See categories</p>",
│ │ │ │ │              "title": "<code>Category = Literal['update', 'fix', 'create', 'trim']</code>  <code>module-attribute</code>"
│ │ │ │ │          },
│ │ │ │ │          {
│ │ │ │ │              "location": "types.html#inline_snapshot.Snapshot",
│ │ │ │ │ -            "text": "<p>Can be used to annotate function arguments which accept snapshot values.</p> <p>You can annotate function arguments with <code>Snapshot[T]</code> to declare that a snapshot-value can be passed as function argument. <code>Snapshot[T]</code> is a type alias for <code>T</code>, which allows you to pass <code>int</code> values instead of <code>int</code> snapshots.</p> <p>Example:</p> <pre><code>from typing import Optional\nfrom inline_snapshot import snapshot, Snapshot\n\n# required snapshots\n\n\ndef check_in_bounds(value, lower: Snapshot[int], upper: Snapshot[int]):\n    assert lower &lt;= value &lt;= upper\n\n\ndef test_numbers():\n    for c in \"hello world\":\n        check_in_bounds(ord(c), snapshot(32), snapshot(119))\n\n    # use with normal values\n    check_in_bounds(5, 0, 10)\n\n\n# optional snapshots\n\n\ndef check_container(\n    value,\n    *,\n    value_repr: Optional[Snapshot[str]] = None,\n    length: Optional[Snapshot[int]] = None\n):\n    if value_repr is not None:\n        assert repr(value) == value_repr\n\n    if length is not None:\n        assert len(value) == length\n\n\ndef test_container():\n    check_container([1, 2], value_repr=snapshot(\"[1, 2]\"), length=snapshot(2))\n\n    check_container({1, 1}, length=snapshot(1))\n</code></pre> Source code in <code>.pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/_types.py</code> <pre><code>class Snapshot(Generic[T]):\n    \"\"\"Can be used to annotate function arguments which accept snapshot\n    values.\n\n    You can annotate function arguments with `Snapshot[T]` to declare that a snapshot-value can be passed as function argument.\n    `Snapshot[T]` is a type alias for `T`, which allows you to pass `int` values instead of `int` snapshots.\n\n\n    Example:\n    &lt;!-- inline-snapshot: create fix trim first_block outcome-passed=2 --&gt;\n    ``` python\n    from typing import Optional\n    from inline_snapshot import snapshot, Snapshot\n\n    # required snapshots\n\n\n    def check_in_bounds(value, lower: Snapshot[int], upper: Snapshot[int]):\n        assert lower &lt;= value &lt;= upper\n\n\n    def test_numbers():\n        for c in \"hello world\":\n            check_in_bounds(ord(c), snapshot(32), snapshot(119))\n\n        # use with normal values\n        check_in_bounds(5, 0, 10)\n\n\n    # optional snapshots\n\n\n    def check_container(\n        value,\n        *,\n        value_repr: Optional[Snapshot[str]] = None,\n        length: Optional[Snapshot[int]] = None\n    ):\n        if value_repr is not None:\n            assert repr(value) == value_repr\n\n        if length is not None:\n            assert len(value) == length\n\n\n    def test_container():\n        check_container([1, 2], value_repr=snapshot(\"[1, 2]\"), length=snapshot(2))\n\n        check_container({1, 1}, length=snapshot(1))\n    ```\n    \"\"\"\n</code></pre>",
│ │ │ │ │ +            "text": "<p>Can be used to annotate function arguments which accept snapshot values.</p> <p>You can annotate function arguments with <code>Snapshot[T]</code> to declare that a snapshot-value can be passed as function argument. <code>Snapshot[T]</code> is a type alias for <code>T</code>, which allows you to pass <code>int</code> values instead of <code>int</code> snapshots.</p> <p>Example:</p> <pre><code>from typing import Optional\nfrom inline_snapshot import snapshot, Snapshot\n\n# required snapshots\n\n\ndef check_in_bounds(value, lower: Snapshot[int], upper: Snapshot[int]):\n    assert lower &lt;= value &lt;= upper\n\n\ndef test_numbers():\n    for c in \"hello world\":\n        check_in_bounds(ord(c), snapshot(32), snapshot(119))\n\n    # use with normal values\n    check_in_bounds(5, 0, 10)\n\n\n# optional snapshots\n\n\ndef check_container(\n    value,\n    *,\n    value_repr: Optional[Snapshot[str]] = None,\n    length: Optional[Snapshot[int]] = None\n):\n    if value_repr is not None:\n        assert repr(value) == value_repr\n\n    if length is not None:\n        assert len(value) == length\n\n\ndef test_container():\n    check_container([1, 2], value_repr=snapshot(\"[1, 2]\"), length=snapshot(2))\n\n    check_container({1, 1}, length=snapshot(1))\n</code></pre> Source code in <code>.pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/_types.py</code> <pre><code>class Snapshot(Generic[T]):\n    \"\"\"Can be used to annotate function arguments which accept snapshot\n    values.\n\n    You can annotate function arguments with `Snapshot[T]` to declare that a snapshot-value can be passed as function argument.\n    `Snapshot[T]` is a type alias for `T`, which allows you to pass `int` values instead of `int` snapshots.\n\n\n    Example:\n    &lt;!-- inline-snapshot: create fix trim first_block outcome-passed=2 --&gt;\n    ``` python\n    from typing import Optional\n    from inline_snapshot import snapshot, Snapshot\n\n    # required snapshots\n\n\n    def check_in_bounds(value, lower: Snapshot[int], upper: Snapshot[int]):\n        assert lower &lt;= value &lt;= upper\n\n\n    def test_numbers():\n        for c in \"hello world\":\n            check_in_bounds(ord(c), snapshot(32), snapshot(119))\n\n        # use with normal values\n        check_in_bounds(5, 0, 10)\n\n\n    # optional snapshots\n\n\n    def check_container(\n        value,\n        *,\n        value_repr: Optional[Snapshot[str]] = None,\n        length: Optional[Snapshot[int]] = None\n    ):\n        if value_repr is not None:\n            assert repr(value) == value_repr\n\n        if length is not None:\n            assert len(value) == length\n\n\n    def test_container():\n        check_container([1, 2], value_repr=snapshot(\"[1, 2]\"), length=snapshot(2))\n\n        check_container({1, 1}, length=snapshot(1))\n    ```\n    \"\"\"\n</code></pre>",
│ │ │ │ │              "title": "<code>Snapshot</code>"
│ │ │ │ │          }
│ │ │ │ │      ]
│ │ │ │ │  }
│ │ │ ├── ./usr/share/doc/python-inline-snapshot-doc/html/types.html
│ │ │ │ @@ -1003,15 +1003,15 @@
│ │ │ │  
│ │ │ │  
│ │ │ │  
│ │ │ │  
│ │ │ │  
│ │ │ │  
│ │ │ │                <details class="quote">
│ │ │ │ -                <summary>Source code in <code>.pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/_types.py</code></summary>
│ │ │ │ +                <summary>Source code in <code>.pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/_types.py</code></summary>
│ │ │ │                  <div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"><a href="#__codelineno-0-21">21</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-22">22</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-23">23</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-24">24</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-25">25</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-26">26</a></span>
│ │ │ │  <span class="normal"><a href="#__codelineno-0-27">27</a></span>
│ │ │ │ ├── html2text {}
│ │ │ │ │ @@ -78,15 +78,15 @@
│ │ │ │ │          assert len(value) == length
│ │ │ │ │  
│ │ │ │ │  
│ │ │ │ │  def test_container():
│ │ │ │ │      check_container([1, 2], value_repr=snapshot("[1, 2]"), length=snapshot(2))
│ │ │ │ │  
│ │ │ │ │      check_container({1, 1}, length=snapshot(1))
│ │ │ │ │ -Source code in .pybuild/cpython3_3.12_inline-snapshot/build/inline_snapshot/
│ │ │ │ │ +Source code in .pybuild/cpython3_3.13_inline-snapshot/build/inline_snapshot/
│ │ │ │ │  _types.py
│ │ │ │ │     class Snapshot(Generic[T]):
│ │ │ │ │  _2_1     """Can be used to annotate function arguments which accept snapshot
│ │ │ │ │  _2_2     values.
│ │ │ │ │  _2_3
│ │ │ │ │  _2_4     You can annotate function arguments with `Snapshot[T]` to declare that a
│ │ │ │ │  _2_5 snapshot-value can be passed as function argument.