diff options
Diffstat (limited to 'contexts/data/lib/closure-library/closure/goog/color/alpha_test.html')
-rw-r--r-- | contexts/data/lib/closure-library/closure/goog/color/alpha_test.html | 301 |
1 files changed, 0 insertions, 301 deletions
diff --git a/contexts/data/lib/closure-library/closure/goog/color/alpha_test.html b/contexts/data/lib/closure-library/closure/goog/color/alpha_test.html deleted file mode 100644 index a565825..0000000 --- a/contexts/data/lib/closure-library/closure/goog/color/alpha_test.html +++ /dev/null @@ -1,301 +0,0 @@ -<!DOCTYPE html> -<html> -<!-- -Copyright 2006 The Closure Library Authors. All Rights Reserved. - -Use of this source code is governed by the Apache License, Version 2.0. -See the COPYING file for details. ---> -<head> -<meta http-equiv="X-UA-Compatible" content="IE=edge"> -<title>Closure Unit Tests - goog.color.alpha</title> -<script src="../base.js"></script> -<script> - goog.require('goog.array'); - goog.require('goog.color'); - goog.require('goog.color.alpha'); - goog.require('goog.testing.jsunit'); -</script> -</head> -<body> -<script> - -function testIsValidAlphaHexColor() { - var goodAlphaHexColors = ['#ffffffff', '#ff781259', '#01234567', '#Ff003DaB', - '#3CAF', '#abcdefab', '#3CAB']; - var badAlphaHexColors = ['#xxxxxxxx', '88990077', 'not_color', '#123456789', - 'fffffgfg']; - for (var i = 0; i < goodAlphaHexColors.length; i++) { - assertTrue(goodAlphaHexColors[i], - goog.color.alpha.isValidAlphaHexColor_(goodAlphaHexColors[i])); - } - for (var i = 0; i < badAlphaHexColors.length; i++) { - assertFalse(badAlphaHexColors[i], - goog.color.alpha.isValidAlphaHexColor_(badAlphaHexColors[i])); - } -} - -function testIsValidRgbaColor() { - var goodRgbaColors = ['rgba(255, 0, 0, 1)', 'rgba(255,127,0,1)', - 'rgba(0,0,255,0.5)', '(255, 26, 75, 0.2)', - 'RGBA(0, 55, 0, 0.6)', 'rgba(0, 200, 0, 0.123456789)']; - var badRgbaColors = ['(255, 0, 0)', '(2555,0,0, 0)', '(1,2,3,4,5)', - 'rgba(1,20,)', 'RGBA(20,20,20,)', 'RGBA', - 'rgba(255, 0, 0, 1.1)']; - for (var i = 0; i < goodRgbaColors.length; i++) { - assertEquals(goodRgbaColors[i], 4, - goog.color.alpha.isValidRgbaColor_(goodRgbaColors[i]).length); - } - for (var i = 0; i < badRgbaColors.length; i++) { - assertEquals(badRgbaColors[i], 0, - goog.color.alpha.isValidRgbaColor_(badRgbaColors[i]).length); - } -} - -function testIsValidHslaColor() { - var goodHslaColors = ['hsla(120, 0%, 0%, 1)', 'hsla(360,20%,0%,1)', - 'hsla(0,0%,50%,0.5)', 'HSLA(0, 55%, 0%, 0.6)', - 'hsla(0, 85%, 0%, 0.123456789)']; - var badHslaColors = ['(255, 0, 0, 0)', 'hsla(2555,0,0, 0)', 'hsla(1,2,3,4,5)', - 'hsla(1,20,)', 'HSLA(20,20,20,)', - 'hsla(255, 0, 0, 1.1)', 'HSLA']; - for (var i = 0; i < goodHslaColors.length; i++) { - assertEquals(goodHslaColors[i], 4, - goog.color.alpha.isValidHslaColor_(goodHslaColors[i]).length); - } - for (var i = 0; i < badHslaColors.length; i++) { - assertEquals(badHslaColors[i], 0, - goog.color.alpha.isValidHslaColor_(badHslaColors[i]).length); - } -} - -function testParse() { - var colors = ['rgba(15, 250, 77, 0.5)', '(127, 127, 127, 0.8)', '#ffeeddaa', - '12345678', 'hsla(160, 50%, 90%, 0.2)']; - var parsed = goog.array.map(colors, goog.color.alpha.parse); - assertEquals('rgba', parsed[0].type); - assertEquals(goog.color.alpha.rgbaToHex(15, 250, 77, 0.5), parsed[0].hex); - assertEquals('rgba', parsed[1].type); - assertEquals(goog.color.alpha.rgbaToHex(127, 127, 127, 0.8), parsed[1].hex); - assertEquals('hex', parsed[2].type); - assertEquals('#ffeeddaa', parsed[2].hex); - assertEquals('hex', parsed[3].type); - assertEquals('#12345678', parsed[3].hex); - assertEquals('hsla', parsed[4].type); - assertEquals('#d9f2ea33', parsed[4].hex); - - var badColors = ['rgb(01, 1, 23)', '(256, 256, 256)', '#ffeeddaa']; - for (var i = 0; i < badColors.length; i++) { - var e = assertThrows(badColors[i] + ' is not a valid color string', - goog.partial(goog.color.parse, badColors[i])); - assertContains('Error processing ' + badColors[i], - 'is not a valid color string', e.message); - } -} - -function testHexToRgba() { - var testColors = [['#B0FF2D66', [176, 255, 45, 0.4]], - ['#b26e5fcc', [178, 110, 95, 0.8]], - ['#66f3', [102, 102, 255, 0.2]]]; - - for (var i = 0; i < testColors.length; i++) { - var r = goog.color.alpha.hexToRgba(testColors[i][0]); - var t = testColors[i][1]; - - assertEquals('Red channel should match.', t[0], r[0]); - assertEquals('Green channel should match.', t[1], r[1]); - assertEquals('Blue channel should match.', t[2], r[2]); - assertEquals('Alpha channel should match.', t[3], r[3]); - } - - var badColors = ['', '#g00', 'some words']; - for (var i = 0; i < badColors.length; i++) { - var e = assertThrows( - goog.partial(goog.color.alpha.hexToRgba, badColors[i])); - assertEquals("'" + badColors[i] + "' is not a valid alpha hex color", - e.message); - } -} - -function testHexToRgbaStyle() { - assertEquals('rgba(255,0,0,1)', - goog.color.alpha.hexToRgbaStyle('#ff0000ff')); - assertEquals('rgba(206,206,206,0.8)', - goog.color.alpha.hexToRgbaStyle('#cecececc')); - assertEquals('rgba(51,204,170,0.2)', - goog.color.alpha.hexToRgbaStyle('#3CA3')); - var badHexColors = ['#12345', null, undefined, '#.1234567890']; - for (var i = 0; i < badHexColors.length; ++i) { - var e = assertThrows(badHexColors[i] + ' is an invalid hex color', - goog.partial(goog.color.alpha.hexToRgbaStyle, badHexColors[i])); - assertEquals("'" + badHexColors[i] + "' is not a valid alpha hex color", - e.message); - } -} - -function testRgbaToHex() { - assertEquals('#af13ffff', goog.color.alpha.rgbaToHex(175, 19, 255, 1)); - assertEquals('#357cf099', goog.color.alpha.rgbaToHex(53, 124, 240, 0.6)); - var badRgba = [[-1, -1, -1, -1], [0, 0, 0, 2], ['a', 'b', 'c', 'd'], - [undefined, 5, 5, 5]]; - for (var i = 0; i < badRgba.length; ++i) { - var e = assertThrows(badRgba[i] + ' is not a valid rgba color', - goog.partial(goog.color.alpha.rgbaArrayToHex, badRgba[i])); - assertContains('is not a valid RGBA color', e.message); - } -} - -function testRgbaToRgbaStyle() { - var testColors = [[[175, 19, 255, 1], 'rgba(175,19,255,1)'], - [[53, 124, 240, .6], 'rgba(53,124,240,0.6)']]; - - for (var i = 0; i < testColors.length; ++i) { - var r = goog.color.alpha.rgbaToRgbaStyle(testColors[i][0][0], - testColors[i][0][1], - testColors[i][0][2], - testColors[i][0][3]); - assertEquals(testColors[i][1], r); - } - - var badColors = [[0, 0, 0, 2]]; - for (var i = 0; i < badColors.length; ++i) { - var e = assertThrows(goog.partial(goog.color.alpha.rgbaToRgbaStyle, - badColors[i][0], badColors[i][1], badColors[i][2], badColors[i][3])); - - assertContains('is not a valid RGBA color', e.message); - } - - // Loop through all bad color values and ensure they fail in each channel. - var badValues = [-1, 300, 'a', undefined, null, NaN]; - var color = [0, 0, 0, 0]; - for (var i = 0; i < badValues.length; ++i) { - for (var channel = 0; channel < color.length; ++channel) { - color[channel] = badValues[i]; - var e = assertThrows(color + ' is not a valid rgba color', - goog.partial(goog.color.alpha.rgbaToRgbaStyle, color)); - assertContains('is not a valid RGBA color', e.message); - - color[channel] = 0; - } - } -} - -function testRgbaArrayToRgbaStyle() { - var testColors = [[[175, 19, 255, 1], 'rgba(175,19,255,1)'], - [[53, 124, 240, .6], 'rgba(53,124,240,0.6)']]; - - for (var i = 0; i < testColors.length; ++i) { - var r = goog.color.alpha.rgbaArrayToRgbaStyle(testColors[i][0]); - assertEquals(testColors[i][1], r); - } - - var badColors = [[0, 0, 0, 2]]; - for (var i = 0; i < badColors.length; ++i) { - var e = assertThrows(goog.partial(goog.color.alpha.rgbaArrayToRgbaStyle, - badColors[i])); - - assertContains('is not a valid RGBA color', e.message); - } - - // Loop through all bad color values and ensure they fail in each channel. - var badValues = [-1, 300, 'a', undefined, null, NaN]; - var color = [0, 0, 0, 0]; - for (var i = 0; i < badValues.length; ++i) { - for (var channel = 0; channel < color.length; ++channel) { - color[channel] = badValues[i]; - var e = assertThrows(color + ' is not a valid rgba color', - goog.partial(goog.color.alpha.rgbaToRgbaStyle, color)); - assertContains('is not a valid RGBA color', e.message); - - color[channel] = 0; - } - } -} - -function testRgbaArrayToHsla() { - var opaqueBlueRgb = [0, 0, 255, 1]; - var opaqueBlueHsl = goog.color.alpha.rgbaArrayToHsla(opaqueBlueRgb); - assertArrayEquals('Conversion from RGBA to HSLA should be as expected', - [240, 1, 0.5, 1], opaqueBlueHsl); - - var nearlyOpaqueYellowRgb = [255, 190, 0, 0.7]; - var nearlyOpaqueYellowHsl = - goog.color.alpha.rgbaArrayToHsla(nearlyOpaqueYellowRgb); - assertArrayEquals('Conversion from RGBA to HSLA should be as expected', - [45, 1, 0.5, 0.7], nearlyOpaqueYellowHsl); - - var transparentPurpleRgb = [180, 0, 255, 0]; - var transparentPurpleHsl = - goog.color.alpha.rgbaArrayToHsla(transparentPurpleRgb); - assertArrayEquals('Conversion from RGBA to HSLA should be as expected', - [282, 1, 0.5, 0], transparentPurpleHsl); -} - -function testNormalizeAlphaHex() { - var compactColor = '#abcd'; - var normalizedCompactColor = - goog.color.alpha.normalizeAlphaHex_(compactColor); - assertEquals('The color should have been normalized to the right length', - '#aabbccdd', normalizedCompactColor); - - var uppercaseColor = '#ABCDEF01'; - var normalizedUppercaseColor = - goog.color.alpha.normalizeAlphaHex_(uppercaseColor); - assertEquals('The color should have been normalized to lowercase', - '#abcdef01', normalizedUppercaseColor); -} - -function testHsvaArrayToHex() { - var opaqueSkyBlueHsv = [190, 1, 255, 1]; - var opaqueSkyBlueHex = goog.color.alpha.hsvaArrayToHex(opaqueSkyBlueHsv); - assertEquals('The HSVA array should have been properly converted to hex', - '#00d4ffff', opaqueSkyBlueHex); - - var halfTransparentPinkHsv = [300, 1, 255, 0.5]; - var halfTransparentPinkHex = - goog.color.alpha.hsvaArrayToHex(halfTransparentPinkHsv); - assertEquals('The HSVA array should have been properly converted to hex', - '#ff00ff7f', halfTransparentPinkHex); - - var transparentDarkTurquoiseHsv = [175, 1, 127, 0.5]; - var transparentDarkTurquoiseHex = - goog.color.alpha.hsvaArrayToHex(transparentDarkTurquoiseHsv); - assertEquals('The HSVA array should have been properly converted to hex', - '#007f747f', transparentDarkTurquoiseHex); -} - -function testExtractHexColor() { - var opaqueRed = '#ff0000ff'; - var red = goog.color.alpha.extractHexColor(opaqueRed); - assertEquals('The hex part of the color should have been extracted correctly', - '#ff0000', red); - - var halfOpaqueDarkGreenCompact = '#0507'; - var darkGreen = - goog.color.alpha.extractHexColor(halfOpaqueDarkGreenCompact); - assertEquals('The hex part of the color should have been extracted correctly', - '#005500', darkGreen); - -} - -function testExtractAlpha() { - var colors = ['#ff0000ff', '#0507', '#ff000005']; - var expectedOpacities = ['ff', '77', '05']; - - for (var i = 0; i < colors.length; i++) { - var opacity = goog.color.alpha.extractAlpha(colors[i]); - assertEquals('The alpha transparency should have been extracted correctly', - expectedOpacities[i], opacity); - } -} - -function testHslaArrayToRgbaStyle() { - assertEquals('rgba(102,255,102,0.5)', - goog.color.alpha.hslaArrayToRgbaStyle([120, 100, 70, 0.5])); - assertEquals('rgba(28,23,23,0.9)', - goog.color.alpha.hslaArrayToRgbaStyle([0, 10, 10, 0.9])); -} - -</script> -</body> -</html> |