31 lines
1 KiB
Python
31 lines
1 KiB
Python
|
import unittest
|
||
|
from unittest import mock
|
||
|
from tests.recipes.recipe_lib_test import BaseTestForCmakeRecipe
|
||
|
|
||
|
|
||
|
class TestLibmysqlclientRecipe(BaseTestForCmakeRecipe, unittest.TestCase):
|
||
|
"""
|
||
|
An unittest for recipe :mod:`~pythonforandroid.recipes.libmysqlclient`
|
||
|
"""
|
||
|
recipe_name = "libmysqlclient"
|
||
|
|
||
|
@mock.patch("pythonforandroid.recipes.libmysqlclient.sh.rm")
|
||
|
@mock.patch("pythonforandroid.recipes.libmysqlclient.sh.cp")
|
||
|
@mock.patch("pythonforandroid.util.chdir")
|
||
|
@mock.patch("pythonforandroid.build.ensure_dir")
|
||
|
@mock.patch("pythonforandroid.archs.find_executable")
|
||
|
def test_build_arch(
|
||
|
self,
|
||
|
mock_find_executable,
|
||
|
mock_ensure_dir,
|
||
|
mock_current_directory,
|
||
|
mock_sh_cp,
|
||
|
mock_sh_rm,
|
||
|
):
|
||
|
# We overwrite the base test method because we need
|
||
|
# to mock a little more (`sh.cp` and `sh.rm`)
|
||
|
super().test_build_arch()
|
||
|
# make sure that the mocked methods are actually called
|
||
|
mock_sh_cp.assert_called()
|
||
|
mock_sh_rm.assert_called()
|