xan_markup 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 6c9cac59c7bc0bd578dac5751d30f416645cb220
4
+ data.tar.gz: 4739e35d7e01e3db54049dde6c250490413b0547
5
+ SHA512:
6
+ metadata.gz: 52c8ac1ebd69f0097755bd6151f2ea049d18fc8bf7ba008e2ff7544c4eda8f287d1c0c7aefe615588a595bfb0e61c7328d660ba3996d06da855a8fd746cc2811
7
+ data.tar.gz: e9b0a6c7ec66882f2f585673ffa70c3ac232a8bc51cc20f80e77ea65ed28d78616f07ad21b9017ec1503535f948e3cb4f2a79a7c4f10e4e5c692f839c2ae9fc1
data/Gemfile CHANGED
@@ -6,9 +6,8 @@ source "http://rubygems.org"
6
6
  # Add dependencies to develop your gem here.
7
7
  # Include everything needed to run rake, tests, features, etc.
8
8
  group :development do
9
- gem "rspec", ">= 2.3.0"
10
- gem "bundler", ">= 1.0.0"
11
- gem "jeweler", ">= 1.6.3"
12
- gem "rcov", ">= 0"
9
+ gem "rspec"
10
+ gem "bundler"
11
+ gem "jeweler"
13
12
  gem "rdoc"
14
13
  end
data/Gemfile.lock CHANGED
@@ -1,30 +1,29 @@
1
1
  GEM
2
2
  remote: http://rubygems.org/
3
3
  specs:
4
- diff-lcs (1.1.2)
4
+ diff-lcs (1.2.1)
5
5
  git (1.2.5)
6
- jeweler (1.6.3)
6
+ jeweler (1.8.4)
7
7
  bundler (~> 1.0)
8
8
  git (>= 1.2.5)
9
9
  rake
10
- rake (0.9.2)
11
- rcov (0.9.9)
12
- rdoc (3.8)
13
- rspec (2.6.0)
14
- rspec-core (~> 2.6.0)
15
- rspec-expectations (~> 2.6.0)
16
- rspec-mocks (~> 2.6.0)
17
- rspec-core (2.6.4)
18
- rspec-expectations (2.6.0)
19
- diff-lcs (~> 1.1.2)
20
- rspec-mocks (2.6.0)
10
+ rdoc
11
+ rake (10.0.3)
12
+ rdoc (4.0.0)
13
+ rspec (2.13.0)
14
+ rspec-core (~> 2.13.0)
15
+ rspec-expectations (~> 2.13.0)
16
+ rspec-mocks (~> 2.13.0)
17
+ rspec-core (2.13.1)
18
+ rspec-expectations (2.13.0)
19
+ diff-lcs (>= 1.1.3, < 2.0)
20
+ rspec-mocks (2.13.0)
21
21
 
22
22
  PLATFORMS
23
23
  ruby
24
24
 
25
25
  DEPENDENCIES
26
- bundler (>= 1.0.0)
27
- jeweler (>= 1.6.3)
28
- rcov
26
+ bundler
27
+ jeweler
29
28
  rdoc
30
- rspec (>= 2.3.0)
29
+ rspec
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.1
1
+ 0.1.2
@@ -3,10 +3,10 @@ module XanMarkup
3
3
  QuotedString = /"[^"]+"|'[^']+'/
4
4
  QuotedFragment = /#{QuotedString}|(?:[^\s,\|'"]|#{QuotedString})+/
