Merge remote-tracking branch 'rassilon/issue-535'

Conflicts:
	lib/jsdoc/tag/dictionary/definitions.js
	test/fixtures/constanttag.js
	test/specs/tags/constanttag.js
This commit is contained in:
Jeff Williams 2013-12-03 21:45:15 -08:00
commit 8bf9db836e
3 changed files with 18 additions and 2 deletions

View File

@ -442,7 +442,7 @@ exports.defineTags = function(dictionary) {
canHaveType: true,
onTagged: function(doclet, tag) {
setDocletKindToTitle(doclet, tag);
setDocletNameToValue(doclet, tag);
setDocletNameToValueName(doclet, tag);
setDocletTypeToValueType(doclet, tag);
}
})

View File

@ -3,3 +3,6 @@ var x;
/** @var foobar */
/** @var {string} baz */
/** @member {Object} */
var y;

View File

@ -2,12 +2,14 @@ describe("@member tag", function() {
var docSet = jasmine.getDocSetFromFile('test/fixtures/membertag.js'),
doc = docSet.getByLongname('x')[0],
doc2 = docSet.getByLongname('foobar')[0],
doc3 = docSet.getByLongname('baz')[0];
doc3 = docSet.getByLongname('baz')[0],
doc4 = docSet.getByLongname('y')[0];
it("sets the doclet's 'kind' property to 'member'", function() {
expect(doc.kind).toBe('member');
expect(doc2.kind).toBe('member');
expect(doc3.kind).toBe('member');
expect(doc4.kind).toBe('member');
});
it("If specified with a name, sets the doclet's name property", function() {
@ -22,4 +24,15 @@ describe("@member tag", function() {
expect(doc3.type.names.length).toBe(1);
expect(doc3.type.names[0]).toBe('string');
});
it("If specified with a type but no name, sets the doclet's name from the following JavaScript syntax", function() {
expect(doc4.name).toBe('y');
});
it("If specified with a type but no name, sets the doclet's type appropriately", function() {
expect(doc4.type).toBeDefined();
expect(Array.isArray(doc4.type.names)).toBeTruthy();
expect(doc4.type.names.length).toBe(1);
expect(doc4.type.names[0]).toBe('Object');
});
});