add tests for codecommit
This commit is contained in:
parent
e20deb4acd
commit
cb1eb79b89
@ -40,6 +40,11 @@ def test_create_repository():
|
||||
)
|
||||
response["repositoryMetadata"]["accountId"].should.equal(ACCOUNT_ID)
|
||||
|
||||
|
||||
@mock_codecommit
|
||||
def test_create_repository_without_description():
|
||||
client = boto3.client("codecommit", region_name="eu-central-1")
|
||||
|
||||
response = client.create_repository(repositoryName="repository_two")
|
||||
|
||||
response.should_not.be.none
|
||||
@ -48,9 +53,39 @@ def test_create_repository():
|
||||
"repository_two"
|
||||
)
|
||||
response.get("repositoryMetadata").get("repositoryDescription").should.be.none
|
||||
response["repositoryMetadata"].should_not.be.none
|
||||
response["repositoryMetadata"]["creationDate"].should_not.be.none
|
||||
response["repositoryMetadata"]["lastModifiedDate"].should_not.be.none
|
||||
response["repositoryMetadata"]["repositoryId"].should_not.be.empty
|
||||
response["repositoryMetadata"]["cloneUrlSsh"].should.equal(
|
||||
"ssh://git-codecommit.{0}.amazonaws.com/v1/repos/{1}".format(
|
||||
"eu-central-1", "repository_two"
|
||||
)
|
||||
)
|
||||
response["repositoryMetadata"]["cloneUrlHttp"].should.equal(
|
||||
"https://git-codecommit.{0}.amazonaws.com/v1/repos/{1}".format(
|
||||
"eu-central-1", "repository_two"
|
||||
)
|
||||
)
|
||||
response["repositoryMetadata"]["Arn"].should.equal(
|
||||
"arn:aws:codecommit:{0}:{1}:{2}".format(
|
||||
"eu-central-1", ACCOUNT_ID, "repository_two"
|
||||
)
|
||||
)
|
||||
response["repositoryMetadata"]["accountId"].should.equal(ACCOUNT_ID)
|
||||
|
||||
|
||||
@mock_codecommit
|
||||
def test_create_repository_repository_name_exists():
|
||||
client = boto3.client("codecommit", region_name="eu-central-1")
|
||||
|
||||
client.create_repository(repositoryName="repository_two")
|
||||
|
||||
with assert_raises(ClientError) as e:
|
||||
client.create_repository(repositoryName="repository_two")
|
||||
client.create_repository(
|
||||
repositoryName="repository_two",
|
||||
repositoryDescription="description repo two",
|
||||
)
|
||||
ex = e.exception
|
||||
ex.operation_name.should.equal("CreateRepository")
|
||||
ex.response["ResponseMetadata"]["HTTPStatusCode"].should.equal(400)
|
||||
@ -60,6 +95,25 @@ def test_create_repository():
|
||||
)
|
||||
|
||||
|
||||
@mock_codecommit
|
||||
def test_create_repository_invalid_repository_name():
|
||||
client = boto3.client("codecommit", region_name="eu-central-1")
|
||||
|
||||
with assert_raises(ClientError) as e:
|
||||
client.create_repository(repositoryName="in_123_valid_@#$_characters")
|
||||
ex = e.exception
|
||||
ex.operation_name.should.equal("CreateRepository")
|
||||
ex.response["ResponseMetadata"]["HTTPStatusCode"].should.equal(400)
|
||||
ex.response["Error"]["Code"].should.contain("InvalidRepositoryNameException")
|
||||
ex.response["Error"]["Message"].should.equal(
|
||||
"The repository name is not valid. Repository names can be any valid "
|
||||
"combination of letters, numbers, "
|
||||
"periods, underscores, and dashes between 1 and 100 characters in "
|
||||
"length. Names are case sensitive. "
|
||||
"For more information, see Limits in the AWS CodeCommit User Guide. "
|
||||
)
|
||||
|
||||
|
||||
@mock_codecommit
|
||||
def test_get_repository():
|
||||
client = boto3.client("codecommit", region_name="eu-central-1")
|
||||
@ -114,11 +168,11 @@ def test_get_repository():
|
||||
|
||||
|
||||
@mock_codecommit
|
||||
def test_invalid_repository_name():
|
||||
def test_get_repository_invalid_repository_name():
|
||||
client = boto3.client("codecommit", region_name="eu-central-1")
|
||||
|
||||
with assert_raises(ClientError) as e:
|
||||
client.create_repository(repositoryName="repository_one-@#@")
|
||||
client.get_repository(repositoryName="repository_one-@#@")
|
||||
ex = e.exception
|
||||
ex.response["ResponseMetadata"]["HTTPStatusCode"].should.equal(400)
|
||||
ex.response["Error"]["Code"].should.contain("InvalidRepositoryNameException")
|
||||
@ -129,14 +183,6 @@ def test_invalid_repository_name():
|
||||
"length. Names are case sensitive. "
|
||||
"For more information, see Limits in the AWS CodeCommit User Guide. "
|
||||
)
|
||||
with assert_raises(ClientError) as e:
|
||||
client.create_repository(repositoryName="!_repository_one")
|
||||
|
||||
with assert_raises(ClientError) as e:
|
||||
client.create_repository(repositoryName="_rep@ository_one")
|
||||
|
||||
with assert_raises(ClientError) as e:
|
||||
client.get_repository(repositoryName="_rep@ository_one")
|
||||
|
||||
|
||||
@mock_codecommit
|
||||
|
Loading…
Reference in New Issue
Block a user