diff options
Diffstat (limited to 'spec/models/custom_emoji_spec.rb')
-rw-r--r-- | spec/models/custom_emoji_spec.rb | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/spec/models/custom_emoji_spec.rb b/spec/models/custom_emoji_spec.rb index 62380299ea0..41ce480b02f 100644 --- a/spec/models/custom_emoji_spec.rb +++ b/spec/models/custom_emoji_spec.rb @@ -22,6 +22,15 @@ RSpec.describe CustomEmoji do expect(new_emoji.errors.messages).to eq(name: ["#{emoji_name} is already being used for another emoji"]) end + it 'disallows very long invalid emoji name without regular expression backtracking issues' do + new_emoji = build(:custom_emoji, name: 'a' * 10000 + '!', group: group) + + Timeout.timeout(1) do + expect(new_emoji).not_to be_valid + expect(new_emoji.errors.messages).to eq(name: ["is too long (maximum is 36 characters)", "is invalid"]) + end + end + it 'disallows duplicate custom emoji names within namespace' do old_emoji = create(:custom_emoji, group: group) new_emoji = build(:custom_emoji, name: old_emoji.name, namespace: old_emoji.namespace, group: group) |