Index: tracing/third_party/tvcm/tvcm/parse_html_deps_unittest.py |
diff --git a/tracing/third_party/tvcm/tvcm/parse_html_deps_unittest.py b/tracing/third_party/tvcm/tvcm/parse_html_deps_unittest.py |
deleted file mode 100755 |
index 81cc66d0f7bf2938fc98b42002c2c3d3457f36d9..0000000000000000000000000000000000000000 |
--- a/tracing/third_party/tvcm/tvcm/parse_html_deps_unittest.py |
+++ /dev/null |
@@ -1,275 +0,0 @@ |
-#!/usr/bin/env python |
-# Copyright (c) 2013 The Chromium Authors. All rights reserved. |
-# Use of this source code is governed by a BSD-style license that can be |
-# found in the LICENSE file. |
- |
-import re |
-import unittest |
- |
-from tvcm import parse_html_deps |
-from tvcm import html_generation_controller |
- |
- |
-class ParseTests(unittest.TestCase): |
- def test_parse_empty(self): |
- parser = parse_html_deps.HTMLModuleParser() |
- module = parser.Parse('') |
- self.assertEquals([], module.scripts_external) |
- self.assertEquals([], module.inline_scripts) |
- self.assertEquals([], module.stylesheets) |
- self.assertEquals([], module.imports) |
- |
- def test_parse_none(self): |
- parser = parse_html_deps.HTMLModuleParser() |
- module = parser.Parse(None) |
- self.assertEquals([], module.scripts_external) |
- self.assertEquals([], module.inline_scripts) |
- self.assertEquals([], module.stylesheets) |
- self.assertEquals([], module.imports) |
- |
- def test_parse_script_src_basic(self): |
- html = """<!DOCTYPE html> |
- <html> |
- <head> |
- <script src="polymer.min.js"></script> |
- <script src="foo.js"></script> |
- </head> |
- <body> |
- </body> |
- </html>""" |
- parser = parse_html_deps.HTMLModuleParser() |
- module = parser.Parse(html) |
- self.assertEquals(['polymer.min.js', 'foo.js'], module.scripts_external) |
- self.assertEquals([], module.inline_scripts) |
- self.assertEquals([], module.stylesheets) |
- self.assertEquals([], module.imports) |
- self.assertTrue(module.has_decl) |
- self.assertNotIn( |
- 'DOCTYPE html', |
- module.html_contents_without_links_and_script) |
- |
- def test_parse_link_rel_import(self): |
- html = """<!DOCTYPE html> |
- <html> |
- <head> |
- <link rel="import" href="x-foo.html"> |
- </head> |
- <body> |
- </body> |
- </html>""" |
- parser = parse_html_deps.HTMLModuleParser() |
- module = parser.Parse(html) |
- self.assertEquals([], module.scripts_external) |
- self.assertEquals([], module.inline_scripts) |
- self.assertEquals([], module.stylesheets) |
- self.assertEquals(['x-foo.html'], module.imports) |
- self.assertTrue(module.has_decl) |
- |
- def test_parse_script_inline(self): |
- html = """<polymer-element name="tk-element-proto"> |
- <template> |
- </template> |
- <script> |
- tvcm.require("foo"); |
- tvcm.require('bar'); |
- </script> |
- </polymer-element>""" |
- |
- parser = parse_html_deps.HTMLModuleParser() |
- module = parser.Parse(html) |
- self.assertEquals([], module.scripts_external) |
- self.assertEquals(1, len(module.inline_scripts)) |
- self.assertEquals([], module.stylesheets) |
- self.assertEquals([], module.imports) |
- self.assertFalse(module.has_decl) |
- |
- script0 = module.inline_scripts[0] |
- val = re.sub(r'\s+', '', script0.contents) |
- inner_script = """tvcm.require("foo");tvcm.require('bar');""" |
- self.assertEquals(inner_script, val) |
- |
- self.assertEquals(3, len(script0.open_tags)) |
- self.assertEquals('polymer-element', script0.open_tags[2].tag) |
- |
- self.assertNotIn( |
- 'tvcm.require("foo");', |
- module.html_contents_without_links_and_script) |
- |
- def test_parse_script_src_sripping(self): |
- html = """ |
-<script src="blah.js"></script> |
-""" |
- module = parse_html_deps.HTMLModuleParser().Parse(html) |
- self.assertEquals('', |
- module.html_contents_without_links_and_script) |
- |
- def test_parse_link_rel_stylesheet(self): |
- html = """<polymer-element name="hi"> |
- <template> |
- <link rel="stylesheet" href="frameworkstyles.css"> |
- </template> |
- </polymer-element>""" |
- parser = parse_html_deps.HTMLModuleParser() |
- module = parser.Parse(html) |
- self.assertEquals([], module.scripts_external) |
- self.assertEquals([], module.inline_scripts) |
- self.assertEquals(['frameworkstyles.css'], module.stylesheets) |
- self.assertEquals([], module.imports) |
- self.assertFalse(module.has_decl) |
- |
- class Ctl(html_generation_controller.HTMLGenerationController): |
- def GetHTMLForStylesheetHRef(self, href): |
- if href == 'frameworkstyles.css': |
- return '<style>FRAMEWORK</style>' |
- return None |
- |
- gen_html = module.GenerateHTML(Ctl()) |
- ghtm = """<polymer-element name="hi"> |
- <template> |
- <style>FRAMEWORK</style> |
- </template> |
- </polymer-element>""" |
- self.assertEquals(ghtm, gen_html) |
- |
- def test_parse_inline_style(self): |
- html = """<style> |
- hello |
-</style>""" |
- module = parse_html_deps.HTMLModuleParser().Parse(html) |
- self.assertEquals(html, module.html_contents_without_links_and_script) |
- |
- class Ctl(html_generation_controller.HTMLGenerationController): |
- def GetHTMLForInlineStylesheet(self, contents): |
- if contents == '\n hello\n': |
- return '\n HELLO\n' |
- return None |
- |
- gen_html = module.GenerateHTML(Ctl()) |
- ghtm = """<style> |
- HELLO |
-</style>""" |
- self.assertEquals(ghtm, gen_html) |
- |
- def test_parse_style_import(self): |
- html = """<polymer-element name="x-blink"> |
- <template> |
- <style> |
- @import url(awesome.css); |
- </style> |
- </template> |
- </polymer-element>""" |
- parser = parse_html_deps.HTMLModuleParser() |
- self.assertRaises(lambda: parser.Parse(html)) |
- |
- def test_nested_templates(self): |
- orig_html = """<template> |
- <template> |
- <div id="foo"></div> |
- </template> |
- </template>""" |
- parser = parse_html_deps.HTMLModuleParser() |
- res = parser.Parse(orig_html) |
- html = res.html_contents_without_links_and_script |
- self.assertEquals(html, orig_html) |
- |
- def test_html_contents_basic(self): |
- html = """<a b="c">d</a>""" |
- parser = parse_html_deps.HTMLModuleParser() |
- module = parser.Parse(html) |
- self.assertEquals(html, module.html_contents_without_links_and_script) |
- |
- def test_html_contents_with_entity(self): |
- html = """<a>→</a>""" |
- parser = parse_html_deps.HTMLModuleParser() |
- module = parser.Parse(html) |
- self.assertEquals(u'<a>\u2192</a>', |
- module.html_contents_without_links_and_script) |
- |
- def test_html_content_with_charref(self): |
- html = """<a>></a>""" |
- parser = parse_html_deps.HTMLModuleParser() |
- module = parser.Parse(html) |
- self.assertEquals('<a>></a>', |
- module.html_contents_without_links_and_script) |
- |
- def test_html_content_start_end_br(self): |
- html = """<a><br /></a>""" |
- parser = parse_html_deps.HTMLModuleParser() |
- module = parser.Parse(html) |
- self.assertEquals('<a><br/></a>', |
- module.html_contents_without_links_and_script) |
- |
- def test_html_content_start_end_img(self): |
- html = """<a><img src="foo.png" id="bar" /></a>""" |
- parser = parse_html_deps.HTMLModuleParser() |
- module = parser.Parse(html) |
- self.assertEquals('<a><img id="bar" src="foo.png"/></a>', |
- module.html_contents_without_links_and_script) |
- |
- def test_html_contents_with_link_stripping(self): |
- html = """<a b="c">d</a> |
- <link rel="import" href="x-foo.html">""" |
- parser = parse_html_deps.HTMLModuleParser() |
- module = parser.Parse(html) |
- self.assertEquals("""<a b="c">d</a>""", |
- module.html_contents_without_links_and_script.strip()) |
- |
- def test_html_contents_with_style_link_stripping(self): |
- html = """<a b="c">d</a> |
- <link rel="stylesheet" href="frameworkstyles.css">""" |
- parser = parse_html_deps.HTMLModuleParser() |
- module = parser.Parse(html) |
- self.assertEquals("""<a b="c">d</a>""", |
- module.html_contents_without_links_and_script.strip()) |
- |
- def test_br_does_not_raise(self): |
- html = """<div><br/></div>""" |
- parser = parse_html_deps.HTMLModuleParser() |
- parser.Parse(html) |
- |
- def test_p_does_not_raises(self): |
- html = """<div></p></div>""" |
- parser = parse_html_deps.HTMLModuleParser() |
- parser.Parse(html) |
- |
- def test_link_endlink_does_not_raise(self): |
- html = """<link rel="stylesheet" href="foo.css"></link>""" |
- parser = parse_html_deps.HTMLModuleParser() |
- parser.Parse(html) |
- |
- def test_link_script_does_not_raise(self): |
- html = """<link rel="stylesheet" href="foo.css"> |
- <script> |
- </script>""" |
- parser = parse_html_deps.HTMLModuleParser() |
- parser.Parse(html) |
- |
- def test_script_with_script_inside_as_js(self): |
- html = """<script> |
- var html_lines = [ |
- '<script>', |
- '<\/script>', |
- ]; |
- </script>""" |
- parser = parse_html_deps.HTMLModuleParser() |
- parser.Parse(html) |
- |
- def test_invalid_script_escaping_raises(self): |
- html = """<script> |
- var html_lines = [ |
- '<script>', |
- '< /script>', |
- ]; |
- </script>""" |
- parser = parse_html_deps.HTMLModuleParser() |
- |
- def DoIt(): |
- parser.Parse(html) |
- self.assertRaises(Exception, DoIt) |
- |
- def test_script_with_cdata(self): |
- html = """<script></h2></script>""" |
- parser = parse_html_deps.HTMLModuleParser() |
- module = parser.Parse(html) |
- self.assertEquals(1, len(module.inline_scripts)) |
- self.assertEquals('</h2>', module.inline_scripts[0].contents) |