diff options
Diffstat (limited to 'test/test_bitbucket.py')
-rw-r--r-- | test/test_bitbucket.py | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/test/test_bitbucket.py b/test/test_bitbucket.py new file mode 100644 index 0000000..776c48c --- /dev/null +++ b/test/test_bitbucket.py @@ -0,0 +1,34 @@ +# Copyright (c) 2021 Egor Tensin <Egor.Tensin@gmail.com> +# This file is part of the "cgitize" project. +# For details, see https://github.com/egor-tensin/cgitize. +# Distributed under the MIT License. + +import unittest + +from atlassian.bitbucket.cloud import Cloud +from requests.exceptions import HTTPError + + +class BitbucketTests(unittest.TestCase): + def setUp(self): + self.bitbucket = Cloud(cloud=True) + + def test_nonexistent_repo(self): + with self.assertRaises(HTTPError): + self.bitbucket.repositories.get('doesnot/exist') + + def test_existing_repo(self): + r = self.bitbucket.repositories.get('egor-tensin/cgitize-test-repository') + self.assertEqual(r['name'], 'cgitize-test-repository') + self.assertEqual(r['description'], 'Test cgitize repository') + + https_links = [link for link in r['links']['clone'] if link['name'] == 'https'] + self.assertEqual(len(https_links), 1) + self.assertEqual(https_links[0]['href'], 'https://bitbucket.org/egor-tensin/cgitize-test-repository.git') + + ssh_links = [link for link in r['links']['clone'] if link['name'] == 'ssh'] + self.assertEqual(len(ssh_links), 1) + self.assertEqual(ssh_links[0]['href'], 'git@bitbucket.org:egor-tensin/cgitize-test-repository.git') + + self.assertEqual(r['owner']['display_name'], 'Egor Tensin') + self.assertEqual(r['owner']['nickname'], 'egor-tensin') |