OpenSolo/shotmanager/Test/TestModes.py

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 )