Ejemplo n.º 1
0
    def test_simple_cases(self):
        self.assertEqual(tokenize_name('foo'), ['foo'])

        self.assertEqual(tokenize_name('fooBar'), ['foo', 'Bar'])

        self.assertEqual(tokenize_name('fooBarBaz'), ['foo', 'Bar', 'Baz'])

        self.assertEqual(tokenize_name('Baz'), ['Baz'])

        self.assertEqual(tokenize_name(''), [])

        self.assertEqual(tokenize_name('FOO'), ['FOO'])

        self.assertEqual(tokenize_name('foo2'), ['foo', '2'])
Ejemplo n.º 2
0
    def test_tricky_cases(self):
        self.assertEqual(tokenize_name('XMLHttpRequest'),
                         ['XML', 'Http', 'Request'])

        self.assertEqual(tokenize_name('HTMLElement'), ['HTML', 'Element'])

        self.assertEqual(tokenize_name('WebGLRenderingContext'),
                         ['WebGL', 'Rendering', 'Context'])

        self.assertEqual(tokenize_name('CanvasRenderingContext2D'),
                         ['Canvas', 'Rendering', 'Context', '2D'])
        self.assertEqual(
            tokenize_name('CanvasRenderingContext2DAPITest'),
            ['Canvas', 'Rendering', 'Context', '2D', 'API', 'Test'])

        self.assertEqual(tokenize_name('SVGSVGElement'),
                         ['SVG', 'SVG', 'Element'])

        self.assertEqual(tokenize_name('CanvasRenderingContext2D'),
                         ['Canvas', 'Rendering', 'Context', '2D'])

        self.assertEqual(tokenize_name('CSSURLImageValue'),
                         ['CSS', 'URL', 'Image', 'Value'])
        self.assertEqual(tokenize_name('CSSPropertyAPID'),
                         ['CSS', 'Property', 'API', 'D'])
        self.assertEqual(tokenize_name('AXARIAGridCell'),
                         ['AX', 'ARIA', 'Grid', 'Cell'])

        self.assertEqual(tokenize_name('CDATASection'), ['CDATA', 'Section'])

        self.assertEqual(tokenize_name('ASCIICType'), ['ASCII', 'CType'])
        self.assertEqual(tokenize_name('CString'), ['CString'])

        self.assertEqual(tokenize_name('HTMLDListElement'),
                         ['HTML', 'DList', 'Element'])
        self.assertEqual(tokenize_name('HTMLOListElement'),
                         ['HTML', 'OList', 'Element'])
        self.assertEqual(tokenize_name('HTMLIFrameElement'),
                         ['HTML', 'IFrame', 'Element'])
        self.assertEqual(tokenize_name('HTMLPlugInElement'),
                         ['HTML', 'PlugIn', 'Element'])

        # No special handling for OptGroup, FieldSet, and TextArea.
        self.assertEqual(tokenize_name('HTMLOptGroupElement'),
                         ['HTML', 'Opt', 'Group', 'Element'])
        self.assertEqual(tokenize_name('HTMLFieldSetElement'),
                         ['HTML', 'Field', 'Set', 'Element'])
        self.assertEqual(tokenize_name('HTMLTextAreaElement'),
                         ['HTML', 'Text', 'Area', 'Element'])

        self.assertEqual(tokenize_name('Path2D'), ['Path', '2D'])
        self.assertEqual(tokenize_name('Point2D'), ['Point', '2D'])
        self.assertEqual(tokenize_name('CanvasRenderingContext2DState'),
                         ['Canvas', 'Rendering', 'Context', '2D', 'State'])
        self.assertEqual(tokenize_name('Accelerated2dCanvas'),
                         ['Accelerated', '2d', 'Canvas'])

        self.assertEqual(tokenize_name('RTCDTMFSender'),
                         ['RTC', 'DTMF', 'Sender'])

        self.assertEqual(tokenize_name('WebGLCompressedTextureS3TCsRGB'),
                         ['WebGL', 'Compressed', 'Texture', 'S3TC', 'sRGB'])
        self.assertEqual(tokenize_name('WebGL2CompressedTextureETC1'),
                         ['WebGL2', 'Compressed', 'Texture', 'ETC1'])
        self.assertEqual(tokenize_name('EXTsRGB'), ['EXT', 'sRGB'])
        # 'PVRTC' contains a special token 'RTC', but it should be a
        # single token.
        self.assertEqual(tokenize_name('WebGLCompressedTexturePVRTC'),
                         ['WebGL', 'Compressed', 'Texture', 'PVRTC'])

        self.assertEqual(tokenize_name('SVGFEBlendElement'),
                         ['SVG', 'FE', 'Blend', 'Element'])
        self.assertEqual(tokenize_name('SVGMPathElement'),
                         ['SVG', 'MPath', 'Element'])
        self.assertEqual(tokenize_name('SVGTSpanElement'),
                         ['SVG', 'TSpan', 'Element'])
        self.assertEqual(tokenize_name('SVGURIReference'),
                         ['SVG', 'URI', 'Reference'])

        self.assertEqual(tokenize_name('UTF16TextIterator'),
                         ['UTF16', 'Text', 'Iterator'])
        self.assertEqual(tokenize_name('UTF8Decoder'), ['UTF8', 'Decoder'])
        self.assertEqual(tokenize_name('Uint8Array'), ['Uint8', 'Array'])
        self.assertEqual(tokenize_name('DOMWindowBase64'),
                         ['DOM', 'Window', 'Base64'])
        self.assertEqual(tokenize_name('TextCodecLatin1'),
                         ['Text', 'Codec', 'Latin1'])
        self.assertEqual(tokenize_name('V8BindingForCore'),
                         ['V8', 'Binding', 'For', 'Core'])
        self.assertEqual(tokenize_name('V8DOMRect'), ['V8', 'DOM', 'Rect'])
        self.assertEqual(tokenize_name('String16MojomTraits'),
                         ['String16', 'Mojom', 'Traits'])

        self.assertEqual(tokenize_name('V0InsertionPoint'),
                         ['V0', 'Insertion', 'Point'])
        self.assertEqual(tokenize_name('ShadowDOMV0Test'),
                         ['Shadow', 'DOM', 'V0', 'Test'])
        self.assertEqual(tokenize_name('ElementShadowV0'),
                         ['Element', 'Shadow', 'V0'])
        self.assertEqual(tokenize_name('StubChromeClientForSPv2'),
                         ['Stub', 'Chrome', 'Client', 'For', 'SPv2'])

        self.assertEqual(tokenize_name('SQLiteAuthorizer'),
                         ['SQLite', 'Authorizer'])
        self.assertEqual(tokenize_name('XPathEvaluator'),
                         ['XPath', 'Evaluator'])

        self.assertEqual(tokenize_name('IsXHTMLDocument'),
                         ['Is', 'XHTML', 'Document'])
        self.assertEqual(tokenize_name('isHTMLDocument'),
                         ['is', 'HTML', 'Document'])

        self.assertEqual(tokenize_name('matrix3d'), ['matrix', '3d'])

        self.assertEqual(tokenize_name('uint8ArrayMember'),
                         ['uint8', 'Array', 'Member'])
        self.assertEqual(tokenize_name('webgl2Element'), ['webgl2', 'Element'])
        self.assertEqual(tokenize_name('webGL2Element'), ['webGL2', 'Element'])
        self.assertEqual(tokenize_name('xssError'), ['xss', 'Error'])

        self.assertEqual(tokenize_name('FileURLs'), ['File', 'URLs'])
Ejemplo n.º 3
0
 def test_ignoring_characters(self):
     self.assertEqual(tokenize_name('Animation.idl'), ['Animation', 'idl'])
     self.assertEqual(tokenize_name('-webkit-appearance'),
                      ['webkit', 'appearance'])
     self.assertEqual(tokenize_name('  foo_bar!#"$'), ['foo', 'bar'])