mirror of
https://github.com/meshtastic/python.git
synced 2026-04-18 05:53:12 -04:00
The global object formerly used is now replaced by direct use of the namespace opf the globals module. This eliminates the redundant getters and setters and simplifies the code for future maintainers. Note that the globals module name conflicts (harmlessly at present) with a Python built-in function. A future commit should rename it `config` to remove this clash and better represent its intended purpose.
61 lines
1.4 KiB
Python
61 lines
1.4 KiB
Python
"""Common pytest code (place for fixtures)."""
|
|
|
|
import argparse
|
|
from unittest.mock import MagicMock
|
|
|
|
import pytest
|
|
|
|
from meshtastic import globals
|
|
|
|
from ..mesh_interface import MeshInterface
|
|
|
|
|
|
@pytest.fixture
|
|
def reset_globals():
|
|
"""Fixture to reset globals."""
|
|
parser = None
|
|
parser = argparse.ArgumentParser(add_help=False)
|
|
globals.reset()
|
|
globals.parser = parser
|
|
|
|
|
|
@pytest.fixture
|
|
def iface_with_nodes():
|
|
"""Fixture to setup some nodes."""
|
|
nodesById = {
|
|
"!9388f81c": {
|
|
"num": 2475227164,
|
|
"user": {
|
|
"id": "!9388f81c",
|
|
"longName": "Unknown f81c",
|
|
"shortName": "?1C",
|
|
"macaddr": "RBeTiPgc",
|
|
"hwModel": "TBEAM",
|
|
},
|
|
"position": {},
|
|
"lastHeard": 1640204888,
|
|
}
|
|
}
|
|
|
|
nodesByNum = {
|
|
2475227164: {
|
|
"num": 2475227164,
|
|
"user": {
|
|
"id": "!9388f81c",
|
|
"longName": "Unknown f81c",
|
|
"shortName": "?1C",
|
|
"macaddr": "RBeTiPgc",
|
|
"hwModel": "TBEAM",
|
|
},
|
|
"position": {"time": 1640206266},
|
|
"lastHeard": 1640206266,
|
|
}
|
|
}
|
|
iface = MeshInterface(noProto=True)
|
|
iface.nodes = nodesById
|
|
iface.nodesByNum = nodesByNum
|
|
myInfo = MagicMock()
|
|
iface.myInfo = myInfo
|
|
iface.myInfo.my_node_num = 2475227164
|
|
return iface
|