File: capture_spec.rb

package info (click to toggle)
ruby-parslet 2.0.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 1,260 kB
  • sloc: ruby: 6,157; sh: 8; javascript: 3; makefile: 3
file content (21 lines) | stat: -rw-r--r-- 519 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
require 'spec_helper'

describe Parslet::Atoms::Capture do
  include Parslet
  
  let(:context) { Parslet::Atoms::Context.new(nil) }
  
  def inject string, parser
    source = Parslet::Source.new(string)
    parser.apply(source, context, true)
  end
  
  it "should capture simple results" do
    inject 'a', str('a').capture(:a)
    context.captures[:a].should == 'a'
  end 
  it "should capture complex results" do
    inject 'a', str('a').as(:b).capture(:a)
    context.captures[:a].should == {:b => 'a'}
  end 
end