py2docfx 0.1.15rc2025477__py3-none-any.whl → 0.1.16.dev2051338__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- py2docfx/docfx_yaml/process_doctree.py +21 -34
- py2docfx/docfx_yaml/tests/test_method_arguments.py +1 -7
- py2docfx/docfx_yaml/tests/test_process_doctree.py +120 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_core_metadata.py +21 -5
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/_msvccompiler.py +13 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/ccompiler.py +5 -2
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/build.py +1 -6
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/build_clib.py +1 -9
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/build_ext.py +1 -8
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/check.py +1 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/config.py +0 -2
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/install.py +8 -17
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compat/numpy.py +2 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compilers/C/base.py +8 -5
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compilers/C/msvc.py +1 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compilers/C/unix.py +15 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/dist.py +2 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/sysconfig.py +0 -10
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/tests/test_build_ext.py +60 -5
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/unixccompiler.py +6 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/util.py +7 -6
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_normalization.py +29 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/__init__.py +1 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/_bdist_wheel.py +613 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/_setuptools_logging.py +2 -2
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/bdist_wheel.py +25 -594
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/cli/__init__.py +6 -6
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/cli/convert.py +282 -223
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/macosx_libfile.py +22 -9
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/metadata.py +16 -13
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/util.py +0 -9
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/wheelfile.py +40 -9
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/bdist_wheel.py +6 -2
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/config/_apply_pyprojecttoml.py +49 -11
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/config/_validate_pyproject/extra_validations.py +31 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_validations.py +222 -129
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/config/_validate_pyproject/formats.py +30 -3
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/dist.py +168 -51
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/msvc.py +12 -3
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/config/test_apply_pyprojecttoml.py +246 -13
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/config/test_setupcfg.py +42 -29
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/integration/test_pip_install_sdist.py +1 -1
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_bdist_wheel.py +93 -8
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_build_meta.py +17 -4
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_core_metadata.py +45 -0
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_egg_info.py +24 -4
- py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_sdist.py +13 -1
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/__init__.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/any_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/api_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/compiler/plugin_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/descriptor_database.py +22 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/descriptor_pb2.py +82 -35
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/duration_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/empty_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/field_mask_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/builder.py +4 -3
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/containers.py +13 -0
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/decoder.py +62 -115
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/python_edition_defaults.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/python_message.py +15 -18
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/testing_refleaks.py +4 -1
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/type_checkers.py +5 -0
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/well_known_types.py +3 -3
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/json_format.py +25 -9
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/message.py +26 -0
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/message_factory.py +0 -63
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/proto.py +38 -1
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/proto_text.py +129 -0
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/reflection.py +0 -49
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/runtime_version.py +3 -3
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/source_context_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/struct_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/symbol_database.py +0 -18
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/text_format.py +8 -3
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/timestamp_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/type_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/unknown_fields.py +3 -4
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/wrappers_pb2.py +4 -4
- py2docfx/venv/venv1/Lib/site-packages/msal/__init__.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/msal/application.py +51 -17
- py2docfx/venv/venv1/Lib/site-packages/msal/broker.py +18 -4
- py2docfx/venv/venv1/Lib/site-packages/msal/cloudshell.py +5 -1
- py2docfx/venv/venv1/Lib/site-packages/msal/managed_identity.py +5 -4
- py2docfx/venv/venv1/Lib/site-packages/msal/sku.py +6 -0
- py2docfx/venv/venv1/Lib/site-packages/msal/token_cache.py +31 -10
- py2docfx/venv/venv1/Lib/site-packages/msal_extensions/__init__.py +2 -3
- py2docfx/venv/venv1/Lib/site-packages/msal_extensions/cache_lock.py +4 -1
- py2docfx/venv/venv1/Lib/site-packages/msal_extensions/filelock.py +62 -0
- py2docfx/venv/venv1/Lib/site-packages/msal_extensions/libsecret.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/msal_extensions/token_cache.py +7 -1
- py2docfx/venv/venv1/Lib/site-packages/pyasn1_modules/__init__.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_core_metadata.py +21 -5
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/_msvccompiler.py +13 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/ccompiler.py +5 -2
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/build.py +1 -6
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/build_clib.py +1 -9
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/build_ext.py +1 -8
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/check.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/config.py +0 -2
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/install.py +8 -17
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compat/numpy.py +2 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compilers/C/base.py +8 -5
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compilers/C/msvc.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compilers/C/unix.py +15 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/dist.py +2 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/sysconfig.py +0 -10
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/tests/test_build_ext.py +60 -5
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/unixccompiler.py +6 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/util.py +7 -6
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_normalization.py +29 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/__init__.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/_bdist_wheel.py +613 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/_setuptools_logging.py +2 -2
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/bdist_wheel.py +25 -594
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/cli/__init__.py +6 -6
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/cli/convert.py +282 -223
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/macosx_libfile.py +22 -9
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/metadata.py +16 -13
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/util.py +0 -9
- py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/wheelfile.py +40 -9
- py2docfx/venv/venv1/Lib/site-packages/setuptools/command/bdist_wheel.py +6 -2
- py2docfx/venv/venv1/Lib/site-packages/setuptools/config/_apply_pyprojecttoml.py +49 -11
- py2docfx/venv/venv1/Lib/site-packages/setuptools/config/_validate_pyproject/extra_validations.py +31 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_validations.py +222 -129
- py2docfx/venv/venv1/Lib/site-packages/setuptools/config/_validate_pyproject/formats.py +30 -3
- py2docfx/venv/venv1/Lib/site-packages/setuptools/dist.py +168 -51
- py2docfx/venv/venv1/Lib/site-packages/setuptools/msvc.py +12 -3
- py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/config/test_apply_pyprojecttoml.py +246 -13
- py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/config/test_setupcfg.py +42 -29
- py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/integration/test_pip_install_sdist.py +1 -1
- py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_bdist_wheel.py +93 -8
- py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_build_meta.py +17 -4
- py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_core_metadata.py +45 -0
- py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_egg_info.py +24 -4
- py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_sdist.py +13 -1
- py2docfx/venv/venv1/Lib/site-packages/typing_extensions.py +999 -74
- {py2docfx-0.1.15rc2025477.dist-info → py2docfx-0.1.16.dev2051338.dist-info}/METADATA +1 -1
- {py2docfx-0.1.15rc2025477.dist-info → py2docfx-0.1.16.dev2051338.dist-info}/RECORD +141 -596
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/__init__.py +0 -82
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/ado_consts.py +0 -283
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/adodbapi.py +0 -1153
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/apibase.py +0 -723
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/examples/db_print.py +0 -72
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/examples/db_table_names.py +0 -21
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/examples/xls_read.py +0 -41
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/examples/xls_write.py +0 -41
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/is64bit.py +0 -34
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/process_connect_string.py +0 -137
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/schema_table.py +0 -16
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/setup.py +0 -68
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/adodbapitest.py +0 -1547
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/adodbapitestconfig.py +0 -184
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/dbapi20.py +0 -879
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/is64bit.py +0 -34
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/setuptestframework.py +0 -98
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/test_adodbapi_dbapi20.py +0 -195
- py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/tryconnection.py +0 -30
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/_parameterized.py +0 -420
- py2docfx/venv/venv1/Lib/site-packages/google/protobuf/service.py +0 -213
- py2docfx/venv/venv1/Lib/site-packages/isapi/__init__.py +0 -39
- py2docfx/venv/venv1/Lib/site-packages/isapi/install.py +0 -809
- py2docfx/venv/venv1/Lib/site-packages/isapi/isapicon.py +0 -121
- py2docfx/venv/venv1/Lib/site-packages/isapi/samples/advanced.py +0 -218
- py2docfx/venv/venv1/Lib/site-packages/isapi/samples/redirector.py +0 -116
- py2docfx/venv/venv1/Lib/site-packages/isapi/samples/redirector_asynch.py +0 -85
- py2docfx/venv/venv1/Lib/site-packages/isapi/samples/redirector_with_filter.py +0 -162
- py2docfx/venv/venv1/Lib/site-packages/isapi/samples/test.py +0 -195
- py2docfx/venv/venv1/Lib/site-packages/isapi/simple.py +0 -73
- py2docfx/venv/venv1/Lib/site-packages/isapi/test/extension_simple.py +0 -114
- py2docfx/venv/venv1/Lib/site-packages/isapi/threaded_extension.py +0 -191
- py2docfx/venv/venv1/Lib/site-packages/portalocker/__about__.py +0 -6
- py2docfx/venv/venv1/Lib/site-packages/portalocker/__init__.py +0 -79
- py2docfx/venv/venv1/Lib/site-packages/portalocker/__main__.py +0 -122
- py2docfx/venv/venv1/Lib/site-packages/portalocker/constants.py +0 -59
- py2docfx/venv/venv1/Lib/site-packages/portalocker/exceptions.py +0 -27
- py2docfx/venv/venv1/Lib/site-packages/portalocker/portalocker.py +0 -154
- py2docfx/venv/venv1/Lib/site-packages/portalocker/redis.py +0 -236
- py2docfx/venv/venv1/Lib/site-packages/portalocker/utils.py +0 -569
- py2docfx/venv/venv1/Lib/site-packages/pythoncom.py +0 -4
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/basictimerapp.py +0 -258
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/customprint.py +0 -183
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/demoutils.py +0 -63
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/dlgappdemo.py +0 -51
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/dojobapp.py +0 -71
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/helloapp.py +0 -53
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/cmdserver.py +0 -113
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/createwin.py +0 -114
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/demoutils.py +0 -65
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/dibdemo.py +0 -73
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/dlgtest.py +0 -145
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/dyndlg.py +0 -104
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/fontdemo.py +0 -85
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/guidemo.py +0 -53
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/hiertest.py +0 -138
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/menutest.py +0 -13
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/objdoc.py +0 -57
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/demoutils.py +0 -63
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/flash.py +0 -95
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/msoffice.py +0 -159
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/ocxserialtest.py +0 -132
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/ocxtest.py +0 -243
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/webbrowser.py +0 -72
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/openGLDemo.py +0 -415
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/progressbar.py +0 -105
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/sliderdemo.py +0 -76
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/splittst.py +0 -79
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/threadedgui.py +0 -189
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/toolbar.py +0 -105
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/__init__.py +0 -3
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/__init__.py +0 -133
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/configui.py +0 -34
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/dbgcon.py +0 -31
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/dbgpyapp.py +0 -48
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/debugger.py +0 -1097
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/fail.py +0 -54
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/__init__.py +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/ideoptions.py +0 -136
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/list.py +0 -146
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/login.py +0 -155
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/status.py +0 -242
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/docking/DockingBar.py +0 -676
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/docking/__init__.py +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/__init__.py +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/app.py +0 -411
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/bitmap.py +0 -168
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/cmdline.py +0 -54
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/dbgcommands.py +0 -188
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/dlgappcore.py +0 -76
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/ModuleBrowser.py +0 -235
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/__init__.py +0 -105
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/color/__init__.py +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/color/coloreditor.py +0 -646
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/configui.py +0 -299
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/document.py +0 -379
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/editor.py +0 -511
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/frame.py +0 -74
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/template.py +0 -59
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/vss.py +0 -104
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/help.py +0 -173
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/interact.py +0 -995
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/intpyapp.py +0 -552
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/intpydde.py +0 -65
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/scriptutils.py +0 -684
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/sgrepmdi.py +0 -749
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/startup.py +0 -70
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/stdin.py +0 -172
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/toolmenu.py +0 -279
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/window.py +0 -14
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/winout.py +0 -589
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/AutoExpand.py +0 -95
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/AutoIndent.py +0 -536
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/CallTips.py +0 -216
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/FormatParagraph.py +0 -166
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/IdleHistory.py +0 -87
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/PyParse.py +0 -585
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/__init__.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/__init__.py +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/activex.py +0 -79
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/afxres.py +0 -501
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/dialog.py +0 -277
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/docview.py +0 -151
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/object.py +0 -66
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/thread.py +0 -25
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/window.py +0 -50
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/IDLEenvironment.py +0 -593
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/__init__.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/bindings.py +0 -180
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/config.py +0 -363
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/configui.py +0 -291
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/control.py +0 -565
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/document.py +0 -312
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/find.py +0 -511
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/formatter.py +0 -704
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/keycodes.py +0 -190
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/scintillacon.py +0 -3083
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/view.py +0 -841
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/TraceCollector.py +0 -79
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/__init__.py +0 -0
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/browseProjects.py +0 -323
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/browser.py +0 -494
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/hierlist.py +0 -353
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/regedit.py +0 -382
- py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/regpy.py +0 -80
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/BackupRead_BackupWrite.py +0 -119
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/BackupSeek_streamheaders.py +0 -137
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/CopyFileEx.py +0 -57
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/CreateFileTransacted_MiniVersion.py +0 -122
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/EvtFormatMessage.py +0 -83
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/EvtSubscribe_pull.py +0 -28
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/EvtSubscribe_push.py +0 -32
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/FileSecurityTest.py +0 -137
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/GetSaveFileName.py +0 -43
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/NetValidatePasswordPolicy.py +0 -127
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/OpenEncryptedFileRaw.py +0 -66
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/RegCreateKeyTransacted.py +0 -60
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/RegRestoreKey.py +0 -71
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/SystemParametersInfo.py +0 -210
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/c_extension/setup.py +0 -26
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/dde/ddeclient.py +0 -18
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/dde/ddeserver.py +0 -42
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/desktopmanager.py +0 -246
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/eventLogDemo.py +0 -143
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/getfilever.py +0 -33
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/mmapfile_demo.py +0 -101
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/pipes/cat.py +0 -17
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/pipes/runproc.py +0 -114
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/print_desktop.py +0 -113
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/rastest.py +0 -166
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/GetTokenInformation.py +0 -110
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/account_rights.py +0 -49
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/explicit_entries.py +0 -170
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/get_policy_info.py +0 -39
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/list_rights.py +0 -35
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/localized_names.py +0 -70
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/lsaregevent.py +0 -14
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/lsastore.py +0 -12
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/query_information.py +0 -25
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/regsave_sa.py +0 -61
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/regsecurity.py +0 -36
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sa_inherit.py +0 -8
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/security_enums.py +0 -336
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/set_file_audit.py +0 -106
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/set_file_owner.py +0 -73
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/set_policy_info.py +0 -25
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/setkernelobjectsecurity.py +0 -134
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/setnamedsecurityinfo.py +0 -131
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/setsecurityinfo.py +0 -131
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/setuserobjectsecurity.py +0 -102
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sspi/fetch_url.py +0 -158
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sspi/simple_auth.py +0 -72
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sspi/socket_server.py +0 -199
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sspi/validate_password.py +0 -41
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/service/nativePipeTestService.py +0 -63
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/service/pipeTestService.py +0 -185
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/service/pipeTestServiceClient.py +0 -158
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/service/serviceEvents.py +0 -98
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/timer_demo.py +0 -72
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32clipboardDemo.py +0 -155
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32clipboard_bitmapdemo.py +0 -117
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32comport_demo.py +0 -174
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32console_demo.py +0 -132
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32cred_demo.py +0 -82
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32fileDemo.py +0 -41
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_demo.py +0 -177
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_devicenotify.py +0 -106
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_dialog.py +0 -445
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_menu.py +0 -464
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_taskbar.py +0 -136
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32netdemo.py +0 -272
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32rcparser_demo.py +0 -86
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32servicedemo.py +0 -23
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32ts_logoff_disconnected.py +0 -25
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32wnet/testwnet.py +0 -123
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32wnet/winnetwk.py +0 -100
- py2docfx/venv/venv1/Lib/site-packages/win32/Demos/winprocess.py +0 -230
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/_win32verstamp_pywin32ctypes.py +0 -164
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/afxres.py +0 -8
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/commctrl.py +0 -1551
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/mmsystem.py +0 -956
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/netbios.py +0 -293
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/ntsecuritycon.py +0 -731
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/pywin32_bootstrap.py +0 -21
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/pywin32_testutil.py +0 -291
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/pywintypes.py +0 -124
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/rasutil.py +0 -40
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/regcheck.py +0 -161
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/regutil.py +0 -395
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/sspi.py +0 -413
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/sspicon.py +0 -477
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win2kras.py +0 -14
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32con.py +0 -5064
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32cryptcon.py +0 -1922
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32evtlogutil.py +0 -225
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32gui_struct.py +0 -957
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32inetcon.py +0 -1086
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32netcon.py +0 -627
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32pdhquery.py +0 -570
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32pdhutil.py +0 -212
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32rcparser.py +0 -674
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32serviceutil.py +0 -1073
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32timezone.py +0 -1201
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32traceutil.py +0 -59
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32verstamp.py +0 -235
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/winerror.py +0 -7362
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/winioctlcon.py +0 -1079
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/winnt.py +0 -1347
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/winperf.py +0 -236
- py2docfx/venv/venv1/Lib/site-packages/win32/lib/winxptheme.py +0 -8
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/ControlService.py +0 -594
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/VersionStamp/BrandProject.py +0 -97
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/VersionStamp/bulkstamp.py +0 -156
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/VersionStamp/vssutil.py +0 -201
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/backupEventLog.py +0 -46
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/h2py.py +0 -194
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/killProcName.py +0 -62
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/pywin32_postinstall.py +0 -733
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/pywin32_testall.py +0 -120
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/rasutil.py +0 -98
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/regsetup.py +0 -607
- py2docfx/venv/venv1/Lib/site-packages/win32/scripts/setup_d.py +0 -111
- py2docfx/venv/venv1/Lib/site-packages/win32/test/handles.py +0 -175
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_clipboard.py +0 -137
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_exceptions.py +0 -213
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_odbc.py +0 -264
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_pywintypes.py +0 -111
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_security.py +0 -166
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_sspi.py +0 -229
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32api.py +0 -273
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32clipboard.py +0 -59
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32cred.py +0 -91
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32crypt.py +0 -144
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32event.py +0 -119
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32file.py +0 -1096
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32gui.py +0 -227
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32guistruct.py +0 -333
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32inet.py +0 -108
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32net.py +0 -23
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32pipe.py +0 -148
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32print.py +0 -24
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32profile.py +0 -19
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32rcparser.py +0 -70
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32timezone.py +0 -16
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32trace.py +0 -366
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32ts.py +0 -19
- py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32wnet.py +0 -174
- py2docfx/venv/venv1/Lib/site-packages/win32/test/testall.py +0 -223
- py2docfx/venv/venv1/Lib/site-packages/win32/winxpgui.py +0 -13
- py2docfx/venv/venv1/Lib/site-packages/win32com/__init__.py +0 -134
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/CLSIDToClass.py +0 -60
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/__init__.py +0 -717
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/build.py +0 -771
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/combrowse.py +0 -604
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/connect.py +0 -48
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/dynamic.py +0 -699
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/gencache.py +0 -825
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/genpy.py +0 -1350
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/makepy.py +0 -453
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/selecttlb.py +0 -182
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/tlbrowse.py +0 -277
- py2docfx/venv/venv1/Lib/site-packages/win32com/client/util.py +0 -103
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/__init__.py +0 -0
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/connect.py +0 -96
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/dump_clipboard.py +0 -74
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/eventsApartmentThreaded.py +0 -98
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/eventsFreeThreaded.py +0 -92
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/excelAddin.py +0 -169
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/excelRTDServer.py +0 -434
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/iebutton.py +0 -214
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/ietoolbar.py +0 -368
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/outlookAddin.py +0 -135
- py2docfx/venv/venv1/Lib/site-packages/win32com/demos/trybag.py +0 -78
- py2docfx/venv/venv1/Lib/site-packages/win32com/makegw/__init__.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32com/makegw/makegw.py +0 -618
- py2docfx/venv/venv1/Lib/site-packages/win32com/makegw/makegwenum.py +0 -331
- py2docfx/venv/venv1/Lib/site-packages/win32com/makegw/makegwparse.py +0 -1017
- py2docfx/venv/venv1/Lib/site-packages/win32com/olectl.py +0 -70
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/__init__.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/connect.py +0 -85
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/dispatcher.py +0 -239
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/exception.py +0 -99
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/factory.py +0 -26
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/localserver.py +0 -53
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/policy.py +0 -803
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/register.py +0 -677
- py2docfx/venv/venv1/Lib/site-packages/win32com/server/util.py +0 -229
- py2docfx/venv/venv1/Lib/site-packages/win32com/servers/PythonTools.py +0 -47
- py2docfx/venv/venv1/Lib/site-packages/win32com/servers/__init__.py +0 -0
- py2docfx/venv/venv1/Lib/site-packages/win32com/servers/dictionary.py +0 -133
- py2docfx/venv/venv1/Lib/site-packages/win32com/servers/interp.py +0 -59
- py2docfx/venv/venv1/Lib/site-packages/win32com/servers/perfmon.py +0 -36
- py2docfx/venv/venv1/Lib/site-packages/win32com/servers/test_pycomtest.py +0 -181
- py2docfx/venv/venv1/Lib/site-packages/win32com/storagecon.py +0 -142
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/GenTestScripts.py +0 -95
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/__init__.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/daodump.py +0 -88
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/errorSemantics.py +0 -243
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/pippo_server.py +0 -96
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/policySemantics.py +0 -115
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testADOEvents.py +0 -100
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testAXScript.py +0 -44
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testAccess.py +0 -185
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testArrays.py +0 -99
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testClipboard.py +0 -169
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testCollections.py +0 -159
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testConversionErrors.py +0 -35
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testDCOM.py +0 -50
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testDates.py +0 -74
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testDictionary.py +0 -101
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testDynamic.py +0 -83
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testExchange.py +0 -121
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testExplorer.py +0 -139
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testGIT.py +0 -142
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testGatewayAddresses.py +0 -149
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testIterators.py +0 -140
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testMSOffice.py +0 -184
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testMSOfficeEvents.py +0 -138
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testMarshal.py +0 -160
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testPersist.py +0 -227
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testPippo.py +0 -80
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testPyComTest.py +0 -918
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testROT.py +0 -29
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testServers.py +0 -51
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testShell.py +0 -272
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testStorage.py +0 -88
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testStreams.py +0 -147
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testWMI.py +0 -18
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testall.py +0 -320
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testmakepy.py +0 -54
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testvb.py +0 -583
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testvbscript_regexp.py +0 -40
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/testxslt.py +0 -34
- py2docfx/venv/venv1/Lib/site-packages/win32com/test/util.py +0 -262
- py2docfx/venv/venv1/Lib/site-packages/win32com/universal.py +0 -224
- py2docfx/venv/venv1/Lib/site-packages/win32com/util.py +0 -35
- py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/__init__.py +0 -113
- py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/adsicon.py +0 -340
- py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/demos/objectPicker.py +0 -68
- py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/demos/scp.py +0 -565
- py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/demos/search.py +0 -151
- py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/demos/test.py +0 -274
- py2docfx/venv/venv1/Lib/site-packages/win32comext/authorization/__init__.py +0 -6
- py2docfx/venv/venv1/Lib/site-packages/win32comext/authorization/demos/EditSecurity.py +0 -229
- py2docfx/venv/venv1/Lib/site-packages/win32comext/authorization/demos/EditServiceSecurity.py +0 -219
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axcontrol/__init__.py +0 -4
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/__init__.py +0 -4
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/adb.py +0 -467
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/codecontainer.py +0 -279
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/contexts.py +0 -58
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/debugger.py +0 -238
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/documents.py +0 -135
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/dump.py +0 -57
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/expressions.py +0 -212
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/gateways.py +0 -583
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/stackframe.py +0 -178
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/util.py +0 -98
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/__init__.py +0 -4
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/asputil.py +0 -13
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/__init__.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/debug.py +0 -223
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/error.py +0 -262
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/framework.py +0 -1291
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/pydumper.py +0 -78
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/pyscript.py +0 -438
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/pyscript_rexec.py +0 -54
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/scriptdispatch.py +0 -103
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/server/__init__.py +0 -0
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/server/axsite.py +0 -145
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/test/leakTest.py +0 -185
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/test/testHost.py +0 -240
- py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/test/testHost4Dbg.py +0 -83
- py2docfx/venv/venv1/Lib/site-packages/win32comext/bits/__init__.py +0 -6
- py2docfx/venv/venv1/Lib/site-packages/win32comext/bits/test/show_all_jobs.py +0 -48
- py2docfx/venv/venv1/Lib/site-packages/win32comext/bits/test/test_bits.py +0 -119
- py2docfx/venv/venv1/Lib/site-packages/win32comext/directsound/__init__.py +0 -4
- py2docfx/venv/venv1/Lib/site-packages/win32comext/directsound/test/__init__.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32comext/directsound/test/ds_record.py +0 -60
- py2docfx/venv/venv1/Lib/site-packages/win32comext/directsound/test/ds_test.py +0 -402
- py2docfx/venv/venv1/Lib/site-packages/win32comext/ifilter/__init__.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32comext/ifilter/demo/filterDemo.py +0 -300
- py2docfx/venv/venv1/Lib/site-packages/win32comext/ifilter/ifiltercon.py +0 -110
- py2docfx/venv/venv1/Lib/site-packages/win32comext/internet/__init__.py +0 -4
- py2docfx/venv/venv1/Lib/site-packages/win32comext/internet/inetcon.py +0 -261
- py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/__init__.py +0 -21
- py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/demos/mapisend.py +0 -98
- py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/emsabtags.py +0 -875
- py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/mapitags.py +0 -1023
- py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/mapiutil.py +0 -211
- py2docfx/venv/venv1/Lib/site-packages/win32comext/propsys/__init__.py +0 -1
- py2docfx/venv/venv1/Lib/site-packages/win32comext/propsys/pscon.py +0 -838
- py2docfx/venv/venv1/Lib/site-packages/win32comext/propsys/test/testpropsys.py +0 -5
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/__init__.py +0 -4
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/IActiveDesktop.py +0 -83
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/IFileOperationProgressSink.py +0 -179
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/IShellLinkDataList.py +0 -67
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/ITransferAdviseSink.py +0 -93
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/IUniformResourceLocator.py +0 -56
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/browse_for_folder.py +0 -45
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/create_link.py +0 -73
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/dump_link.py +0 -58
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/explorer_browser.py +0 -143
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/column_provider.py +0 -125
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/context_menu.py +0 -122
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/copy_hook.py +0 -84
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/empty_volume_cache.py +0 -188
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/folder_view.py +0 -866
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/icon_handler.py +0 -81
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/shell_view.py +0 -971
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/shellexecuteex.py +0 -19
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/viewstate.py +0 -68
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/walk_shell_folders.py +0 -24
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/shellcon.py +0 -1615
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/test/testSHFileOperation.py +0 -75
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/test/testShellFolder.py +0 -21
- py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/test/testShellItem.py +0 -69
- py2docfx/venv/venv1/Lib/site-packages/win32comext/taskscheduler/__init__.py +0 -6
- py2docfx/venv/venv1/Lib/site-packages/win32comext/taskscheduler/test/test_addtask.py +0 -66
- py2docfx/venv/venv1/Lib/site-packages/win32comext/taskscheduler/test/test_addtask_1.py +0 -68
- py2docfx/venv/venv1/Lib/site-packages/win32comext/taskscheduler/test/test_addtask_2.py +0 -49
- py2docfx/venv/venv1/Lib/site-packages/win32comext/taskscheduler/test/test_localsystem.py +0 -3
- py2docfx/venv/venv1/Scripts/pywin32_postinstall.py +0 -733
- py2docfx/venv/venv1/Scripts/pywin32_testall.py +0 -120
- {py2docfx-0.1.15rc2025477.dist-info → py2docfx-0.1.16.dev2051338.dist-info}/WHEEL +0 -0
- {py2docfx-0.1.15rc2025477.dist-info → py2docfx-0.1.16.dev2051338.dist-info}/top_level.txt +0 -0
@@ -1,420 +0,0 @@
|
|
1
|
-
#! /usr/bin/env python
|
2
|
-
#
|
3
|
-
# Protocol Buffers - Google's data interchange format
|
4
|
-
# Copyright 2008 Google Inc. All rights reserved.
|
5
|
-
#
|
6
|
-
# Use of this source code is governed by a BSD-style
|
7
|
-
# license that can be found in the LICENSE file or at
|
8
|
-
# https://developers.google.com/open-source/licenses/bsd
|
9
|
-
|
10
|
-
"""Adds support for parameterized tests to Python's unittest TestCase class.
|
11
|
-
|
12
|
-
A parameterized test is a method in a test case that is invoked with different
|
13
|
-
argument tuples.
|
14
|
-
|
15
|
-
A simple example:
|
16
|
-
|
17
|
-
class AdditionExample(_parameterized.TestCase):
|
18
|
-
@_parameterized.parameters(
|
19
|
-
(1, 2, 3),
|
20
|
-
(4, 5, 9),
|
21
|
-
(1, 1, 3))
|
22
|
-
def testAddition(self, op1, op2, result):
|
23
|
-
self.assertEqual(result, op1 + op2)
|
24
|
-
|
25
|
-
|
26
|
-
Each invocation is a separate test case and properly isolated just
|
27
|
-
like a normal test method, with its own setUp/tearDown cycle. In the
|
28
|
-
example above, there are three separate testcases, one of which will
|
29
|
-
fail due to an assertion error (1 + 1 != 3).
|
30
|
-
|
31
|
-
Parameters for individual test cases can be tuples (with positional parameters)
|
32
|
-
or dictionaries (with named parameters):
|
33
|
-
|
34
|
-
class AdditionExample(_parameterized.TestCase):
|
35
|
-
@_parameterized.parameters(
|
36
|
-
{'op1': 1, 'op2': 2, 'result': 3},
|
37
|
-
{'op1': 4, 'op2': 5, 'result': 9},
|
38
|
-
)
|
39
|
-
def testAddition(self, op1, op2, result):
|
40
|
-
self.assertEqual(result, op1 + op2)
|
41
|
-
|
42
|
-
If a parameterized test fails, the error message will show the
|
43
|
-
original test name (which is modified internally) and the arguments
|
44
|
-
for the specific invocation, which are part of the string returned by
|
45
|
-
the shortDescription() method on test cases.
|
46
|
-
|
47
|
-
The id method of the test, used internally by the unittest framework,
|
48
|
-
is also modified to show the arguments. To make sure that test names
|
49
|
-
stay the same across several invocations, object representations like
|
50
|
-
|
51
|
-
>>> class Foo(object):
|
52
|
-
... pass
|
53
|
-
>>> repr(Foo())
|
54
|
-
'<__main__.Foo object at 0x23d8610>'
|
55
|
-
|
56
|
-
are turned into '<__main__.Foo>'. For even more descriptive names,
|
57
|
-
especially in test logs, you can use the named_parameters decorator. In
|
58
|
-
this case, only tuples are supported, and the first parameters has to
|
59
|
-
be a string (or an object that returns an apt name when converted via
|
60
|
-
str()):
|
61
|
-
|
62
|
-
class NamedExample(_parameterized.TestCase):
|
63
|
-
@_parameterized.named_parameters(
|
64
|
-
('Normal', 'aa', 'aaa', True),
|
65
|
-
('EmptyPrefix', '', 'abc', True),
|
66
|
-
('BothEmpty', '', '', True))
|
67
|
-
def testStartsWith(self, prefix, string, result):
|
68
|
-
self.assertEqual(result, strings.startswith(prefix))
|
69
|
-
|
70
|
-
Named tests also have the benefit that they can be run individually
|
71
|
-
from the command line:
|
72
|
-
|
73
|
-
$ testmodule.py NamedExample.testStartsWithNormal
|
74
|
-
.
|
75
|
-
--------------------------------------------------------------------
|
76
|
-
Ran 1 test in 0.000s
|
77
|
-
|
78
|
-
OK
|
79
|
-
|
80
|
-
Parameterized Classes
|
81
|
-
=====================
|
82
|
-
If invocation arguments are shared across test methods in a single
|
83
|
-
TestCase class, instead of decorating all test methods
|
84
|
-
individually, the class itself can be decorated:
|
85
|
-
|
86
|
-
@_parameterized.parameters(
|
87
|
-
(1, 2, 3)
|
88
|
-
(4, 5, 9))
|
89
|
-
class ArithmeticTest(_parameterized.TestCase):
|
90
|
-
def testAdd(self, arg1, arg2, result):
|
91
|
-
self.assertEqual(arg1 + arg2, result)
|
92
|
-
|
93
|
-
def testSubtract(self, arg2, arg2, result):
|
94
|
-
self.assertEqual(result - arg1, arg2)
|
95
|
-
|
96
|
-
Inputs from Iterables
|
97
|
-
=====================
|
98
|
-
If parameters should be shared across several test cases, or are dynamically
|
99
|
-
created from other sources, a single non-tuple iterable can be passed into
|
100
|
-
the decorator. This iterable will be used to obtain the test cases:
|
101
|
-
|
102
|
-
class AdditionExample(_parameterized.TestCase):
|
103
|
-
@_parameterized.parameters(
|
104
|
-
c.op1, c.op2, c.result for c in testcases
|
105
|
-
)
|
106
|
-
def testAddition(self, op1, op2, result):
|
107
|
-
self.assertEqual(result, op1 + op2)
|
108
|
-
|
109
|
-
|
110
|
-
Single-Argument Test Methods
|
111
|
-
============================
|
112
|
-
If a test method takes only one argument, the single argument does not need to
|
113
|
-
be wrapped into a tuple:
|
114
|
-
|
115
|
-
class NegativeNumberExample(_parameterized.TestCase):
|
116
|
-
@_parameterized.parameters(
|
117
|
-
-1, -3, -4, -5
|
118
|
-
)
|
119
|
-
def testIsNegative(self, arg):
|
120
|
-
self.assertTrue(IsNegative(arg))
|
121
|
-
"""
|
122
|
-
|
123
|
-
__author__ = 'tmarek@google.com (Torsten Marek)'
|
124
|
-
|
125
|
-
import functools
|
126
|
-
import re
|
127
|
-
import types
|
128
|
-
import unittest
|
129
|
-
import uuid
|
130
|
-
|
131
|
-
try:
|
132
|
-
# Since python 3
|
133
|
-
import collections.abc as collections_abc
|
134
|
-
except ImportError:
|
135
|
-
# Won't work after python 3.8
|
136
|
-
import collections as collections_abc
|
137
|
-
|
138
|
-
ADDR_RE = re.compile(r'\<([a-zA-Z0-9_\-\.]+) object at 0x[a-fA-F0-9]+\>')
|
139
|
-
_SEPARATOR = uuid.uuid1().hex
|
140
|
-
_FIRST_ARG = object()
|
141
|
-
_ARGUMENT_REPR = object()
|
142
|
-
|
143
|
-
|
144
|
-
def _CleanRepr(obj):
|
145
|
-
return ADDR_RE.sub(r'<\1>', repr(obj))
|
146
|
-
|
147
|
-
|
148
|
-
# Helper function formerly from the unittest module, removed from it in
|
149
|
-
# Python 2.7.
|
150
|
-
def _StrClass(cls):
|
151
|
-
return '%s.%s' % (cls.__module__, cls.__name__)
|
152
|
-
|
153
|
-
|
154
|
-
def _NonStringIterable(obj):
|
155
|
-
return (isinstance(obj, collections_abc.Iterable) and
|
156
|
-
not isinstance(obj, str))
|
157
|
-
|
158
|
-
|
159
|
-
def _FormatParameterList(testcase_params):
|
160
|
-
if isinstance(testcase_params, collections_abc.Mapping):
|
161
|
-
return ', '.join('%s=%s' % (argname, _CleanRepr(value))
|
162
|
-
for argname, value in testcase_params.items())
|
163
|
-
elif _NonStringIterable(testcase_params):
|
164
|
-
return ', '.join(map(_CleanRepr, testcase_params))
|
165
|
-
else:
|
166
|
-
return _FormatParameterList((testcase_params,))
|
167
|
-
|
168
|
-
|
169
|
-
class _ParameterizedTestIter(object):
|
170
|
-
"""Callable and iterable class for producing new test cases."""
|
171
|
-
|
172
|
-
def __init__(self, test_method, testcases, naming_type):
|
173
|
-
"""Returns concrete test functions for a test and a list of parameters.
|
174
|
-
|
175
|
-
The naming_type is used to determine the name of the concrete
|
176
|
-
functions as reported by the unittest framework. If naming_type is
|
177
|
-
_FIRST_ARG, the testcases must be tuples, and the first element must
|
178
|
-
have a string representation that is a valid Python identifier.
|
179
|
-
|
180
|
-
Args:
|
181
|
-
test_method: The decorated test method.
|
182
|
-
testcases: (list of tuple/dict) A list of parameter
|
183
|
-
tuples/dicts for individual test invocations.
|
184
|
-
naming_type: The test naming type, either _NAMED or _ARGUMENT_REPR.
|
185
|
-
"""
|
186
|
-
self._test_method = test_method
|
187
|
-
self.testcases = testcases
|
188
|
-
self._naming_type = naming_type
|
189
|
-
|
190
|
-
def __call__(self, *args, **kwargs):
|
191
|
-
raise RuntimeError('You appear to be running a parameterized test case '
|
192
|
-
'without having inherited from parameterized.'
|
193
|
-
'TestCase. This is bad because none of '
|
194
|
-
'your test cases are actually being run.')
|
195
|
-
|
196
|
-
def __iter__(self):
|
197
|
-
test_method = self._test_method
|
198
|
-
naming_type = self._naming_type
|
199
|
-
|
200
|
-
def MakeBoundParamTest(testcase_params):
|
201
|
-
@functools.wraps(test_method)
|
202
|
-
def BoundParamTest(self):
|
203
|
-
if isinstance(testcase_params, collections_abc.Mapping):
|
204
|
-
test_method(self, **testcase_params)
|
205
|
-
elif _NonStringIterable(testcase_params):
|
206
|
-
test_method(self, *testcase_params)
|
207
|
-
else:
|
208
|
-
test_method(self, testcase_params)
|
209
|
-
|
210
|
-
if naming_type is _FIRST_ARG:
|
211
|
-
# Signal the metaclass that the name of the test function is unique
|
212
|
-
# and descriptive.
|
213
|
-
BoundParamTest.__x_use_name__ = True
|
214
|
-
BoundParamTest.__name__ += str(testcase_params[0])
|
215
|
-
testcase_params = testcase_params[1:]
|
216
|
-
elif naming_type is _ARGUMENT_REPR:
|
217
|
-
# __x_extra_id__ is used to pass naming information to the __new__
|
218
|
-
# method of TestGeneratorMetaclass.
|
219
|
-
# The metaclass will make sure to create a unique, but nondescriptive
|
220
|
-
# name for this test.
|
221
|
-
BoundParamTest.__x_extra_id__ = '(%s)' % (
|
222
|
-
_FormatParameterList(testcase_params),)
|
223
|
-
else:
|
224
|
-
raise RuntimeError('%s is not a valid naming type.' % (naming_type,))
|
225
|
-
|
226
|
-
BoundParamTest.__doc__ = '%s(%s)' % (
|
227
|
-
BoundParamTest.__name__, _FormatParameterList(testcase_params))
|
228
|
-
if test_method.__doc__:
|
229
|
-
BoundParamTest.__doc__ += '\n%s' % (test_method.__doc__,)
|
230
|
-
return BoundParamTest
|
231
|
-
return (MakeBoundParamTest(c) for c in self.testcases)
|
232
|
-
|
233
|
-
|
234
|
-
def _IsSingletonList(testcases):
|
235
|
-
"""True iff testcases contains only a single non-tuple element."""
|
236
|
-
return len(testcases) == 1 and not isinstance(testcases[0], tuple)
|
237
|
-
|
238
|
-
|
239
|
-
def _ModifyClass(class_object, testcases, naming_type):
|
240
|
-
assert not getattr(class_object, '_id_suffix', None), (
|
241
|
-
'Cannot add parameters to %s,'
|
242
|
-
' which already has parameterized methods.' % (class_object,))
|
243
|
-
class_object._id_suffix = id_suffix = {}
|
244
|
-
# We change the size of __dict__ while we iterate over it,
|
245
|
-
# which Python 3.x will complain about, so use copy().
|
246
|
-
for name, obj in class_object.__dict__.copy().items():
|
247
|
-
if (name.startswith(unittest.TestLoader.testMethodPrefix)
|
248
|
-
and isinstance(obj, types.FunctionType)):
|
249
|
-
delattr(class_object, name)
|
250
|
-
methods = {}
|
251
|
-
_UpdateClassDictForParamTestCase(
|
252
|
-
methods, id_suffix, name,
|
253
|
-
_ParameterizedTestIter(obj, testcases, naming_type))
|
254
|
-
for name, meth in methods.items():
|
255
|
-
setattr(class_object, name, meth)
|
256
|
-
|
257
|
-
|
258
|
-
def _ParameterDecorator(naming_type, testcases):
|
259
|
-
"""Implementation of the parameterization decorators.
|
260
|
-
|
261
|
-
Args:
|
262
|
-
naming_type: The naming type.
|
263
|
-
testcases: Testcase parameters.
|
264
|
-
|
265
|
-
Returns:
|
266
|
-
A function for modifying the decorated object.
|
267
|
-
"""
|
268
|
-
def _Apply(obj):
|
269
|
-
if isinstance(obj, type):
|
270
|
-
_ModifyClass(
|
271
|
-
obj,
|
272
|
-
list(testcases) if not isinstance(testcases, collections_abc.Sequence)
|
273
|
-
else testcases,
|
274
|
-
naming_type)
|
275
|
-
return obj
|
276
|
-
else:
|
277
|
-
return _ParameterizedTestIter(obj, testcases, naming_type)
|
278
|
-
|
279
|
-
if _IsSingletonList(testcases):
|
280
|
-
assert _NonStringIterable(testcases[0]), (
|
281
|
-
'Single parameter argument must be a non-string iterable')
|
282
|
-
testcases = testcases[0]
|
283
|
-
|
284
|
-
return _Apply
|
285
|
-
|
286
|
-
|
287
|
-
def parameters(*testcases): # pylint: disable=invalid-name
|
288
|
-
"""A decorator for creating parameterized tests.
|
289
|
-
|
290
|
-
See the module docstring for a usage example.
|
291
|
-
Args:
|
292
|
-
*testcases: Parameters for the decorated method, either a single
|
293
|
-
iterable, or a list of tuples/dicts/objects (for tests
|
294
|
-
with only one argument).
|
295
|
-
|
296
|
-
Returns:
|
297
|
-
A test generator to be handled by TestGeneratorMetaclass.
|
298
|
-
"""
|
299
|
-
return _ParameterDecorator(_ARGUMENT_REPR, testcases)
|
300
|
-
|
301
|
-
|
302
|
-
def named_parameters(*testcases): # pylint: disable=invalid-name
|
303
|
-
"""A decorator for creating parameterized tests.
|
304
|
-
|
305
|
-
See the module docstring for a usage example. The first element of
|
306
|
-
each parameter tuple should be a string and will be appended to the
|
307
|
-
name of the test method.
|
308
|
-
|
309
|
-
Args:
|
310
|
-
*testcases: Parameters for the decorated method, either a single
|
311
|
-
iterable, or a list of tuples.
|
312
|
-
|
313
|
-
Returns:
|
314
|
-
A test generator to be handled by TestGeneratorMetaclass.
|
315
|
-
"""
|
316
|
-
return _ParameterDecorator(_FIRST_ARG, testcases)
|
317
|
-
|
318
|
-
|
319
|
-
class TestGeneratorMetaclass(type):
|
320
|
-
"""Metaclass for test cases with test generators.
|
321
|
-
|
322
|
-
A test generator is an iterable in a testcase that produces callables. These
|
323
|
-
callables must be single-argument methods. These methods are injected into
|
324
|
-
the class namespace and the original iterable is removed. If the name of the
|
325
|
-
iterable conforms to the test pattern, the injected methods will be picked
|
326
|
-
up as tests by the unittest framework.
|
327
|
-
|
328
|
-
In general, it is supposed to be used in conjunction with the
|
329
|
-
parameters decorator.
|
330
|
-
"""
|
331
|
-
|
332
|
-
def __new__(mcs, class_name, bases, dct):
|
333
|
-
dct['_id_suffix'] = id_suffix = {}
|
334
|
-
for name, obj in dct.copy().items():
|
335
|
-
if (name.startswith(unittest.TestLoader.testMethodPrefix) and
|
336
|
-
_NonStringIterable(obj)):
|
337
|
-
iterator = iter(obj)
|
338
|
-
dct.pop(name)
|
339
|
-
_UpdateClassDictForParamTestCase(dct, id_suffix, name, iterator)
|
340
|
-
|
341
|
-
return type.__new__(mcs, class_name, bases, dct)
|
342
|
-
|
343
|
-
|
344
|
-
def _UpdateClassDictForParamTestCase(dct, id_suffix, name, iterator):
|
345
|
-
"""Adds individual test cases to a dictionary.
|
346
|
-
|
347
|
-
Args:
|
348
|
-
dct: The target dictionary.
|
349
|
-
id_suffix: The dictionary for mapping names to test IDs.
|
350
|
-
name: The original name of the test case.
|
351
|
-
iterator: The iterator generating the individual test cases.
|
352
|
-
"""
|
353
|
-
for idx, func in enumerate(iterator):
|
354
|
-
assert callable(func), 'Test generators must yield callables, got %r' % (
|
355
|
-
func,)
|
356
|
-
if getattr(func, '__x_use_name__', False):
|
357
|
-
new_name = func.__name__
|
358
|
-
else:
|
359
|
-
new_name = '%s%s%d' % (name, _SEPARATOR, idx)
|
360
|
-
assert new_name not in dct, (
|
361
|
-
'Name of parameterized test case "%s" not unique' % (new_name,))
|
362
|
-
dct[new_name] = func
|
363
|
-
id_suffix[new_name] = getattr(func, '__x_extra_id__', '')
|
364
|
-
|
365
|
-
|
366
|
-
class TestCase(unittest.TestCase, metaclass=TestGeneratorMetaclass):
|
367
|
-
"""Base class for test cases using the parameters decorator."""
|
368
|
-
|
369
|
-
def _OriginalName(self):
|
370
|
-
return self._testMethodName.split(_SEPARATOR)[0]
|
371
|
-
|
372
|
-
def __str__(self):
|
373
|
-
return '%s (%s)' % (self._OriginalName(), _StrClass(self.__class__))
|
374
|
-
|
375
|
-
def id(self): # pylint: disable=invalid-name
|
376
|
-
"""Returns the descriptive ID of the test.
|
377
|
-
|
378
|
-
This is used internally by the unittesting framework to get a name
|
379
|
-
for the test to be used in reports.
|
380
|
-
|
381
|
-
Returns:
|
382
|
-
The test id.
|
383
|
-
"""
|
384
|
-
return '%s.%s%s' % (_StrClass(self.__class__),
|
385
|
-
self._OriginalName(),
|
386
|
-
self._id_suffix.get(self._testMethodName, ''))
|
387
|
-
|
388
|
-
|
389
|
-
def CoopTestCase(other_base_class):
|
390
|
-
"""Returns a new base class with a cooperative metaclass base.
|
391
|
-
|
392
|
-
This enables the TestCase to be used in combination
|
393
|
-
with other base classes that have custom metaclasses, such as
|
394
|
-
mox.MoxTestBase.
|
395
|
-
|
396
|
-
Only works with metaclasses that do not override type.__new__.
|
397
|
-
|
398
|
-
Example:
|
399
|
-
|
400
|
-
import google3
|
401
|
-
import mox
|
402
|
-
|
403
|
-
from google.protobuf.internal import _parameterized
|
404
|
-
|
405
|
-
class ExampleTest(parameterized.CoopTestCase(mox.MoxTestBase)):
|
406
|
-
...
|
407
|
-
|
408
|
-
Args:
|
409
|
-
other_base_class: (class) A test case base class.
|
410
|
-
|
411
|
-
Returns:
|
412
|
-
A new class object.
|
413
|
-
"""
|
414
|
-
metaclass = type(
|
415
|
-
'CoopMetaclass',
|
416
|
-
(other_base_class.__metaclass__,
|
417
|
-
TestGeneratorMetaclass), {})
|
418
|
-
return metaclass(
|
419
|
-
'CoopTestCase',
|
420
|
-
(other_base_class, TestCase), {})
|
@@ -1,213 +0,0 @@
|
|
1
|
-
# Protocol Buffers - Google's data interchange format
|
2
|
-
# Copyright 2008 Google Inc. All rights reserved.
|
3
|
-
#
|
4
|
-
# Use of this source code is governed by a BSD-style
|
5
|
-
# license that can be found in the LICENSE file or at
|
6
|
-
# https://developers.google.com/open-source/licenses/bsd
|
7
|
-
|
8
|
-
"""DEPRECATED: Declares the RPC service interfaces.
|
9
|
-
|
10
|
-
This module declares the abstract interfaces underlying proto2 RPC
|
11
|
-
services. These are intended to be independent of any particular RPC
|
12
|
-
implementation, so that proto2 services can be used on top of a variety
|
13
|
-
of implementations. Starting with version 2.3.0, RPC implementations should
|
14
|
-
not try to build on these, but should instead provide code generator plugins
|
15
|
-
which generate code specific to the particular RPC implementation. This way
|
16
|
-
the generated code can be more appropriate for the implementation in use
|
17
|
-
and can avoid unnecessary layers of indirection.
|
18
|
-
"""
|
19
|
-
|
20
|
-
__author__ = 'petar@google.com (Petar Petrov)'
|
21
|
-
|
22
|
-
import warnings
|
23
|
-
|
24
|
-
warnings.warn(
|
25
|
-
'google.protobuf.service module is deprecated. RPC implementations '
|
26
|
-
'should provide code generator plugins which generate code specific to '
|
27
|
-
'the RPC implementation. service.py will be removed in Jan 2025',
|
28
|
-
stacklevel=2,
|
29
|
-
)
|
30
|
-
|
31
|
-
class RpcException(Exception):
|
32
|
-
"""Exception raised on failed blocking RPC method call."""
|
33
|
-
pass
|
34
|
-
|
35
|
-
|
36
|
-
class Service(object):
|
37
|
-
|
38
|
-
"""Abstract base interface for protocol-buffer-based RPC services.
|
39
|
-
|
40
|
-
Services themselves are abstract classes (implemented either by servers or as
|
41
|
-
stubs), but they subclass this base interface. The methods of this
|
42
|
-
interface can be used to call the methods of the service without knowing
|
43
|
-
its exact type at compile time (analogous to the Message interface).
|
44
|
-
"""
|
45
|
-
|
46
|
-
def GetDescriptor():
|
47
|
-
"""Retrieves this service's descriptor."""
|
48
|
-
raise NotImplementedError
|
49
|
-
|
50
|
-
def CallMethod(self, method_descriptor, rpc_controller,
|
51
|
-
request, done):
|
52
|
-
"""Calls a method of the service specified by method_descriptor.
|
53
|
-
|
54
|
-
If "done" is None then the call is blocking and the response
|
55
|
-
message will be returned directly. Otherwise the call is asynchronous
|
56
|
-
and "done" will later be called with the response value.
|
57
|
-
|
58
|
-
In the blocking case, RpcException will be raised on error.
|
59
|
-
|
60
|
-
Preconditions:
|
61
|
-
|
62
|
-
* method_descriptor.service == GetDescriptor
|
63
|
-
* request is of the exact same classes as returned by
|
64
|
-
GetRequestClass(method).
|
65
|
-
* After the call has started, the request must not be modified.
|
66
|
-
* "rpc_controller" is of the correct type for the RPC implementation being
|
67
|
-
used by this Service. For stubs, the "correct type" depends on the
|
68
|
-
RpcChannel which the stub is using.
|
69
|
-
|
70
|
-
Postconditions:
|
71
|
-
|
72
|
-
* "done" will be called when the method is complete. This may be
|
73
|
-
before CallMethod() returns or it may be at some point in the future.
|
74
|
-
* If the RPC failed, the response value passed to "done" will be None.
|
75
|
-
Further details about the failure can be found by querying the
|
76
|
-
RpcController.
|
77
|
-
"""
|
78
|
-
raise NotImplementedError
|
79
|
-
|
80
|
-
def GetRequestClass(self, method_descriptor):
|
81
|
-
"""Returns the class of the request message for the specified method.
|
82
|
-
|
83
|
-
CallMethod() requires that the request is of a particular subclass of
|
84
|
-
Message. GetRequestClass() gets the default instance of this required
|
85
|
-
type.
|
86
|
-
|
87
|
-
Example:
|
88
|
-
method = service.GetDescriptor().FindMethodByName("Foo")
|
89
|
-
request = stub.GetRequestClass(method)()
|
90
|
-
request.ParseFromString(input)
|
91
|
-
service.CallMethod(method, request, callback)
|
92
|
-
"""
|
93
|
-
raise NotImplementedError
|
94
|
-
|
95
|
-
def GetResponseClass(self, method_descriptor):
|
96
|
-
"""Returns the class of the response message for the specified method.
|
97
|
-
|
98
|
-
This method isn't really needed, as the RpcChannel's CallMethod constructs
|
99
|
-
the response protocol message. It's provided anyway in case it is useful
|
100
|
-
for the caller to know the response type in advance.
|
101
|
-
"""
|
102
|
-
raise NotImplementedError
|
103
|
-
|
104
|
-
|
105
|
-
class RpcController(object):
|
106
|
-
|
107
|
-
"""An RpcController mediates a single method call.
|
108
|
-
|
109
|
-
The primary purpose of the controller is to provide a way to manipulate
|
110
|
-
settings specific to the RPC implementation and to find out about RPC-level
|
111
|
-
errors. The methods provided by the RpcController interface are intended
|
112
|
-
to be a "least common denominator" set of features which we expect all
|
113
|
-
implementations to support. Specific implementations may provide more
|
114
|
-
advanced features (e.g. deadline propagation).
|
115
|
-
"""
|
116
|
-
|
117
|
-
# Client-side methods below
|
118
|
-
|
119
|
-
def Reset(self):
|
120
|
-
"""Resets the RpcController to its initial state.
|
121
|
-
|
122
|
-
After the RpcController has been reset, it may be reused in
|
123
|
-
a new call. Must not be called while an RPC is in progress.
|
124
|
-
"""
|
125
|
-
raise NotImplementedError
|
126
|
-
|
127
|
-
def Failed(self):
|
128
|
-
"""Returns true if the call failed.
|
129
|
-
|
130
|
-
After a call has finished, returns true if the call failed. The possible
|
131
|
-
reasons for failure depend on the RPC implementation. Failed() must not
|
132
|
-
be called before a call has finished. If Failed() returns true, the
|
133
|
-
contents of the response message are undefined.
|
134
|
-
"""
|
135
|
-
raise NotImplementedError
|
136
|
-
|
137
|
-
def ErrorText(self):
|
138
|
-
"""If Failed is true, returns a human-readable description of the error."""
|
139
|
-
raise NotImplementedError
|
140
|
-
|
141
|
-
def StartCancel(self):
|
142
|
-
"""Initiate cancellation.
|
143
|
-
|
144
|
-
Advises the RPC system that the caller desires that the RPC call be
|
145
|
-
canceled. The RPC system may cancel it immediately, may wait awhile and
|
146
|
-
then cancel it, or may not even cancel the call at all. If the call is
|
147
|
-
canceled, the "done" callback will still be called and the RpcController
|
148
|
-
will indicate that the call failed at that time.
|
149
|
-
"""
|
150
|
-
raise NotImplementedError
|
151
|
-
|
152
|
-
# Server-side methods below
|
153
|
-
|
154
|
-
def SetFailed(self, reason):
|
155
|
-
"""Sets a failure reason.
|
156
|
-
|
157
|
-
Causes Failed() to return true on the client side. "reason" will be
|
158
|
-
incorporated into the message returned by ErrorText(). If you find
|
159
|
-
you need to return machine-readable information about failures, you
|
160
|
-
should incorporate it into your response protocol buffer and should
|
161
|
-
NOT call SetFailed().
|
162
|
-
"""
|
163
|
-
raise NotImplementedError
|
164
|
-
|
165
|
-
def IsCanceled(self):
|
166
|
-
"""Checks if the client cancelled the RPC.
|
167
|
-
|
168
|
-
If true, indicates that the client canceled the RPC, so the server may
|
169
|
-
as well give up on replying to it. The server should still call the
|
170
|
-
final "done" callback.
|
171
|
-
"""
|
172
|
-
raise NotImplementedError
|
173
|
-
|
174
|
-
def NotifyOnCancel(self, callback):
|
175
|
-
"""Sets a callback to invoke on cancel.
|
176
|
-
|
177
|
-
Asks that the given callback be called when the RPC is canceled. The
|
178
|
-
callback will always be called exactly once. If the RPC completes without
|
179
|
-
being canceled, the callback will be called after completion. If the RPC
|
180
|
-
has already been canceled when NotifyOnCancel() is called, the callback
|
181
|
-
will be called immediately.
|
182
|
-
|
183
|
-
NotifyOnCancel() must be called no more than once per request.
|
184
|
-
"""
|
185
|
-
raise NotImplementedError
|
186
|
-
|
187
|
-
|
188
|
-
class RpcChannel(object):
|
189
|
-
|
190
|
-
"""Abstract interface for an RPC channel.
|
191
|
-
|
192
|
-
An RpcChannel represents a communication line to a service which can be used
|
193
|
-
to call that service's methods. The service may be running on another
|
194
|
-
machine. Normally, you should not use an RpcChannel directly, but instead
|
195
|
-
construct a stub {@link Service} wrapping it. Example:
|
196
|
-
|
197
|
-
Example:
|
198
|
-
RpcChannel channel = rpcImpl.Channel("remotehost.example.com:1234")
|
199
|
-
RpcController controller = rpcImpl.Controller()
|
200
|
-
MyService service = MyService_Stub(channel)
|
201
|
-
service.MyMethod(controller, request, callback)
|
202
|
-
"""
|
203
|
-
|
204
|
-
def CallMethod(self, method_descriptor, rpc_controller,
|
205
|
-
request, response_class, done):
|
206
|
-
"""Calls the method identified by the descriptor.
|
207
|
-
|
208
|
-
Call the given method of the remote service. The signature of this
|
209
|
-
procedure looks the same as Service.CallMethod(), but the requirements
|
210
|
-
are less strict in one important way: the request object doesn't have to
|
211
|
-
be of any specific class as long as its descriptor is method.input_type.
|
212
|
-
"""
|
213
|
-
raise NotImplementedError
|
@@ -1,39 +0,0 @@
|
|
1
|
-
# The Python ISAPI package.
|
2
|
-
|
3
|
-
|
4
|
-
# Exceptions thrown by the DLL framework.
|
5
|
-
class ISAPIError(Exception):
|
6
|
-
def __init__(self, errno, strerror=None, funcname=None):
|
7
|
-
# named attributes match OSError etc.
|
8
|
-
self.errno = errno
|
9
|
-
self.strerror = strerror
|
10
|
-
self.funcname = funcname
|
11
|
-
Exception.__init__(self, errno, strerror, funcname)
|
12
|
-
|
13
|
-
def __str__(self):
|
14
|
-
if self.strerror is None:
|
15
|
-
try:
|
16
|
-
import win32api
|
17
|
-
|
18
|
-
self.strerror = win32api.FormatMessage(self.errno).strip()
|
19
|
-
except:
|
20
|
-
self.strerror = "no error message is available"
|
21
|
-
# str() looks like a win32api error.
|
22
|
-
return str((self.errno, self.strerror, self.funcname))
|
23
|
-
|
24
|
-
|
25
|
-
class FilterError(ISAPIError):
|
26
|
-
pass
|
27
|
-
|
28
|
-
|
29
|
-
class ExtensionError(ISAPIError):
|
30
|
-
pass
|
31
|
-
|
32
|
-
|
33
|
-
# A little development aid - a filter or extension callback function can
|
34
|
-
# raise one of these exceptions, and the handler module will be reloaded.
|
35
|
-
# This means you can change your code without restarting IIS.
|
36
|
-
# After a reload, your filter/extension will have the GetFilterVersion/
|
37
|
-
# GetExtensionVersion function called, but with None as the first arg.
|
38
|
-
class InternalReloadException(Exception):
|
39
|
-
pass
|