


'''simple docstring'''
# tests directory-specific settings - this file is run automatically
# by pytest before any tests are run

import sys
import warnings
from os.path import abspath, dirname, join


# allow having multiple repository checkouts and not needing to remember to rerun
# 'pip install -e .[dev]' when switching between checkouts and running tests.
UpperCamelCase__    					=      abspath(join(dirname(dirname(dirname(__file__))), '''src'''))
sys.path.insert(1, git_repo_path)


# silence FutureWarning warnings in tests since often we can't act on them until
# they become normal warnings - i.e. the tests still need to test the current functionality
warnings.simplefilter(action='''ignore''', category=FutureWarning)





def 					a__       (					lowerCAmelCase__						)    ->	Optional[int]:
    from transformers.testing_utils import pytest_addoption_shared

    pytest_addoption_shared(lowerCAmelCase__						)







def 					a__       (					lowerCAmelCase__						)    ->	Dict:
    from transformers.testing_utils import pytest_terminal_summary_main

    UpperCAmelCase__			:		Optional[int]													=				terminalreporter.config.getoption('''--make-reports'''						)
    if make_reports:
        pytest_terminal_summary_main(lowerCAmelCase__  ,					id=lowerCAmelCase__						)




'''simple docstring'''
def 					a__       (					lowerCAmelCase__						)    ->	int:
    if a < 0:
        raise ValueError('''Input value must be a positive integer'''						)
    elif isinstance(lowerCAmelCase__  ,					lowerCAmelCase__						):
        raise TypeError('''Input value must be a \'int\' type'''						)
    return bin(lowerCAmelCase__						).count('''1'''						)


if __name__ == "__main__":
  import doctest

  doctest.testmod()
