-
Notifications
You must be signed in to change notification settings - Fork 93
/
spec_helper.rb
96 lines (79 loc) · 1.81 KB
/
spec_helper.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# encoding: UTF-8
# Copyright 2012 Twitter, Inc
# http://www.apache.org/licenses/LICENSE-2.0
require 'rspec'
require 'rspec/autorun' # somehow makes rcov work with rspec
require 'twitter_cldr'
if defined?(RUBY_ENGINE)
if RUBY_ENGINE == "rbx"
require 'rubinius/debugger'
elsif RUBY_ENGINE == "ruby"
require 'pry-nav'
end
end
if RUBY_VERSION <= "1.8.7"
$KCODE = "UTF-8"
require 'oniguruma'
end
if ENV['SCOV']
require 'simplecov'
SimpleCov.start
puts 'Running simplecov'
end
class FastGettext
class << self
@@locale = :en
def locale
@@locale
end
def locale=(new_locale)
@@locale = new_locale
end
end
end
class I18n
class << self
@@locale = :en
def locale
@@locale
end
def locale=(new_locale)
@@locale = new_locale
end
end
end
RSpec.configure do |config|
config.mock_with :rr
config.filter_run(:focus => true)
config.run_all_when_everything_filtered = true
config.filter_run_excluding(:slow => true) unless ENV['FULL_SPEC']
config.before(:each) do
TwitterCldr.reset_locale_fallbacks
TwitterCldr.locale = :en
FastGettext.locale = :en
I18n.locale = :en
end
end
RSpec::Matchers.define :match_normalized do |expected|
match do |actual|
expected.localize.normalize(:using => :NFKC).to_s == actual.localize.normalize(:using => :NFKC).to_s
end
end
RSpec::Matchers.define :exactly_match do |expected|
match do |actual|
if actual.respond_to?(:match)
m = actual.match(expected)
m.to_a.first == expected
else
expected === actual
end
end
end
def check_token_list(got, expected)
expect(got.size).to eq(expected.size)
expected.each_with_index do |exp_hash, index|
exp_hash.each_pair do |exp_key, exp_val|
expect(got[index].send(exp_key)).to eq(exp_val)
end
end
end