...when we are using Python 3.8.x or later. Python 3.8.x or later on Windows require one to call os.add_dll_directory() on every directory that contains dependent non-system DLLs of a module that are not bundled/installed with the module. Since we are very likely running programs that rely on dependent items in %PATH%, make things easier for people by calling os.add_dll_directory() on all the valid paths in %PATH% in api.py, so that the test will run successfully on Windows with Python 3.8.x or later.
24 lines
739 B
Python
Executable File
24 lines
739 B
Python
Executable File
#! /usr/bin/env python3
|
|
|
|
import os
|
|
import sys
|
|
|
|
# Python 3.8.x or later on Windows require os.add_dll_directory()
|
|
# to be called on every directory that contains the required
|
|
# non-bundled, non-system DLLs of a module so that the module can
|
|
# be loaded successfully by Python. Make things easiler for people
|
|
# by calling os.add_dll_directory() on the valid paths in %PATH%.
|
|
if hasattr(os, 'add_dll_directory'):
|
|
paths = os.environ['PATH'].split(os.pathsep)
|
|
for path in paths:
|
|
if path != '' and os.path.isdir(path):
|
|
os.add_dll_directory(path)
|
|
|
|
import gi
|
|
|
|
gi.require_version('Gtk', '4.0')
|
|
|
|
from gi.repository import Gtk
|
|
|
|
assert isinstance(Gtk.INVALID_LIST_POSITION, int), 'Gtk.INVALID_LIST_POSITION is not an int'
|