Add spec for BitbucketServer::Representation::Repo
This commit is contained in:
parent
48ea89af12
commit
7c1aaf68f8
2 changed files with 77 additions and 9 deletions
|
@ -9,10 +9,6 @@ module BitbucketServer
|
||||||
raw.dig('project', 'name')
|
raw.dig('project', 'name')
|
||||||
end
|
end
|
||||||
|
|
||||||
def owner
|
|
||||||
project['name']
|
|
||||||
end
|
|
||||||
|
|
||||||
def slug
|
def slug
|
||||||
raw['slug']
|
raw['slug']
|
||||||
end
|
end
|
||||||
|
@ -30,7 +26,7 @@ module BitbucketServer
|
||||||
end
|
end
|
||||||
|
|
||||||
def full_name
|
def full_name
|
||||||
"#{owner}/#{name}"
|
"#{project_name}/#{name}"
|
||||||
end
|
end
|
||||||
|
|
||||||
def issues_enabled?
|
def issues_enabled?
|
||||||
|
@ -45,10 +41,6 @@ module BitbucketServer
|
||||||
raw['scmId'] == 'git'
|
raw['scmId'] == 'git'
|
||||||
end
|
end
|
||||||
|
|
||||||
def has_wiki?
|
|
||||||
false
|
|
||||||
end
|
|
||||||
|
|
||||||
def visibility_level
|
def visibility_level
|
||||||
if project['public']
|
if project['public']
|
||||||
Gitlab::VisibilityLevel::PUBLIC
|
Gitlab::VisibilityLevel::PUBLIC
|
||||||
|
|
76
spec/lib/bitbucket_server/representation/repo_spec.rb
Normal file
76
spec/lib/bitbucket_server/representation/repo_spec.rb
Normal file
|
@ -0,0 +1,76 @@
|
||||||
|
require 'spec_helper'
|
||||||
|
|
||||||
|
describe BitbucketServer::Representation::Repo do
|
||||||
|
let(:sample_data) do
|
||||||
|
<<~DATA
|
||||||
|
{
|
||||||
|
"slug": "rouge",
|
||||||
|
"id": 1,
|
||||||
|
"name": "rouge",
|
||||||
|
"scmId": "git",
|
||||||
|
"state": "AVAILABLE",
|
||||||
|
"statusMessage": "Available",
|
||||||
|
"forkable": true,
|
||||||
|
"project": {
|
||||||
|
"key": "TEST",
|
||||||
|
"id": 1,
|
||||||
|
"name": "test",
|
||||||
|
"description": "Test",
|
||||||
|
"public": false,
|
||||||
|
"type": "NORMAL",
|
||||||
|
"links": {
|
||||||
|
"self": [
|
||||||
|
{
|
||||||
|
"href": "http://localhost:7990/projects/TEST"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"public": false,
|
||||||
|
"links": {
|
||||||
|
"clone": [
|
||||||
|
{
|
||||||
|
"href": "http://root@localhost:7990/scm/test/rouge.git",
|
||||||
|
"name": "http"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"href": "ssh://git@localhost:7999/test/rouge.git",
|
||||||
|
"name": "ssh"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"self": [
|
||||||
|
{
|
||||||
|
"href": "http://localhost:7990/projects/TEST/repos/rouge/browse"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
DATA
|
||||||
|
end
|
||||||
|
|
||||||
|
subject { described_class.new(JSON.parse(sample_data)) }
|
||||||
|
|
||||||
|
describe '#project_name' do
|
||||||
|
it { expect(subject.project_name).to eq('test') }
|
||||||
|
end
|
||||||
|
|
||||||
|
describe '#slug' do
|
||||||
|
it { expect(subject.slug).to eq('rouge') }
|
||||||
|
end
|
||||||
|
|
||||||
|
describe '#browse_url' do
|
||||||
|
it { expect(subject.browse_url).to eq('http://localhost:7990/projects/TEST/repos/rouge/browse') }
|
||||||
|
end
|
||||||
|
|
||||||
|
describe '#clone_url' do
|
||||||
|
it { expect(subject.clone_url).to eq('http://root@localhost:7990/scm/test/rouge.git') }
|
||||||
|
end
|
||||||
|
|
||||||
|
describe '#description' do
|
||||||
|
it { expect(subject.description).to eq('Test') }
|
||||||
|
end
|
||||||
|
|
||||||
|
describe '#full_name' do
|
||||||
|
it { expect(subject.full_name).to eq('test/rouge') }
|
||||||
|
end
|
||||||
|
end
|
Loading…
Reference in a new issue