Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add async_stub method #296

Merged
merged 9 commits into from
Jun 24, 2022
Merged

Add async_stub method #296

merged 9 commits into from
Jun 24, 2022

Conversation

PerchunPak
Copy link
Contributor

Which actually the same as stub but creates async stub.

Which actually the same as `stub` but creates async stub.
Comment on lines +113 to +116

.. seealso::

``async_stub`` method, which actually the same as ``stub`` but makes async stub.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

image

Copy link
Member

@nicoddemus nicoddemus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks a lot @PerchunPak for the contribution, sorry about the delay.

There are some things that need fixing:

  1. Can you take a look at the test failures? Seems like we have to put a guard around the definition of async_stub on the Python versions that don't support it.
  2. Could you add a very simple test to TestMockerStub that just calls async_stub and ensures it is an instance of unittest.mock.AsyncMock? This is just to avoid future regressions. The test needs to be skipped on unsupported Python versions.
  3. Finally could add a quick changelog entry for this, under a new session 3.8.0 (unreleased)?

Thanks again!

@PerchunPak
Copy link
Contributor Author

Can you take a look at the test failures? Seems like we have to put a guard around the definition of async_stub on the Python versions that don't support it.

Can't imagine how, seems like mock_module.AsyncMock will not work with type checkers, so how this could be done?
Maybe import standalone mock module in if TYPE_CHECKING: block?

@PerchunPak
Copy link
Contributor Author

I thought about variant like this, but users also can use standalone mock package, which have AsyncMock class.

@nicoddemus
Copy link
Member

nicoddemus commented Jun 24, 2022

Sorry I should have mentioned, but mypy supports sys.version_info checks. 👍

@PerchunPak
Copy link
Contributor Author

Sorry I should have mentioned, but mypy supports sys.version_info checks. 👍

Yes, but how about runtime? Yes unittest.mock doesn't have AsyncMock in py3.7, but mock have.

@nicoddemus
Copy link
Member

I'm OK with only supporting AsyncMock for Python 3.8+, or is this something you need in Python 3.7?

@PerchunPak
Copy link
Contributor Author

I'm OK with only supporting AsyncMock for Python 3.8+, or is this something you need in Python 3.7?

No, just you support both (unittest.mock and mock), it's strange that you breaking this support here.

@nicoddemus
Copy link
Member

Hmm an alternative would be then:

if sys.version_info[:2] >= (3, 8):
    AsyncMockType = unittest.mock.AsyncMock
else:
    AsyncMockType = mock.AsyncMock

at the top of the file, then use AsyncMockType in the annotation. If the above does not work, then AsyncMockType = Any for Python 3.7 is a good compromise.

@nicoddemus
Copy link
Member

Awesome, thanks a lot for the contribution and patience! 🙇

bors bot referenced this pull request in microsoft/Qcodes Jun 27, 2022
4310: Bump pytest-mock from 3.7.0 to 3.8.1 r=jenshnielsen a=dependabot[bot]

