redactor 0.2.0 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +2 -2
- data/lib/redactor.rb +1 -1
- data/lib/redactor/rule.rb +2 -2
- data/lib/redactor/version.rb +1 -1
- data/spec/lib/redactor/rule_spec.rb +5 -5
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2dc4d51b5d157b41a6e4ba9f6185368561e363dc
|
4
|
+
data.tar.gz: bf94481e10d10c4f78cb696e1a83b2bcd7979ac0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2b673f6b4b59886256e366eba304d59709dad31f6cc6296f25ba790ac175d95b686efd125f449479d98977d463b25523ed5500bab62cf47ca98aff113957d1b2
|
7
|
+
data.tar.gz: 7a4c930999fe2e2ee1cda7778bf3d58cd879b84b73c502b304b452a56466ae437fe45caec0bccc46fc7c18a30fda2c38ced23d92ad1a206860b0aa47a381b692
|
data/README.md
CHANGED
@@ -10,7 +10,7 @@ require 'redactor'
|
|
10
10
|
input = 'To ride a kayak, contact me: tim.petricola@gmail.com or 1 234 567 8901.'
|
11
11
|
|
12
12
|
# these rules are only good enough for an example
|
13
|
-
|
13
|
+
redactor = Redactor.new do
|
14
14
|
# US phone
|
15
15
|
rule :phone, /(\+?1[ \.-]?)?\(?\d{3}\)?[ \.-]?\d{3}[ \.-]?\d{4}/
|
16
16
|
|
@@ -23,7 +23,7 @@ input = 'To ride a kayak, contact me: tim.petricola@gmail.com or 1 234 567 8901.
|
|
23
23
|
palindromes = words.select { |w| w.length > 2 && w == w.reverse }
|
24
24
|
palindromes.map do |w|
|
25
25
|
start = input.index(w)
|
26
|
-
finish = start + w.length
|
26
|
+
finish = start + w.length - 1
|
27
27
|
[start, finish]
|
28
28
|
end
|
29
29
|
end
|
data/lib/redactor.rb
CHANGED
@@ -31,7 +31,7 @@ class Redactor
|
|
31
31
|
def format(text, &block)
|
32
32
|
extract(text).each_with_object(text.clone) do |extract, redacted_text|
|
33
33
|
sub = block_given? ? block.call(extract) : default_replacement
|
34
|
-
redacted_text[extract.start
|
34
|
+
redacted_text[extract.start..extract.finish] = sub
|
35
35
|
end
|
36
36
|
end
|
37
37
|
end
|
data/lib/redactor/rule.rb
CHANGED
@@ -28,7 +28,7 @@ class Redactor
|
|
28
28
|
rule: self,
|
29
29
|
value: match[0],
|
30
30
|
start: match.begin(0),
|
31
|
-
finish: match.end(0)
|
31
|
+
finish: match.end(0) - 1
|
32
32
|
)
|
33
33
|
end
|
34
34
|
end
|
@@ -39,7 +39,7 @@ class Redactor
|
|
39
39
|
|
40
40
|
Extract.new(
|
41
41
|
rule: self,
|
42
|
-
value: input[start
|
42
|
+
value: input[start..finish],
|
43
43
|
start: start,
|
44
44
|
finish: finish
|
45
45
|
)
|
data/lib/redactor/version.rb
CHANGED
@@ -38,7 +38,7 @@ describe Redactor::Rule do
|
|
38
38
|
expect(extract.rule).to be rule
|
39
39
|
expect(extract.value).to eq 'foo bar'
|
40
40
|
expect(extract.start).to eq 6
|
41
|
-
expect(extract.finish).to eq
|
41
|
+
expect(extract.finish).to eq 12
|
42
42
|
end
|
43
43
|
|
44
44
|
it 'returns values and positions of others matches' do
|
@@ -46,7 +46,7 @@ describe Redactor::Rule do
|
|
46
46
|
expect(extract.rule).to be rule
|
47
47
|
expect(extract.value).to eq 'foobar'
|
48
48
|
expect(extract.start).to eq 36
|
49
|
-
expect(extract.finish).to eq
|
49
|
+
expect(extract.finish).to eq 41
|
50
50
|
end
|
51
51
|
end
|
52
52
|
|
@@ -61,7 +61,7 @@ describe Redactor::Rule do
|
|
61
61
|
.select { |w| w.length > 2 && w == w.reverse }
|
62
62
|
.map do |word|
|
63
63
|
start = input.index(word)
|
64
|
-
finish = start + word.length
|
64
|
+
finish = start + word.length - 1
|
65
65
|
[start, finish]
|
66
66
|
end
|
67
67
|
end
|
@@ -74,7 +74,7 @@ describe Redactor::Rule do
|
|
74
74
|
expect(extract.rule).to be rule
|
75
75
|
expect(extract.value).to eq 'kayak'
|
76
76
|
expect(extract.start).to eq 9
|
77
|
-
expect(extract.finish).to eq
|
77
|
+
expect(extract.finish).to eq 13
|
78
78
|
end
|
79
79
|
|
80
80
|
it 'returns values and positions of others matches' do
|
@@ -82,7 +82,7 @@ describe Redactor::Rule do
|
|
82
82
|
expect(extract.rule).to be rule
|
83
83
|
expect(extract.value).to eq 'racecar'
|
84
84
|
expect(extract.start).to eq 29
|
85
|
-
expect(extract.finish).to eq
|
85
|
+
expect(extract.finish).to eq 35
|
86
86
|
end
|
87
87
|
end
|
88
88
|
end
|