Skip to content

Commit 95a4847

Browse files
committed
Merge pull request #2 from ledsun/add_merge_request
Add MergeRequest resource.
2 parents 4a89dae + 035310a commit 95a4847

File tree

3 files changed

+58
-0
lines changed

3 files changed

+58
-0
lines changed

lib/gitlab.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ var Hook = require('./hook');
2020
var Issue = require('./issue');
2121
var User = require('./user');
2222
var Repository = require('./repository');
23+
var MergeRequest = require('./merge_request');
2324

2425
/**
2526
* Create a gitlab API client.
@@ -40,6 +41,7 @@ function Gitlab(options) {
4041
this.hooks = new Hook(this);
4142
this.issues = new Issue(this);
4243
this.users = new User(this);
44+
this.merge_requests = new MergeRequest(this);
4345

4446
this.addResources({
4547
projects: Project,

lib/merge_request.js

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
/*!
2+
* gitlab - lib/merge_request.js
3+
* Copyright(c) 2013 fengmk2 <[email protected]>
4+
* MIT Licensed
5+
*/
6+
7+
"use strict";
8+
9+
/**
10+
* Module dependencies.
11+
*/
12+
13+
var util = require('util');
14+
var restful = require('restful-client');
15+
16+
function MergeRequest(client) {
17+
this.constructor.super_.call(this, client, '/projects/:id/merge_request', 'merge_request_id');
18+
}
19+
util.inherits(MergeRequest, restful.RESTFulResource);
20+
21+
module.exports = MergeRequest;

test/merge_request.js

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
/*!
2+
* gitlab - test/merge_request.test.js
3+
* Copyright(c) 2012 fengmk2 <[email protected]>
4+
* MIT Licensed
5+
*/
6+
7+
"use strict";
8+
9+
/**
10+
* Module dependencies.
11+
*/
12+
13+
var client = require('./client');
14+
var should = require('should');
15+
16+
describe('merge_request.test.js', function() {
17+
18+
describe('client.merge_requests.get()', function() {
19+
20+
it('should return a merge_request', function(done) {
21+
client.merge_requests.get({
22+
id: 65,
23+
merge_request_id: 142
24+
}, function(err, row) {
25+
should.not.exists(err);
26+
row.id.should.equal(142);
27+
row.should.have.keys('id', 'iid', 'project_id', 'target_branch', 'source_branch',
28+
'title', 'state', 'upvotes', 'downvotes', 'description', 'author', 'assignee',
29+
'source_project_id', 'target_project_id');
30+
done();
31+
});
32+
});
33+
34+
});
35+
});

0 commit comments

Comments
 (0)