gecko-dev/dom/manifest/test/test_ManifestProcessor_orie...

87 строки
2.3 KiB
HTML

<!DOCTYPE HTML>
<html>
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=1079453
-->
<head>
<meta charset="utf-8">
<title>Test for Bug 1079453</title>
<script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
<script src="common.js"></script>
<script>
/**
* orientation member
* https://w3c.github.io/manifest/#orientation-member
**/
'use strict';
typeTests.forEach((type) => {
var expected = `Expect non-string orientation to be empty string : ${typeof type}.`;
data.jsonText = JSON.stringify({
orientation: type
});
var result = processor.process(data);
is(result.orientation, undefined, expected);
});
var validOrientations = [
'any',
'natural',
'landscape',
'portrait',
'portrait-primary',
'portrait-secondary',
'landscape-primary',
'landscape-secondary',
'aNy',
'NaTuRal',
'LANDsCAPE',
'PORTRAIT',
'portrait-PRIMARY',
'portrait-SECONDARY',
'LANDSCAPE-primary',
'LANDSCAPE-secondary',
];
validOrientations.forEach((orientation) => {
var expected = `Expect orientation to be returned: ${orientation}.`;
data.jsonText = JSON.stringify({ orientation });
var result = processor.process(data);
is(result.orientation, orientation.toLowerCase(), expected);
});
var invalidOrientations = [
'all',
'ANYMany',
'NaTuRalle',
'portrait-primary portrait-secondary',
'portrait-primary,portrait-secondary',
'any-natural',
'portrait-landscape',
'primary-portrait',
'secondary-portrait',
'landscape-landscape',
'secondary-primary'
];
invalidOrientations.forEach((orientation) => {
var expected = `Expect orientation to be empty string: ${orientation}.`;
data.jsonText = JSON.stringify({ orientation });
var result = processor.process(data);
is(result.orientation, undefined, expected);
});
//Trim tests
validOrientations.forEach((orientation) => {
var expected = `Expect trimmed orientation to be returned.`;
var expandedOrientation = `${seperators}${lineTerminators}${orientation}${lineTerminators}${seperators}`;
data.jsonText = JSON.stringify({
orientation: expandedOrientation
});
var result = processor.process(data);
is(result.orientation, orientation.toLowerCase(), expected);
});
</script>
</head>