mirror of
https://github.com/OpenSolo/OpenSolo.git
synced 2025-04-29 22:24:32 +02:00
42 lines
1.2 KiB
Python
42 lines
1.2 KiB
Python
# Unit tests for modes
|
|
import mock
|
|
import os
|
|
from os import sys, path
|
|
import unittest
|
|
|
|
from dronekit import Vehicle
|
|
|
|
sys.path.append(os.path.realpath('..'))
|
|
import modes
|
|
|
|
class TestModeLookup(unittest.TestCase):
|
|
def setUp(self):
|
|
self.v = mock.create_autospec(Vehicle)
|
|
self.v._mode_mapping = { "ALT_HOLD" : 2,
|
|
"TEST_ME" : 317 }
|
|
|
|
def testLookupAltHold(self):
|
|
""" Look up 'ALT_HOLD' """
|
|
i = modes.getAPMModeIndexFromName( 'ALT_HOLD', self.v )
|
|
self.assertEqual( i, 2 )
|
|
|
|
def testLookupTestMe(self):
|
|
""" Look up 'TEST_ME' """
|
|
i = modes.getAPMModeIndexFromName( 'TEST_ME', self.v )
|
|
self.assertEqual( i, 317 )
|
|
|
|
def testLookupModeParser(self):
|
|
""" Look up 'Mode(10)' """
|
|
i = modes.getAPMModeIndexFromName( 'Mode(10)', self.v )
|
|
self.assertEqual( i, 10 )
|
|
|
|
def testMalformedMode(self):
|
|
""" Look up 'Mode(asta' """
|
|
i = modes.getAPMModeIndexFromName( 'Mode(asta', self.v )
|
|
self.assertEqual( i, -1 )
|
|
|
|
def testLookupInvalidMode(self):
|
|
""" Look up 'Invalid' """
|
|
i = modes.getAPMModeIndexFromName( 'Invalid', self.v )
|
|
self.assertEqual( i, -1 )
|