5
5
  TagAttributes = /(\w+)\s*\=\s*(#{QuotedFragment})/
6
- CleanAttributeValue = /^("|')|("|')$/
6
+ CleanAttributeValue = /^("|')|("|')$/
7
7
  module Helper
8
8
  def markupize(content)
9
- content.to_s.dup.gsub(MarkupSyntax) do |markup|
9
+ content.to_s.dup.to_str.gsub(MarkupSyntax) do |markup|
10
10
  args = {}
11
11
  tag = $1.split.first
12
12
  method = "markup_#{tag}"
@@ -14,7 +14,7 @@ module XanMarkup
14
14
  args[key.to_sym] = value.gsub(CleanAttributeValue, "")
15
15
  end
16
16
  if respond_to?(method)
17
- (args.empty? ? send(method) : send(method, args)).to_s
17
+ (args.empty? ? send(method) : send(method, args)).to_s
18
18
  else
19
19
  "missing tag: #{tag}"
20
20
  end
@@ -4,59 +4,75 @@ class XanMarkup::HelperTest
4
4
  include XanMarkup::Helper
5
5
  end
6
6
 
7
+ class SafeBuffer < String
8
+ def gsub(*args, &block)
9
+ super
10
+ end
11
+ def to_s
12
+ self
13
+ end
14
+
15
+ end
16
+
7
17
  describe XanMarkup::Helper do
8
18
  let(:helper) { XanMarkup::HelperTest.new }
9
-
19
+
10
20
  it "It should call property method when found tag" do
11
21
  helper.should_receive(:markup_test)
12
22
  helper.markupize("this is markup {{test}} tag")
13
23
  end
14
-
24
+
15
25
  it "It should property parse one parameter" do
16
26
  helper.should_receive(:markup_test).with(:name => "xan")
17
27
  helper.markupize('this is markup {{test name="xan"}} tag')
18
28
  end
19
-
29
+
20
30
  it "It should property parse two parameters" do
21
31
  helper.should_receive(:markup_test).with(:name => "xan", :next => "b")
22
32
  helper.markupize('this is markup {{test name="xan" next="b"}} tag')
23
33
  end
24
-
34
+
25
35
  it "It should allow use single quotes too" do
26
36
  helper.should_receive(:markup_test).with(:name => "xan")
27
37
  helper.markupize("this is markup {{test name='xan'}} tag")
28
38
  end
29
-
39
+
30
40
  it "It should allow skip quotes too" do
31
41
  helper.should_receive(:markup_test).with(:name => "xan")
32
42
  helper.markupize("this is markup {{test name=xan}} tag")
33
43
  end
34
-
44
+
35
45
  it "It should parse two tags property" do
36
46
  helper.should_receive(:markup_test).twice
37
47
  helper.markupize("this is markup {{test}} {{test}} tag")
38
48
  end
39
-
49
+
40
50
  it "It should allow white space at beggining and end tag" do
41
51
  helper.should_receive(:markup_test)
42
52
  helper.markupize("this is markup {{ test }} tag")
43
53
  end
44
-
54
+
45
55
  it "should not raise exception if tag is not defined" do
46
- expect { helper.markupize("this is markup {{ test }} tag") }.should_not raise_error(NoMethodError)
56
+ expect { helper.markupize("this is markup {{ test }} tag") }.to_not raise_error(NoMethodError)
47
57
  end
48
-
58
+
49
59
  it "should return text that tag is not defined" do
50
60
  helper.markupize("this is markup {{ test }} tag").should include("missing tag: test")
51
61
  end
52
-
62
+
53
63
  it "should replace tag with content returned by markup helper" do
54
64
  helper.stub(:markup_best_language).and_return("Ruby")
55
65
  helper.markupize("Best language is: {{ best_language }}").should include("Ruby")
56
66
  end
57
-
58
67
 
59
-
60
-
61
-
68
+
69
+ it "should works with classes that inherance from string" do
70
+ helper.should_receive(:markup_test)
71
+ helper.markupize SafeBuffer.new("{{test}}")
72
+ end
73
+
74
+
75
+
76
+
77
+
62
78
  end
data/xan_markup.gemspec CHANGED
@@ -4,14 +4,14 @@
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
- s.name = %q{xan_markup}
8
- s.version = "0.1.1"
7
+ s.name = "xan_markup"
8
+ s.version = "0.1.2"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Grzegorz Derebecki"]
12
- s.date = %q{2011-07-05}
13
- s.description = %q{Simple tag parser}
14
- s.email = %q{grzegorz.derebecki@fdb.pl}
12
+ s.date = "2013-03-19"
13
+ s.description = "Simple tag parser"
14
+ s.email = "grzegorz.derebecki@fdb.pl"
15
15
  s.extra_rdoc_files = [
16
16
  "LICENSE.txt",
17
17
  "README.md"
@@ -31,33 +31,30 @@ Gem::Specification.new do |s|
31
31
  "spec/xan_markup/helper_spec.rb",
32
32
  "xan_markup.gemspec"
33
33
  ]
34
- s.homepage = %q{http://github.com/madmax/xan_markup}
34
+ s.homepage = "http://github.com/madmax/xan_markup"
35
35
  s.licenses = ["MIT"]
36
36
  s.require_paths = ["lib"]
37
- s.rubygems_version = %q{1.6.2}
38
- s.summary = %q{simple tag parser}
37
+ s.rubygems_version = "2.0.0"
38
+ s.summary = "simple tag parser"
39
39
 
40
40
  if s.respond_to? :specification_version then
41
- s.specification_version = 3
41
+ s.specification_version = 4
42
42
 
43
43
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
44
- s.add_development_dependency(%q<rspec>, [">= 2.3.0"])
45
- s.add_development_dependency(%q<bundler>, [">= 1.0.0"])
46
- s.add_development_dependency(%q<jeweler>, [">= 1.6.3"])
47
- s.add_development_dependency(%q<rcov>, [">= 0"])
44
+ s.add_development_dependency(%q<rspec>, [">= 0"])
45
+ s.add_development_dependency(%q<bundler>, [">= 0"])
46
+ s.add_development_dependency(%q<jeweler>, [">= 0"])
48
47
  s.add_development_dependency(%q<rdoc>, [">= 0"])
49
48
  else
50
- s.add_dependency(%q<rspec>, [">= 2.3.0"])
51
- s.add_dependency(%q<bundler>, [">= 1.0.0"])
52
- s.add_dependency(%q<jeweler>, [">= 1.6.3"])
53
- s.add_dependency(%q<rcov>, [">= 0"])
49
+ s.add_dependency(%q<rspec>, [">= 0"])
50
+ s.add_dependency(%q<bundler>, [">= 0"])
51
+ s.add_dependency(%q<jeweler>, [">= 0"])
54
52
  s.add_dependency(%q<rdoc>, [">= 0"])
55
53
  end
56
54
  else
57
- s.add_dependency(%q<rspec>, [">= 2.3.0"])
58
- s.add_dependency(%q<bundler>, [">= 1.0.0"])
59
- s.add_dependency(%q<jeweler>, [">= 1.6.3"])
60
- s.add_dependency(%q<rcov>, [">= 0"])
55
+ s.add_dependency(%q<rspec>, [">= 0"])
56
+ s.add_dependency(%q<bundler>, [">= 0"])
57
+ s.add_dependency(%q<jeweler>, [">= 0"])
61
58
  s.add_dependency(%q<rdoc>, [">= 0"])
62
59
  end
63
60
  end
metadata CHANGED
@@ -1,72 +1,71 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xan_markup
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
5
- prerelease:
4
+ version: 0.1.2
6
5
  platform: ruby
7
6
  authors:
8
7
  - Grzegorz Derebecki
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2011-07-05 00:00:00.000000000 +02:00
13
- default_executable:
11
+ date: 2013-03-19 00:00:00.000000000 Z
14
12
  dependencies:
15
13
  - !ruby/object:Gem::Dependency
16
14
  name: rspec
17
- requirement: &2151878620 !ruby/object:Gem::Requirement
18
- none: false
15
+ requirement: !ruby/object:Gem::Requirement
19
16
  requirements:
20
- - - ! '>='
17
+ - - '>='
21
18
  - !ruby/object:Gem::Version
22
- version: 2.3.0
19
+ version: '0'
23
20
  type: :development
24
21
  prerelease: false
25
- version_requirements: *2151878620
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '>='
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
26
27
  - !ruby/object:Gem::Dependency
27
28
  name: bundler
28
- requirement: &2151877160 !ruby/object:Gem::Requirement
29
- none: false
29
+ requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ! '>='
31
+ - - '>='
32
32
  - !ruby/object:Gem::Version
33
- version: 1.0.0
33
+ version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
- version_requirements: *2151877160
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
37
41
  - !ruby/object:Gem::Dependency
38
42
  name: jeweler
39
- requirement: &2151876240 !ruby/object:Gem::Requirement
40
- none: false
43
+ requirement: !ruby/object:Gem::Requirement
41
44
  requirements:
42
- - - ! '>='
45
+ - - '>='
43
46
  - !ruby/object:Gem::Version
44
- version: 1.6.3
47
+ version: '0'
45
48
  type: :development
46
49
  prerelease: false
47
- version_requirements: *2151876240
48
- - !ruby/object:Gem::Dependency
49
- name: rcov
50
- requirement: &2151875520 !ruby/object:Gem::Requirement
51
- none: false
50
+ version_requirements: !ruby/object:Gem::Requirement
52
51
  requirements:
53
- - - ! '>='
52
+ - - '>='
54
53
  - !ruby/object:Gem::Version
55
54
  version: '0'
56
- type: :development
57
- prerelease: false
58
- version_requirements: *2151875520
59
55
  - !ruby/object:Gem::Dependency
60
56
  name: rdoc
61
- requirement: &2151874420 !ruby/object:Gem::Requirement
62
- none: false
57
+ requirement: !ruby/object:Gem::Requirement
63
58
  requirements:
64
- - - ! '>='
59
+ - - '>='
65
60
  - !ruby/object:Gem::Version
66
61
  version: '0'
67
62
  type: :development
68
63
  prerelease: false
69
- version_requirements: *2151874420
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - '>='
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
70
69
  description: Simple tag parser
71
70
  email: grzegorz.derebecki@fdb.pl
72
71
  executables: []
@@ -88,33 +87,29 @@ files:
88
87
  - spec/spec_helper.rb
89
88
  - spec/xan_markup/helper_spec.rb
90
89
  - xan_markup.gemspec
91
- has_rdoc: true
92
90
  homepage: http://github.com/madmax/xan_markup
93
91
  licenses:
94
92
  - MIT
93
+ metadata: {}
95
94
  post_install_message:
96
95
  rdoc_options: []
97
96
  require_paths:
98
97
  - lib
99
98
  required_ruby_version: !ruby/object:Gem::Requirement
100
- none: false
101
99
  requirements:
102
- - - ! '>='
100
+ - - '>='
103
101
  - !ruby/object:Gem::Version
104
102
  version: '0'
105
- segments:
106
- - 0
107
- hash: -1804077595733386823
108
103
  required_rubygems_version: !ruby/object:Gem::Requirement
109
- none: false
110
104
  requirements:
111
- - - ! '>='
105
+ - - '>='
112
106
  - !ruby/object:Gem::Version
113
107
  version: '0'
114
108
  requirements: []
115
109
  rubyforge_project:
116
- rubygems_version: 1.6.2
110
+ rubygems_version: 2.0.0
117
111
  signing_key:
118
- specification_version: 3
112
+ specification_version: 4
119
113
  summary: simple tag parser
120
114
  test_files: []
115
+ has_rdoc: