Files
modelscope/tests/cli/test_plugins_cmd.py

52 lines
1.7 KiB
Python
Raw Permalink Normal View History

import subprocess
import unittest
from modelscope.utils.plugins import PluginsManager
@unittest.skipUnless(False, reason='For it modify torch version')
class PluginsCMDTest(unittest.TestCase):
def setUp(self):
print(('Testing %s.%s' % (type(self).__name__, self._testMethodName)))
self.package = 'adaseq'
self.plugins_manager = PluginsManager()
def tearDown(self):
super().tearDown()
def test_plugins_install(self):
cmd = f'python -m modelscope.cli.cli plugin install {self.package}'
stat, output = subprocess.getstatusoutput(cmd)
self.assertEqual(stat, 0)
# move this from tear down to avoid unexpected uninstall
uninstall_args = [self.package, '-y']
self.plugins_manager.uninstall_plugins(uninstall_args)
def test_plugins_uninstall(self):
# move this from tear down to avoid unexpected uninstall
uninstall_args = [self.package, '-y']
self.plugins_manager.uninstall_plugins(uninstall_args)
cmd = f'python -m modelscope.cli.cli plugin install {self.package}'
stat, output = subprocess.getstatusoutput(cmd)
self.assertEqual(stat, 0)
cmd = f'python -m modelscope.cli.cli plugin uninstall {self.package}'
stat, output = subprocess.getstatusoutput(cmd)
self.assertEqual(stat, 0)
# move this from tear down to avoid unexpected uninstall
uninstall_args = [self.package, '-y']
self.plugins_manager.uninstall_plugins(uninstall_args)
def test_plugins_list(self):
cmd = 'python -m modelscope.cli.cli plugin list'
stat, output = subprocess.getstatusoutput(cmd)
self.assertEqual(stat, 0)
if __name__ == '__main__':
unittest.main()