diff options
Diffstat (limited to 'testing/web-platform/tests/docs/test-templates.md')
-rw-r--r-- | testing/web-platform/tests/docs/test-templates.md | 135 |
1 files changed, 135 insertions, 0 deletions
diff --git a/testing/web-platform/tests/docs/test-templates.md b/testing/web-platform/tests/docs/test-templates.md new file mode 100644 index 000000000..3738ebf13 --- /dev/null +++ b/testing/web-platform/tests/docs/test-templates.md @@ -0,0 +1,135 @@ +This page contains templates for creating tests. The template syntax +is compatible with several popular editors including TextMate, Sublime +Text, and emacs' YASnippet mode. + +Each template is given in two forms, one minimal and one including +[extra metadata](css-metadata.html). Usually the metadata is required +by CSS tests and optional for other tests. + +Templates for filenames are also given. In this case `{}` is used to +delimit text to be replaced and `#` represents a digit. + +## Reftests + +### Minimal Reftest + +``` html +<!DOCTYPE html> +<meta charset="utf-8"> +<title>${1:Test title}</title> +<link rel="match" href="${2:URL of match}"> +<style> + ${3:Test CSS} +</style> +<body> + ${4:Test content} +</body> +``` + +Filename: `{test-topic}-###.html` + +### Reftest Including Metadata + +``` html +<!DOCTYPE html> +<meta charset="utf-8"> +<title>${1:Test area}: ${2:Scope of test}</title> +<link rel="author" title="${3:Author's name}" href="${4:Contact link}"> +<link rel="help" href="${5:Link to tested section}"> +<link rel="match" href="${6:URL of match}"> +<meta name="flags" content="${7:Requirement flags}"> +<meta name="assert" content="${8:Description of what you're trying to test}"> +<style> + ${9:Test CSS} +</style> +<body> + ${10:Test content} +</body> +``` + +Filename: `{test-topic}-###.html` + +### Minimal Reftest Reference: + +``` html +<!DOCTYPE html> +<meta charset="utf-8"> +<title>${1:Reference title}</title> +<style> + ${2:Reference CSS} +</style> +<body> + ${3:Reference content} +</body> +``` + +Filename: `{description}.html` or `{test-topic}-###-ref.html` + +### Reference Including Metadata + +``` html +<!DOCTYPE html> +<meta charset="utf-8"> +<title>${1:Reference title}</title> +<link rel="author" title="${2:Author's name}" href="${3:Contact link}"> +<style> + ${4:Reference CSS} +</style> +<body> + ${5:Reference content} +</body> +``` + +Filename: `{description}.html` or `{test-topic}-###-ref.html` + +## testharness.js tests + +### Minimal Script Test + +``` html +<!DOCTYPE html> +<meta charset="utf-8"> +<title>${1:Test title}</title> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +${2:Test body} +</script> +``` + +Filename: `{test-topic}-###.html` + +### Script Test With Metadata + +``` html +<!DOCTYPE html> +<meta charset="utf-8"> +<title>${1:Test title}</title> +<link rel="author" title="${2:Author's name}" href="${3:Contact link}"> +<link rel="help" href="${4:Link to tested section}"> +<meta name="flags" content="${5:Requirement flags}"> +<meta name="assert" content="${6:Description of what you're trying to test}"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +${7:Test body} +</script> +``` + +Filename: `{test-topic}-###.html` + +### Manual Test + +``` html +<!DOCTYPE html> +<meta charset="utf-8"> +<title>${1:Test title}</title> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +setup({explicit_timeout: true}); +${2:Test body} +</script> +``` + +Filename: `{test-topic}-###-manual.html` |