mirror of
				https://github.com/ruby/ruby.git
				synced 2022-11-09 12:17:21 -05:00 
			
		
		
		
	
		
			
				
	
	
		
			58 lines
		
	
	
	
		
			2 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
	
		
			2 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| # frozen_string_literal: true
 | |
| require_relative 'helper'
 | |
| 
 | |
| class TestRDocTokenStream < RDoc::TestCase
 | |
| 
 | |
|   def test_class_to_html
 | |
|     tokens = [
 | |
|       { :line_no => 0, :char_no => 0, :kind => :on_const, :text => 'CONSTANT' },
 | |
|       { :line_no => 0, :char_no => 0, :kind => :on_kw, :text => 'KW' },
 | |
|       { :line_no => 0, :char_no => 0, :kind => :on_ivar, :text => 'IVAR' },
 | |
|       { :line_no => 0, :char_no => 0, :kind => :on_op, :text => 'Op' },
 | |
|       { :line_no => 0, :char_no => 0, :kind => :on_ident, :text => 'Id' },
 | |
|       { :line_no => 0, :char_no => 0, :kind => :on_backref, :text => 'Node' },
 | |
|       { :line_no => 0, :char_no => 0, :kind => :on_comment, :text => 'COMMENT' },
 | |
|       { :line_no => 0, :char_no => 0, :kind => :on_regexp, :text => 'REGEXP' },
 | |
|       { :line_no => 0, :char_no => 0, :kind => :on_tstring, :text => 'STRING' },
 | |
|       { :line_no => 0, :char_no => 0, :kind => :on_int, :text => 'Val' },
 | |
|       { :line_no => 0, :char_no => 0, :kind => :on_unknown, :text => '\\' }
 | |
|     ]
 | |
| 
 | |
|     expected = [
 | |
|       '<span class="ruby-constant">CONSTANT</span>',
 | |
|       '<span class="ruby-keyword">KW</span>',
 | |
|       '<span class="ruby-ivar">IVAR</span>',
 | |
|       '<span class="ruby-operator">Op</span>',
 | |
|       '<span class="ruby-identifier">Id</span>',
 | |
|       '<span class="ruby-node">Node</span>',
 | |
|       '<span class="ruby-comment">COMMENT</span>',
 | |
|       '<span class="ruby-regexp">REGEXP</span>',
 | |
|       '<span class="ruby-string">STRING</span>',
 | |
|       '<span class="ruby-value">Val</span>',
 | |
|       '\\'
 | |
|     ].join
 | |
| 
 | |
|     assert_equal expected, RDoc::TokenStream.to_html(tokens)
 | |
|   end
 | |
| 
 | |
|   def test_class_to_html_empty
 | |
|     assert_equal '', RDoc::TokenStream.to_html([])
 | |
|   end
 | |
| 
 | |
|   def test_tokens_to_s
 | |
|     foo = Class.new do
 | |
|       include RDoc::TokenStream
 | |
| 
 | |
|       def initialize
 | |
|         @token_stream = [
 | |
|           { line_no: 0, char_no: 0, kind: :on_ident,   text: "foo" },
 | |
|           { line_no: 0, char_no: 0, kind: :on_sp,      text: " " },
 | |
|           { line_no: 0, char_no: 0, kind: :on_tstring, text: "'bar'" },
 | |
|         ]
 | |
|       end
 | |
|     end.new
 | |
| 
 | |
|     assert_equal "foo 'bar'", foo.tokens_to_s
 | |
|   end
 | |
| end
 | |
| 
 | 
