mirror of
https://github.com/modelscope/modelscope.git
synced 2026-09-01 19:49:03 +02:00
This commit is contained in:
@@ -184,8 +184,11 @@ class GitCommandWrapper(metaclass=Singleton):
|
||||
info = [
|
||||
line.strip()
|
||||
for line in rsp.stdout.decode('utf8').strip().split(os.linesep)
|
||||
][1:]
|
||||
return ['/'.join(line.split('/')[1:]) for line in info]
|
||||
]
|
||||
if len(info) == 1:
|
||||
return ['/'.join(info[0].split('/')[1:])]
|
||||
else:
|
||||
return ['/'.join(line.split('/')[1:]) for line in info[1:]]
|
||||
|
||||
def pull(self, repo_dir: str):
|
||||
cmds = ['-C', repo_dir, 'pull']
|
||||
|
||||
@@ -7,12 +7,13 @@ import uuid
|
||||
|
||||
from modelscope.hub.api import HubApi
|
||||
from modelscope.hub.constants import Licenses, ModelVisibility
|
||||
from modelscope.hub.errors import HTTPError, NotLoginException
|
||||
from modelscope.hub.repository import Repository
|
||||
from modelscope.hub.upload import upload_folder
|
||||
from modelscope.utils.constant import ModelFile
|
||||
from modelscope.utils.logger import get_logger
|
||||
from modelscope.utils.test_utils import test_level
|
||||
from .test_utils import TEST_ACCESS_TOKEN1, delete_credential
|
||||
from .test_utils import TEST_ACCESS_TOKEN1, TEST_MODEL_ORG, delete_credential
|
||||
|
||||
logger = get_logger()
|
||||
|
||||
@@ -22,7 +23,7 @@ class HubUploadTest(unittest.TestCase):
|
||||
def setUp(self):
|
||||
logger.info('SetUp')
|
||||
self.api = HubApi()
|
||||
self.user = os.environ.get('TEST_MODEL_ORG', 'citest')
|
||||
self.user = TEST_MODEL_ORG
|
||||
logger.info(self.user)
|
||||
self.create_model_name = '%s/%s_%s' % (self.user, 'test_model_upload',
|
||||
uuid.uuid4().hex)
|
||||
@@ -39,7 +40,10 @@ class HubUploadTest(unittest.TestCase):
|
||||
def tearDown(self):
|
||||
logger.info('TearDown')
|
||||
shutil.rmtree(self.model_dir, ignore_errors=True)
|
||||
self.api.delete_model(model_id=self.create_model_name)
|
||||
try:
|
||||
self.api.delete_model(model_id=self.create_model_name)
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
def test_upload_exits_repo_master(self):
|
||||
logger.info('basic test for upload!')
|
||||
@@ -119,48 +123,23 @@ class HubUploadTest(unittest.TestCase):
|
||||
logger.info('test upload without login!')
|
||||
self.api.login(TEST_ACCESS_TOKEN1)
|
||||
delete_credential()
|
||||
try:
|
||||
with self.assertRaises(NotLoginException):
|
||||
upload_folder(
|
||||
model_id=self.create_model_name,
|
||||
model_dir=self.finetune_path,
|
||||
visibility=ModelVisibility.PUBLIC,
|
||||
license=Licenses.APACHE_V2)
|
||||
except Exception as e:
|
||||
logger.info(e)
|
||||
self.api.login(TEST_ACCESS_TOKEN1)
|
||||
upload_folder(
|
||||
model_id=self.create_model_name,
|
||||
model_dir=self.finetune_path,
|
||||
visibility=ModelVisibility.PUBLIC,
|
||||
license=Licenses.APACHE_V2)
|
||||
Repository(
|
||||
model_dir=self.repo_path, clone_from=self.create_model_name)
|
||||
assert os.path.exists(
|
||||
os.path.join(self.repo_path, 'configuration.json'))
|
||||
shutil.rmtree(self.repo_path, ignore_errors=True)
|
||||
|
||||
@unittest.skipUnless(test_level() >= 0, 'skip test in current test level')
|
||||
def test_upload_invalid_repo(self):
|
||||
logger.info('test upload to invalid repo!')
|
||||
self.api.login(TEST_ACCESS_TOKEN1)
|
||||
try:
|
||||
with self.assertRaises(HTTPError):
|
||||
upload_folder(
|
||||
model_id='%s/%s' % ('speech_tts', 'invalid_model_test'),
|
||||
model_dir=self.finetune_path,
|
||||
visibility=ModelVisibility.PUBLIC,
|
||||
license=Licenses.APACHE_V2)
|
||||
except Exception as e:
|
||||
logger.info(e)
|
||||
upload_folder(
|
||||
model_id=self.create_model_name,
|
||||
model_dir=self.finetune_path,
|
||||
visibility=ModelVisibility.PUBLIC,
|
||||
license=Licenses.APACHE_V2)
|
||||
Repository(
|
||||
model_dir=self.repo_path, clone_from=self.create_model_name)
|
||||
assert os.path.exists(
|
||||
os.path.join(self.repo_path, 'configuration.json'))
|
||||
shutil.rmtree(self.repo_path, ignore_errors=True)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
||||
Reference in New Issue
Block a user