forked from OSchip/llvm-project
				
			
		
			
				
	
	
		
			44 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Python
		
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Python
		
	
	
	
from clang.cindex import TokenKind
 | 
						|
from nose.tools import eq_
 | 
						|
from nose.tools import ok_
 | 
						|
from nose.tools import raises
 | 
						|
 | 
						|
def test_constructor():
 | 
						|
    """Ensure TokenKind constructor works as expected."""
 | 
						|
 | 
						|
    t = TokenKind(5, 'foo')
 | 
						|
 | 
						|
    eq_(t.value, 5)
 | 
						|
    eq_(t.name, 'foo')
 | 
						|
 | 
						|
@raises(ValueError)
 | 
						|
def test_bad_register():
 | 
						|
    """Ensure a duplicate value is rejected for registration."""
 | 
						|
 | 
						|
    TokenKind.register(2, 'foo')
 | 
						|
 | 
						|
@raises(ValueError)
 | 
						|
def test_unknown_value():
 | 
						|
    """Ensure trying to fetch an unknown value raises."""
 | 
						|
 | 
						|
    TokenKind.from_value(-1)
 | 
						|
 | 
						|
def test_registration():
 | 
						|
    """Ensure that items registered appear as class attributes."""
 | 
						|
    ok_(hasattr(TokenKind, 'LITERAL'))
 | 
						|
    literal = TokenKind.LITERAL
 | 
						|
 | 
						|
    ok_(isinstance(literal, TokenKind))
 | 
						|
 | 
						|
def test_from_value():
 | 
						|
    """Ensure registered values can be obtained from from_value()."""
 | 
						|
    t = TokenKind.from_value(3)
 | 
						|
    ok_(isinstance(t, TokenKind))
 | 
						|
    eq_(t, TokenKind.LITERAL)
 | 
						|
 | 
						|
def test_repr():
 | 
						|
    """Ensure repr() works."""
 | 
						|
 | 
						|
    r = repr(TokenKind.LITERAL)
 | 
						|
    eq_(r, 'TokenKind.LITERAL')
 |