Google is committed to advancing racial equity for Black communities. See how.

Тестовые кейсы

Посмотреть исходный код на GitHub

OpenWeave включает ряд скриптов Python для тестирования функциональности Weave по смоделированным топологиям Happy. Эти тестовые примеры гарантируют, что топология правильно настроена для сетевого подключения и развертывания Weave.

Скрипты тестовых примеров находятся в репозитории OpenWeave по адресу /src/test-apps/happy/tests . Есть два типа тестов:

  • Сервис - тесты, которые взаимодействуют с Сервисом.
  • Автономный - тесты, выполняемые в локальных топологиях.

Запустить

  1. Установите OpenWeave. См. Инструкции в руководстве OpenWeave Build .
  2. Установите Happy. См. Инструкции в руководстве Happy Setup .
  3. Перейдите в каталог, содержащий целевой тестовый пример. Например, чтобы запустить тестовый пример профиля эха:
    cd <path-to-openweave-core>/src/test-apps/happy/tests/standalone/echo
    python test_weave_echo_01.py

Change test topology

OpenWeave test cases run against the sample Happy topologies found in /src/test-apps/happy/topologies/standalone. To use your own custom Happy topology in a test case:

  1. After constructing your custom topology, save it in JSON format. This saves the topology state file in the $HOME directory:
    happy-state -s my_topology.json
  2. In the test case script, locate the topology file being used. Topologies in test cases are typically assigned to the self.topology_file variable. For example, test_weave_echo_01.py uses the following topology for a default OpenWeave build:

    self.topology_file = os.path.dirname(os.path.realpath(__file__)) + \
        "/../../../topologies/standalone/three_nodes_on_thread_weave.json"
    
  3. Обновите путь к топологии, чтобы он указывал на ваш настраиваемый файл состояния топологии:

    self.topology_file = "~/my_topology.json"
    
  4. В качестве альтернативы поместите свой собственный файл состояния топологии в то же место, что и те, которые включены в OpenWeave:

    self.topology_file = os.path.dirname(os.path.realpath(__file__)) + \
        "/../../../topologies/standalone/my_topology.json"
    
  5. Запустите тестовый пример .