Bumps [pytest-mock](https://github.com/pytest-dev/pytest-mock) from 3.7.0 to 3.8.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/pytest-dev/pytest-mock/releases">pytest-mock's releases</a>.</em></p>
<blockquote>
<h2>v3.8.1</h2>
<h1>Releases</h1>
<h2>3.8.1 (2022-06-24)</h2>
<ul>
<li>Fix regression caused by an explicit <code>mock</code> dependency in the code (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/298">#298</a>).</li>
</ul>
<h2>3.8.0 (2022-06-24)</h2>
<ul>
<li>Add <code>MockerFixture.async_mock</code> method. Thanks <a href="https://github.com/PerchunPak"><code>`@​PerchunPak</code></a>` for the PR (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/296">#296</a>).</li>
</ul>
<h2>3.7.0 (2022-01-28)</h2>
<ul>
<li>Python 3.10 now officially supported.</li>
<li>Dropped support for Python 3.6.</li>
</ul>
<h2>3.6.1 (2021-05-06)</h2>
<ul>
<li>Fix <code>mocker.resetall()</code> when using <code>mocker.spy()</code> (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/237">#237</a>). Thanks <a href="https://github.com/blaxter"><code>`@​blaxter</code></a>` for the report and <a href="https://github.com/shadycuz"><code>`@​shadycuz</code></a>` for the PR.</li>
</ul>
<h2>3.6.0 (2021-04-24)</h2>
<ul>
<li>pytest-mock no longer supports Python 3.5.</li>
<li>Correct type annotations for <code>mocker.patch.object</code> to also include the string form.
Thanks <a href="https://github.com/plannigan"><code>`@​plannigan</code></a>` for the PR (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/235">#235</a>).</li>
<li><code>reset_all</code> now supports <code>return_value</code> and <code>side_effect</code> keyword arguments. Thanks <a href="https://github.com/alex-marty"><code>`@​alex-marty</code></a>` for the PR (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/214">#214</a>).</li>
</ul>
<h2>3.5.1 (2021-01-10)</h2>
<ul>
<li>Use <code>inspect.getattr_static</code> instead of resorting to <code>object.__getattribute__</code>
magic. This should better comply with objects which implement a custom descriptor
protocol. Thanks <a href="https://github.com/yesthesoup"><code>`@​yesthesoup</code></a>` for the PR (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/224">#224</a>).</li>
</ul>
<h2>3.5.0 (2021-01-04)</h2>
<ul>
<li>Now all patch functions will emit a warning instead of raising a <code>ValueError</code> when used
as a context-manager. Thanks <a href="https://github.com/iforapsy"><code>`@​iforapsy</code></a>` for the PR (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/221">#221</a>).</li>
<li>Additionally, <code>mocker.patch.context_manager</code> is available when the user intends to mock
a context manager (for example <code>threading.Lock</code> object), which will not emit that
warning.</li>
</ul>
<p>3.4.0 (2020-12-15)</p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst">pytest-mock's changelog</a>.</em></p>
<blockquote>
<h2>3.8.1 (2022-06-24)</h2>
<ul>
<li>Fix regression caused by an explicit <code>mock</code> dependency in the code (<code>[#298](https://github.com/pytest-dev/pytest-mock/issues/298)</code>_).</li>
</ul>
<p>.. _<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/298">#298</a>: <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/298">pytest-dev/pytest-mock#298</a></p>
<h2>3.8.0 (2022-06-24)</h2>
<ul>
<li>Add <code>MockerFixture.async_mock</code> method. Thanks <code>`@PerchunPak</code>_` for the PR (<code>[#296](https://github.com/pytest-dev/pytest-mock/issues/296)</code>_).</li>
</ul>
<p>.. _<a href="https://github.com/PerchunPak"><code>`@​PerchunPak</code></a>:` <a href="https://github.com/PerchunPak">https://github.com/PerchunPak</a>
.. _<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/296">#296</a>: <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/296">pytest-dev/pytest-mock#296</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/726143335742228d3a611448983979a50c8c29ac"><code>7261433</code></a> Fix regression due to 'mock' import</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/6ce9a78b9f68d4e4dfcd533e07fd88678cf8d052"><code>6ce9a78</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/297">#297</a> from nicoddemus/release-3.8.0</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/7eb90d8c0115357c4f2857b25c4bc57722d3a313"><code>7eb90d8</code></a> Release 3.8.0</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/7cc4cec0531b7751f4e73cbbb73009c169d3c531"><code>7cc4cec</code></a> Add <code>async_stub</code> method (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/296">#296</a>)</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/6030ef2b43bf5e23bde8d9a631a7c655e5106574"><code>6030ef2</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/294">#294</a> from pytest-dev/pre-commit-ci-update-config</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/95547ee9acf173fb4abff347475422ff972b90c3"><code>95547ee</code></a> [pre-commit.ci] pre-commit autoupdate</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/5b392f468630242a0eb55d93a70bd4d14f919443"><code>5b392f4</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/291">#291</a> from pytest-dev/pre-commit-ci-update-config</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/2321b621b7cc4efd205a3ebc70f00a4b246f802c"><code>2321b62</code></a> [pre-commit.ci] auto fixes from pre-commit.com hooks</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/951628e8c7f04053c91e95a690491634f85feed0"><code>951628e</code></a> [pre-commit.ci] pre-commit autoupdate</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/3394e1162842567d9aa7ae0a2f208acbe8ba3299"><code>3394e11</code></a> Fix docs badge</li>
<li>Additional commits viewable in <a href="https://github.com/pytest-dev/pytest-mock/compare/v3.7.0...v3.8.1">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pytest-mock&package-manager=pip&previous-version=3.7.0&new-version=3.8.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

You can trigger a rebase of this PR by commenting ``@dependabot` rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- ``@dependabot` rebase` will rebase this PR
- ``@dependabot` recreate` will recreate this PR, overwriting any edits that have been made to it
- ``@dependabot` merge` will merge this PR after your CI passes on it
- ``@dependabot` squash and merge` will squash and merge this PR after your CI passes on it
- ``@dependabot` cancel merge` will cancel a previously requested merge and block automerging
- ``@dependabot` reopen` will reopen this PR if it is closed
- ``@dependabot` close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- ``@dependabot` ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- ``@dependabot` ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- ``@dependabot` ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
bors bot referenced this pull request in microsoft/Qcodes Sep 29, 2022
4662: Update pytest-mock requirement from ~=3.8.2 to ~=3.9.0 r=jenshnielsen a=dependabot[bot]

Updates the requirements on [pytest-mock](https://github.com/pytest-dev/pytest-mock) to permit the latest version.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/pytest-dev/pytest-mock/releases">pytest-mock's releases</a>.</em></p>
<blockquote>
<h2>v3.9.0</h2>
<h1>Releases</h1>
<h2>3.9.0 (2022-09-28)</h2>
<ul>
<li>Expose <code>NonCallableMagicMock</code> via the <code>mocker</code> fixture (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/318">#318</a>).</li>
</ul>
<h2>3.8.2 (2022-07-05)</h2>
<ul>
<li>Fixed <code>AsyncMock</code> support for Python 3.7+ in <code>mocker.async_stub</code> (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/302">#302</a>).</li>
</ul>
<h2>3.8.1 (2022-06-24)</h2>
<ul>
<li>Fixed regression caused by an explicit <code>mock</code> dependency in the code (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/298">#298</a>).</li>
</ul>
<h2>3.8.0 (2022-06-24)</h2>
<ul>
<li>Add <code>MockerFixture.async_mock</code> method. Thanks <a href="https://github.com/PerchunPak"><code>`@​PerchunPak</code></a>` for the PR (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/296">#296</a>).</li>
</ul>
<h2>3.7.0 (2022-01-28)</h2>
<ul>
<li>Python 3.10 now officially supported.</li>
<li>Dropped support for Python 3.6.</li>
</ul>
<h2>3.6.1 (2021-05-06)</h2>
<ul>
<li>Fix <code>mocker.resetall()</code> when using <code>mocker.spy()</code> (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/237">#237</a>). Thanks <a href="https://github.com/blaxter"><code>`@​blaxter</code></a>` for the report and <a href="https://github.com/shadycuz"><code>`@​shadycuz</code></a>` for the PR.</li>
</ul>
<h2>3.6.0 (2021-04-24)</h2>
<ul>
<li>pytest-mock no longer supports Python 3.5.</li>
<li>Correct type annotations for <code>mocker.patch.object</code> to also include the string form.
Thanks <a href="https://github.com/plannigan"><code>`@​plannigan</code></a>` for the PR (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/235">#235</a>).</li>
<li><code>reset_all</code> now supports <code>return_value</code> and <code>side_effect</code> keyword arguments. Thanks <a href="https://github.com/alex-marty"><code>`@​alex-marty</code></a>` for the PR (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/214">#214</a>).</li>
</ul>
<h2>3.5.1 (2021-01-10)</h2>
<ul>
<li>Use <code>inspect.getattr_static</code> instead of resorting to <code>object.__getattribute__</code>
magic. This should better comply with objects which implement a custom descriptor
protocol. Thanks <a href="https://github.com/yesthesoup"><code>`@​yesthesoup</code></a>` for the PR (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/224">#224</a>).</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst">pytest-mock's changelog</a>.</em></p>
<blockquote>
<h2>3.9.0 (2022-09-28)</h2>
<ul>
<li>Expose <code>NonCallableMagicMock</code> via the <code>mocker</code> fixture (<code>[#318](https://github.com/pytest-dev/pytest-mock/issues/318)</code>_).</li>
</ul>
<p>.. _<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/318">#318</a>: <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/318">pytest-dev/pytest-mock#318</a></p>
<h2>3.8.2 (2022-07-05)</h2>
<ul>
<li>Fixed <code>AsyncMock</code> support for Python 3.7+ in <code>mocker.async_stub</code> (<code>[#302](https://github.com/pytest-dev/pytest-mock/issues/302)</code>_).</li>
</ul>
<p>.. _<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/302">#302</a>: <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/302">pytest-dev/pytest-mock#302</a></p>
<h2>3.8.1 (2022-06-24)</h2>
<ul>
<li>Fixed regression caused by an explicit <code>mock</code> dependency in the code (<code>[#298](https://github.com/pytest-dev/pytest-mock/issues/298)</code>_).</li>
</ul>
<p>.. _<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/298">#298</a>: <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/298">pytest-dev/pytest-mock#298</a></p>
<h2>3.8.0 (2022-06-24)</h2>
<ul>
<li>Add <code>MockerFixture.async_mock</code> method. Thanks <code>`@PerchunPak</code>_` for the PR (<code>[#296](https://github.com/pytest-dev/pytest-mock/issues/296)</code>_).</li>
</ul>
<p>.. _<a href="https://github.com/PerchunPak"><code>`@​PerchunPak</code></a>:` <a href="https://github.com/PerchunPak">https://github.com/PerchunPak</a>
.. _<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/296">#296</a>: <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/296">pytest-dev/pytest-mock#296</a></p>
<h2>3.7.0 (2022-01-28)</h2>
<ul>
<li>Python 3.10 now officially supported.</li>
<li>Dropped support for Python 3.6.</li>
</ul>
<h2>3.6.1 (2021-05-06)</h2>
<ul>
<li>Fix <code>mocker.resetall()</code> when using <code>mocker.spy()</code> (<code>[#237](https://github.com/pytest-dev/pytest-mock/issues/237)</code><em>). Thanks <code>`@blaxter</code></em>` for the report and <code>`@shadycuz</code>_` for the PR.</li>
</ul>
<p>.. _<a href="https://github.com/blaxter"><code>`@​blaxter</code></a>:` <a href="https://github.com/blaxter">https://github.com/blaxter</a>
.. _<a href="https://github.com/shadycuz"><code>`@​shadycuz</code></a>:` <a href="https://github.com/shadycuz">https://github.com/shadycuz</a>
.. _<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/237">#237</a>: <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/237">pytest-dev/pytest-mock#237</a></p>
<h2>3.6.0 (2021-04-24)</h2>
<ul>
<li>
<p>pytest-mock no longer supports Python 3.5.</p>
</li>
<li>
<p>Correct type annotations for <code>mocker.patch.object</code> to also include the string form.</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/64a34f64215d779dc0384acc3cdd5a164544a60a"><code>64a34f6</code></a> Update CHANGELOG for 3.9.0</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/4e31630aad7dca66258f232e6b62754dadd79f2b"><code>4e31630</code></a> Add test for NonCallableMagicMock</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/247b9d46e6fdfc696257c4daade9c08a195c45aa"><code>247b9d4</code></a> Expose NonCallableMagicMock in MockerFixture</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/0fd7fea3eece2e2dd09affeed39f0e3a50295f0d"><code>0fd7fea</code></a> Update link to notes about usage as context manager (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/313">#313</a>)</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/903b97283d1c8271596d748a9a8eef5038f96bb6"><code>903b972</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/311">#311</a> from pytest-dev/pre-commit-ci-update-config</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/a5a33ac9461e469736ed0d2ceae135f2cfb3fad0"><code>a5a33ac</code></a> [pre-commit.ci] pre-commit autoupdate</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/d01b267622b8ae21f977115edc624638da0f2508"><code>d01b267</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/309">#309</a> from pytest-dev/pre-commit-ci-update-config</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/736f2ab0caa4a51544627773818d1ef4822ab31c"><code>736f2ab</code></a> [pre-commit.ci] pre-commit autoupdate</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/59b60cb85116016e2e5e458d00b8ca3c5b267178"><code>59b60cb</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/308">#308</a> from juliangilbey/add-static-dir</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/305e0829c4100d1316dd30e91d978e56602cf893"><code>305e082</code></a> Add docs/_static directory to allow sphinx-build to work without warnings</li>
<li>Additional commits viewable in <a href="https://github.com/pytest-dev/pytest-mock/compare/v3.8.2...v3.9.0">compare view</a></li>
</ul>
</details>
<br />


You can trigger a rebase of this PR by commenting ``@dependabot` rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- ``@dependabot` rebase` will rebase this PR
- ``@dependabot` recreate` will recreate this PR, overwriting any edits that have been made to it
- ``@dependabot` merge` will merge this PR after your CI passes on it
- ``@dependabot` squash and merge` will squash and merge this PR after your CI passes on it
- ``@dependabot` cancel merge` will cancel a previously requested merge and block automerging
- ``@dependabot` reopen` will reopen this PR if it is closed
- ``@dependabot` close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- ``@dependabot` ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- ``@dependabot` ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- ``@dependabot` ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>

4663: Update pytest-cov requirement from ~=3.0.0 to ~=4.0.0 r=jenshnielsen a=dependabot[bot]

Updates the requirements on [pytest-cov](https://github.com/pytest-dev/pytest-cov) to permit the latest version.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst">pytest-cov's changelog</a>.</em></p>
<blockquote>
<h2>4.0.0 (2022-09-28)</h2>
<p><strong>Note that this release drops support for multiprocessing.</strong></p>
<ul>
<li>
<p><code>--cov-fail-under</code> no longer causes <code>pytest --collect-only</code> to fail
Contributed by Zac Hatfield-Dodds in <code>[#511](pytest-dev/pytest-cov#511) &lt;https://github.com/pytest-dev/pytest-cov/pull/511&gt;</code>_.</p>
</li>
<li>
<p>Dropped support for multiprocessing (mostly because <code>issue 82408 &lt;https://github.com/python/cpython/issues/82408&gt;</code>_). This feature was
mostly working but very broken in certain scenarios and made the test suite very flaky and slow.</p>
<p>There is builtin multiprocessing support in coverage and you can migrate to that. All you need is this in your
<code>.coveragerc</code>::</p>
<p>[run]
concurrency = multiprocessing
parallel = true
sigterm = true</p>
</li>
<li>
<p>Fixed deprecation in <code>setup.py</code> by trying to import setuptools before distutils.
Contributed by Ben Greiner in <code>[#545](pytest-dev/pytest-cov#545) &lt;https://github.com/pytest-dev/pytest-cov/pull/545&gt;</code>_.</p>
</li>
<li>
<p>Removed undesirable new lines that were displayed while reporting was disabled.
Contributed by Delgan in <code>[#540](pytest-dev/pytest-cov#540) &lt;https://github.com/pytest-dev/pytest-cov/pull/540&gt;</code>_.</p>
</li>
<li>
<p>Documentation fixes.
Contributed by Andre Brisco in <code>[#543](pytest-dev/pytest-cov#543) &lt;https://github.com/pytest-dev/pytest-cov/pull/543&gt;</code>_
and Colin O'Dell in <code>[#525](pytest-dev/pytest-cov#525) &lt;https://github.com/pytest-dev/pytest-cov/pull/525&gt;</code>_.</p>
</li>
<li>
<p>Added support for LCOV output format via <code>--cov-report=lcov</code>. Only works with coverage 6.3+.
Contributed by Christian Fetzer in <code>[#536](pytest-dev/pytest-cov#536) &lt;https://github.com/pytest-dev/pytest-cov/issues/536&gt;</code>_.</p>
</li>
<li>
<p>Modernized pytest hook implementation.
Contributed by Bruno Oliveira in <code>[#549](pytest-dev/pytest-cov#549) &lt;https://github.com/pytest-dev/pytest-cov/pull/549&gt;</code>_
and Ronny Pfannschmidt in <code>[#550](pytest-dev/pytest-cov#550) &lt;https://github.com/pytest-dev/pytest-cov/pull/550&gt;</code>_.</p>
</li>
</ul>
<h2>3.0.0 (2021-10-04)</h2>
<p><strong>Note that this release drops support for Python 2.7 and Python 3.5.</strong></p>
<ul>
<li>Added support for Python 3.10 and updated various test dependencies.
Contributed by Hugo van Kemenade in
<code>[#500](pytest-dev/pytest-cov#500) &lt;https://github.com/pytest-dev/pytest-cov/pull/500&gt;</code>_.</li>
<li>Switched from Travis CI to GitHub Actions. Contributed by Hugo van Kemenade in
<code>[#494](pytest-dev/pytest-cov#494) &lt;https://github.com/pytest-dev/pytest-cov/pull/494&gt;</code>_ and
<code>[#495](pytest-dev/pytest-cov#495) &lt;https://github.com/pytest-dev/pytest-cov/pull/495&gt;</code>_.</li>
<li>Add a <code>--cov-reset</code> CLI option.
Contributed by Danilo Šegan in
<code>[#459](pytest-dev/pytest-cov#459) &lt;https://github.com/pytest-dev/pytest-cov/pull/459&gt;</code>_.</li>
<li>Improved validation of <code>--cov-fail-under</code> CLI option.
Contributed by ... Ronny Pfannschmidt's desire for skark in
<code>[#480](pytest-dev/pytest-cov#480) &lt;https://github.com/pytest-dev/pytest-cov/pull/480&gt;</code>_.</li>
<li>Dropped Python 2.7 support.</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/pytest-dev/pytest-cov/commit/28db055bebbf3ee016a2144c8b69dd7b80b48cc5"><code>28db055</code></a> Bump version: 3.0.0 → 4.0.0</li>
<li><a href="https://github.com/pytest-dev/pytest-cov/commit/57e9354a86f658556fe6f15f07625c4b9a9ddf53"><code>57e9354</code></a> Really update the changelog.</li>
<li><a href="https://github.com/pytest-dev/pytest-cov/commit/56b810b91c9ae15d1462633c6a8a1b522ebf8e65"><code>56b810b</code></a> Update chagelog.</li>
<li><a href="https://github.com/pytest-dev/pytest-cov/commit/f7fced579e36b72b57e14768026467e4c4511a40"><code>f7fced5</code></a> Add support for LCOV output</li>
<li><a href="https://github.com/pytest-dev/pytest-cov/commit/1211d3134bb74abb7b00c3c2209091aaab440417"><code>1211d31</code></a> Fix flake8 error</li>
<li><a href="https://github.com/pytest-dev/pytest-cov/commit/b077753f5d9d200815fe500d0ef23e306784e65b"><code>b077753</code></a> Use modern approach to specify hook options</li>
<li><a href="https://github.com/pytest-dev/pytest-cov/commit/00713b3fec90cb8c98a9e4bfb3212e574c08e67b"><code>00713b3</code></a> removed incorrect docs on <code>data_file</code>.</li>
<li><a href="https://github.com/pytest-dev/pytest-cov/commit/b3dda36fddd3ca75689bb3645cd320aa8392aaf3"><code>b3dda36</code></a> Improve workflow with a collecting status check. (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-cov/issues/548">#548</a>)</li>
<li><a href="https://github.com/pytest-dev/pytest-cov/commit/218419f665229d61356f1eea3ddc8e18aa21f87c"><code>218419f</code></a> Prevent undesirable new lines to be displayed when report is disabled</li>
<li><a href="https://github.com/pytest-dev/pytest-cov/commit/60b73ec673c60942a3cf052ee8a1fdc442840558"><code>60b73ec</code></a> migrate build command from distutils to setuptools</li>
<li>Additional commits viewable in <a href="https://github.com/pytest-dev/pytest-cov/compare/v3.0.0...v4.0.0">compare view</a></li>
</ul>
</details>
<br />


You can trigger a rebase of this PR by commenting ``@dependabot` rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- ``@dependabot` rebase` will rebase this PR
- ``@dependabot` recreate` will recreate this PR, overwriting any edits that have been made to it
- ``@dependabot` merge` will merge this PR after your CI passes on it
- ``@dependabot` squash and merge` will squash and merge this PR after your CI passes on it
- ``@dependabot` cancel merge` will cancel a previously requested merge and block automerging
- ``@dependabot` reopen` will reopen this PR if it is closed
- ``@dependabot` close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- ``@dependabot` ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- ``@dependabot` ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- ``@dependabot` ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
bors bot referenced this pull request in microsoft/Qcodes Oct 6, 2022
4696: Update pytest-mock requirement from ~=3.9.0 to ~=3.10.0 r=jenshnielsen a=dependabot[bot]

Updates the requirements on [pytest-mock](https://github.com/pytest-dev/pytest-mock) to permit the latest version.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/pytest-dev/pytest-mock/releases">pytest-mock's releases</a>.</em></p>
<blockquote>
<h2>v3.10.0</h2>
<ul>
<li>Added new <code>mocker.stop(m)</code> method to stop specific <code>mocker.patch</code> or <code>mocker.spy</code> calls (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/319">#319</a>).</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst">pytest-mock's changelog</a>.</em></p>
<blockquote>
<h2>3.10.0 (2022-10-05)</h2>
<ul>
<li>Added new <code>mocker.stop(m)</code> method to stop specific <code>mocker.patch</code> or <code>mocker.spy</code> calls (<code>[#319](https://github.com/pytest-dev/pytest-mock/issues/319)</code>_).</li>
</ul>
<p>.. _<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/319">#319</a>: <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/319">pytest-dev/pytest-mock#319</a></p>
<h2>3.9.0 (2022-09-28)</h2>
<ul>
<li>Expose <code>NonCallableMagicMock</code> via the <code>mocker</code> fixture (<code>[#318](https://github.com/pytest-dev/pytest-mock/issues/318)</code>_).</li>
</ul>
<p>.. _<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/318">#318</a>: <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/318">pytest-dev/pytest-mock#318</a></p>
<h2>3.8.2 (2022-07-05)</h2>
<ul>
<li>Fixed <code>AsyncMock</code> support for Python 3.7+ in <code>mocker.async_stub</code> (<code>[#302](https://github.com/pytest-dev/pytest-mock/issues/302)</code>_).</li>
</ul>
<p>.. _<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/302">#302</a>: <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/302">pytest-dev/pytest-mock#302</a></p>
<h2>3.8.1 (2022-06-24)</h2>
<ul>
<li>Fixed regression caused by an explicit <code>mock</code> dependency in the code (<code>[#298](https://github.com/pytest-dev/pytest-mock/issues/298)</code>_).</li>
</ul>
<p>.. _<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/298">#298</a>: <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/298">pytest-dev/pytest-mock#298</a></p>
<h2>3.8.0 (2022-06-24)</h2>
<ul>
<li>Add <code>MockerFixture.async_mock</code> method. Thanks <code>`@PerchunPak</code>_` for the PR (<code>[#296](https://github.com/pytest-dev/pytest-mock/issues/296)</code>_).</li>
</ul>
<p>.. _<a href="https://github.com/PerchunPak"><code>`@​PerchunPak</code></a>:` <a href="https://github.com/PerchunPak">https://github.com/PerchunPak</a>
.. _<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/296">#296</a>: <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/296">pytest-dev/pytest-mock#296</a></p>
<h2>3.7.0 (2022-01-28)</h2>
<ul>
<li>Python 3.10 now officially supported.</li>
<li>Dropped support for Python 3.6.</li>
</ul>
<h2>3.6.1 (2021-05-06)</h2>
<ul>
<li>Fix <code>mocker.resetall()</code> when using <code>mocker.spy()</code> (<code>[#237](https://github.com/pytest-dev/pytest-mock/issues/237)</code><em>). Thanks <code>`@blaxter</code></em>` for the report and <code>`@shadycuz</code>_` for the PR.</li>
</ul>
<p>.. _<a href="https://github.com/blaxter"><code>`@​blaxter</code></a>:` <a href="https://github.com/blaxter">https://github.com/blaxter</a>
.. _<a href="https://github.com/shadycuz"><code>`@​shadycuz</code></a>:` <a href="https://github.com/shadycuz">https://github.com/shadycuz</a>
.. _<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/237">#237</a>: <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/237">pytest-dev/pytest-mock#237</a></p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/6c03dfd4240de4a178bab67c0a32fba28d8bcf91"><code>6c03dfd</code></a> Release 3.10.0</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/fbb5039d7269c34705a7dab39f2a2cea92111859"><code>fbb5039</code></a> Implement selective un-spying and un-patching (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/319">#319</a>)</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/a1c7421daad8d6bc433db28a5df1b01bd0a93222"><code>a1c7421</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/321">#321</a>)</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/4f2703c94ce4838befc1ffef1c3bdca4ac1eccf2"><code>4f2703c</code></a> Add Python 3.11 support (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/320">#320</a>)</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/1e2001fb78aeb42ae068cc0c17075016d47fa1a7"><code>1e2001f</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/318">#318</a> from willfrey/patch-2</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/798f07e99773b05d284be6f4cb32e79d532965b5"><code>798f07e</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/317">#317</a>)</li>
<li>See full diff in <a href="https://github.com/pytest-dev/pytest-mock/compare/v3.9.0...v3.10.0">compare view</a></li>
</ul>
</details>
<br />


You can trigger a rebase of this PR by commenting ``@dependabot` rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- ``@dependabot` rebase` will rebase this PR
- ``@dependabot` recreate` will recreate this PR, overwriting any edits that have been made to it
- ``@dependabot` merge` will merge this PR after your CI passes on it
- ``@dependabot` squash and merge` will squash and merge this PR after your CI passes on it
- ``@dependabot` cancel merge` will cancel a previously requested merge and block automerging
- ``@dependabot` reopen` will reopen this PR if it is closed
- ``@dependabot` close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- ``@dependabot` ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- ``@dependabot` ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- ``@dependabot` ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
dciborow referenced this pull request in microsoft/python-package-template Mar 13, 2023
Updates the requirements on
[pytest-mock](https://github.com/pytest-dev/pytest-mock) to permit the
latest version.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/pytest-dev/pytest-mock/releases">pytest-mock's
releases</a>.</em></p>
<blockquote>
<h2>v3.10.0</h2>
<ul>
<li>Added new <code>mocker.stop(m)</code> method to stop specific
<code>mocker.patch</code> or <code>mocker.spy</code> calls (<a
href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/319">#319</a>).</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst">pytest-mock's
changelog</a>.</em></p>
<blockquote>
<h2>3.10.0 (2022-10-05)</h2>
<ul>
<li>Added new <code>mocker.stop(m)</code> method to stop specific
<code>mocker.patch</code> or <code>mocker.spy</code> calls
(<code>[#319](https://github.com/pytest-dev/pytest-mock/issues/319)</code>_).</li>
</ul>
<p>.. _<a
href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/319">#319</a>:
<a
href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/319">pytest-dev/pytest-mock#319</a></p>
<h2>3.9.0 (2022-09-28)</h2>
<ul>
<li>Expose <code>NonCallableMagicMock</code> via the <code>mocker</code>
fixture
(<code>[#318](https://github.com/pytest-dev/pytest-mock/issues/318)</code>_).</li>
</ul>
<p>.. _<a
href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/318">#318</a>:
<a
href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/318">pytest-dev/pytest-mock#318</a></p>
<h2>3.8.2 (2022-07-05)</h2>
<ul>
<li>Fixed <code>AsyncMock</code> support for Python 3.7+ in
<code>mocker.async_stub</code>
(<code>[#302](https://github.com/pytest-dev/pytest-mock/issues/302)</code>_).</li>
</ul>
<p>.. _<a
href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/302">#302</a>:
<a
href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/302">pytest-dev/pytest-mock#302</a></p>
<h2>3.8.1 (2022-06-24)</h2>
<ul>
<li>Fixed regression caused by an explicit <code>mock</code> dependency
in the code
(<code>[#298](https://github.com/pytest-dev/pytest-mock/issues/298)</code>_).</li>
</ul>
<p>.. _<a
href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/298">#298</a>:
<a
href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/298">pytest-dev/pytest-mock#298</a></p>
<h2>3.8.0 (2022-06-24)</h2>
<ul>
<li>Add <code>MockerFixture.async_mock</code> method. Thanks
<code>@PerchunPak</code>_ for the PR
(<code>[#296](https://github.com/pytest-dev/pytest-mock/issues/296)</code>_).</li>
</ul>
<p>.. _<a
href="https://github.com/PerchunPak"><code>@​PerchunPak</code></a>: <a
href="https://github.com/PerchunPak">https://github.com/PerchunPak</a>
.. _<a
href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/296">#296</a>:
<a
href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/296">pytest-dev/pytest-mock#296</a></p>
<h2>3.7.0 (2022-01-28)</h2>
<ul>
<li>Python 3.10 now officially supported.</li>
<li>Dropped support for Python 3.6.</li>
</ul>
<h2>3.6.1 (2021-05-06)</h2>
<ul>
<li>Fix <code>mocker.resetall()</code> when using
<code>mocker.spy()</code>
(<code>[#237](https://github.com/pytest-dev/pytest-mock/issues/237)</code><em>).
Thanks <code>@blaxter</code></em> for the report and
<code>@shadycuz</code>_ for the PR.</li>
</ul>
<p>.. _<a href="https://github.com/blaxter"><code>@​blaxter</code></a>:
<a href="https://github.com/blaxter">https://github.com/blaxter</a>
.. _<a href="https://github.com/shadycuz"><code>@​shadycuz</code></a>:
<a href="https://github.com/shadycuz">https://github.com/shadycuz</a>
.. _<a
href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/237">#237</a>:
<a
href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/237">pytest-dev/pytest-mock#237</a></p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/pytest-dev/pytest-mock/commit/6c03dfd4240de4a178bab67c0a32fba28d8bcf91"><code>6c03dfd</code></a>
Release 3.10.0</li>
<li><a
href="https://github.com/pytest-dev/pytest-mock/commit/fbb5039d7269c34705a7dab39f2a2cea92111859"><code>fbb5039</code></a>
Implement selective un-spying and un-patching (<a
href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/319">#319</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-mock/commit/a1c7421daad8d6bc433db28a5df1b01bd0a93222"><code>a1c7421</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/321">#321</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-mock/commit/4f2703c94ce4838befc1ffef1c3bdca4ac1eccf2"><code>4f2703c</code></a>
Add Python 3.11 support (<a
href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/320">#320</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-mock/commit/1e2001fb78aeb42ae068cc0c17075016d47fa1a7"><code>1e2001f</code></a>
Merge pull request <a
href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/318">#318</a>
from willfrey/patch-2</li>
<li><a
href="https://github.com/pytest-dev/pytest-mock/commit/64a34f64215d779dc0384acc3cdd5a164544a60a"><code>64a34f6</code></a>
Update CHANGELOG for 3.9.0</li>
<li><a
href="https://github.com/pytest-dev/pytest-mock/commit/4e31630aad7dca66258f232e6b62754dadd79f2b"><code>4e31630</code></a>
Add test for NonCallableMagicMock</li>
<li><a
href="https://github.com/pytest-dev/pytest-mock/commit/798f07e99773b05d284be6f4cb32e79d532965b5"><code>798f07e</code></a>
[pre-commit.ci] pre-commit autoupdate (<a
href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/317">#317</a>)</li>
<li><a
href="https://github.com/pytest-dev/pytest-mock/commit/247b9d46e6fdfc696257c4daade9c08a195c45aa"><code>247b9d4</code></a>
Expose NonCallableMagicMock in MockerFixture</li>
<li><a
href="https://github.com/pytest-dev/pytest-mock/commit/0fd7fea3eece2e2dd09affeed39f0e3a50295f0d"><code>0fd7fea</code></a>
Update link to notes about usage as context manager (<a
href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/313">#313</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/pytest-dev/pytest-mock/compare/v0.1.0...v3.10.0">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daniel Ciborowski <dciborow@microsoft.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants