Boost Python: как мы можем проверить правильность представления типов C ++ для Python - PullRequest
0 голосов
/ 23 января 2019

Я использую boost-python для представления классов, перечислений и функций C ++ для python.

Я хочу знать, как я могу проверить, что классы на стороне python точно соответствуют C ++ -сторонние классы, например, в модульном тесте?

До сих пор у меня было много выставленных классов c ++, и я могу видеть, что они выглядят корректно на стороне Python при ведении журнала.У меня также есть многочисленные сквозные тесты, которые дают мне уверенность, что все хорошо.Я хотел бы добавить здесь несколько модульных тестов.

В настоящее время у меня есть несколько модульных тестов, в которых функция генератора создает несколько тестовых объектов C ++ в c ++, вызывает эту функцию на python, а затем утверждает, что объекты у нее есть (объекты стороны Python) имеют поля с правильными типами (например, с плавающей точкой) и значениями.(Это работает, но немного трудоемко; для каждого типа C ++ создайте функцию генератора, а затем модульный тест на стороне Python, который проверяет тип стороны Python).

Есть ли лучший способ сделать эту автоматическую проверкуразоблачения с помощью boost-python?Я полагаю, что любой, кто использует Boost-Python для предоставления Python типов C ++, хочет автоматически проверить правильность кода экспонирования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...