Allow creating tags where another one with same prefix exists

When creating a new entry, compare the full tag name and not only the
prefix.
This commit is contained in:
Vincent Petry 2016-02-02 10:42:35 +01:00
parent 382b18e85e
commit a7dfc70e2e
2 changed files with 12 additions and 1 deletions

View File

@ -320,7 +320,9 @@
*/
_createSearchChoice: function(term) {
term = term.trim();
if (this.collection.filterByName(term).length) {
if (this.collection.filter(function(entry) {
return entry.get('name') === term;
}).length) {
return;
}
if (!this._newTag) {

View File

@ -85,6 +85,15 @@ describe('OC.SystemTags.SystemTagsInputField tests', function() {
expect(result.userVisible).toEqual(true);
expect(result.userAssignable).toEqual(true);
});
it('creates dummy tag when user types non-matching name even with prefix of existing tag', function() {
var opts = select2Stub.getCall(0).args[0];
var result = opts.createSearchChoice('ab');
expect(result.id).toEqual(-1);
expect(result.name).toEqual('ab');
expect(result.isNew).toEqual(true);
expect(result.userVisible).toEqual(true);
expect(result.userAssignable).toEqual(true);
});
it('creates the real tag and fires select event after user selects the dummy tag', function() {
var selectHandler = sinon.stub();
view.on('select', selectHandler);