Update condition to visibility collaboration status text, #44642.

This commit is contained in:
Harry Kiselev 2018-12-25 23:41:32 +03:00
parent 5dc656fc1f
commit c01444a79b
2 changed files with 51 additions and 1 deletions

View file

@ -106,6 +106,9 @@ export default {
(!this.mr.isNothingToMergeState && !this.mr.isMergedState)
);
},
shouldRenderCollaborationStatus() {
return this.mr.allowCollaboration && this.mr.isOpen;
},
shouldRenderMergedPipeline() {
return this.mr.state === 'merged' && !_.isEmpty(this.mr.mergePipeline);
},
@ -315,7 +318,7 @@ export default {
<div class="mr-widget-section">
<component :is="componentName" :mr="mr" :service="service" />
<section v-if="mr.allowCollaboration" class="mr-info-list mr-links">
<section v-if="shouldRenderCollaborationStatus" class="mr-info-list mr-links">
{{ s__('mrWidget|Allows commits from members who can merge to the target branch') }}
</section>

View file

@ -132,6 +132,53 @@ describe('mrWidgetOptions', () => {
expect(vm.shouldRenderSourceBranchRemovalStatus).toEqual(false);
});
});
describe('shouldRenderCollaborationStatus', () => {
describe('when collaboration is allowed', () => {
beforeEach(() => {
vm.mr.allowCollaboration = true;
});
describe('when merge request is opened', () => {
beforeEach(done => {
vm.mr.isOpen = true;
vm.$nextTick(done);
});
it('should render collaboration status', () => {
expect(vm.$el.textContent).toContain('Allows commits from members');
});
});
describe('when merge request is not opened', () => {
beforeEach(done => {
vm.mr.isOpen = false;
vm.$nextTick(done);
});
it('should not render collaboration status', () => {
expect(vm.$el.textContent).not.toContain('Allows commits from members');
});
});
});
describe('when collaboration is not allowed', () => {
beforeEach(() => {
vm.mr.allowCollaboration = false;
});
describe('when merge request is opened', () => {
beforeEach(done => {
vm.mr.isOpen = true;
vm.$nextTick(done);
});
it('should not render collaboration status', () => {
expect(vm.$el.textContent).not.toContain('Allows commits from members');
});
});
});
});
});
describe('methods', () => {