summaryrefslogtreecommitdiff
path: root/spec/support/shared_examples/malicious_regexp_shared_examples.rb
blob: 65026f1d7c08c505ff2a279082b6259b8ccb3755 (plain)
1
2
3
4
5
6
7
8
9
10
require 'timeout'

shared_examples 'malicious regexp' do
  let(:malicious_text)  { 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa!' }
  let(:malicious_regexp) { '(?i)^(([a-z])+.)+[A-Z]([a-z])+$' }

  it 'takes under a second' do
    expect { Timeout.timeout(1) { subject } }.not_to raise_error
  end
end