Skip to content

Nose is deprecated, move to pytest #756

@jsmnbom

Description

@jsmnbom

The Nose project that we're currently using for tests have been "deprecated" for years now.

Nose has been in maintenance mode for the past several years and will likely cease without a new person/team to take over maintainership. New projects should consider using Nose2, py.test, or just plain unittest/unittest2.
https://nose.readthedocs.io/en/latest/#note-to-users

After debating in dev group, it's been decided to switch to pytest

Progress

(not necessarily in order of importance or chronology)

  • Add pytest to requirements
  • Teach travis to use it
  • Remove nose and plugins from requirements
  • Port travis folding stuff
  • Port trivial tests
  • Port more advanced tests
  • Port test_bot
  • Port test_official
  • Refractor test_updater (split into handler tests)
  • Figure out if we're missing any testcases and write them if possible
  • Update contributing guide

Missing/lacking tests noticed so far

(documenting here so we hopefully don't forget, just check the of or remove if they turn out be just be elsewhere in the test suite

  • No send_contact tests
  • Many tests' de_json (and family) tests are only testing a subset of arguments (for example Chat which only checks id, title, type, and all_members_are_administrators)
    • test_chat
  • CallbackQuery
  • No tests where fallback of ConversationHandler is used

Metadata

Metadata

Assignees

No one assigned

    Labels

    ⚙️ testsaffected functionality: tests

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      pFad - Phonifier reborn

      Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

      Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


      Alternative Proxies:

      Alternative Proxy

      pFad Proxy

      pFad v3 Proxy

      pFad v4 Proxy