Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 /** | 5 /** |
| 6 * Test fixture for generated tests. | 6 * Test fixture for generated tests. |
| 7 * @extends {testing.Test} | 7 * @extends {testing.Test} |
| 8 */ | 8 */ |
| 9 function CertificateViewerUITest() {}; | 9 function CertificateViewerUITest() {} |
| 10 | 10 |
| 11 CertificateViewerUITest.prototype = { | 11 CertificateViewerUITest.prototype = { |
| 12 __proto__: testing.Test.prototype, | 12 __proto__: testing.Test.prototype, |
| 13 | 13 |
| 14 /** | 14 /** |
| 15 * Define the C++ fixture class and include it. | 15 * Define the C++ fixture class and include it. |
| 16 * @type {?string} | 16 * @type {?string} |
| 17 * @override | 17 * @override |
| 18 */ | 18 */ |
| 19 typedefCppFixture: 'CertificateViewerUITest', | 19 typedefCppFixture: 'CertificateViewerUITest', |
| 20 | 20 |
| 21 /** | 21 /** |
| 22 * Show the certificate viewer dialog. | 22 * Show the certificate viewer dialog. |
| 23 */ | 23 */ |
| 24 testGenPreamble: function() { | 24 testGenPreamble: function() { |
| 25 GEN('ShowCertificateViewer();'); | 25 GEN('ShowCertificateViewer();'); |
| 26 }, | 26 }, |
| 27 | 27 |
| 28 }; | 28 }; |
| 29 | 29 |
| 30 /** | 30 /** |
| 31 * Test fixture for asynchronous tests. | 31 * Test fixture for asynchronous tests. |
| 32 * @extends {CertificateViewerUITest} | 32 * @extends {CertificateViewerUITest} |
| 33 */ | 33 */ |
| 34 function CertificateViewerUITestAsync() {}; | 34 function CertificateViewerUITestAsync() {} |
| 35 | 35 |
| 36 CertificateViewerUITestAsync.prototype = { | 36 CertificateViewerUITestAsync.prototype = { |
| 37 __proto__: CertificateViewerUITest.prototype, | 37 __proto__: CertificateViewerUITest.prototype, |
| 38 | 38 |
| 39 /** @inheritDoc */ | 39 /** @inheritDoc */ |
| 40 isAsync: true, | 40 isAsync: true, |
| 41 }; | 41 }; |
| 42 | 42 |
| 43 // Include the bulk of c++ code. | 43 // Include the bulk of c++ code. |
| 44 // Certificate viewer UI tests are disabled on platforms with native certificate | 44 // Certificate viewer UI tests are disabled on platforms with native certificate |
| 45 // viewers. | 45 // viewers. |
| 46 GEN('#include "chrome/test/data/webui/certificate_viewer_ui_test-inl.h"'); | 46 GEN('#include "chrome/test/data/webui/certificate_viewer_ui_test-inl.h"'); |
| 47 GEN('') | 47 GEN(''); |
| 48 | 48 |
| 49 // Constructors and destructors must be provided in .cc to prevent clang errors. | 49 // Constructors and destructors must be provided in .cc to prevent clang errors. |
| 50 GEN('CertificateViewerUITest::CertificateViewerUITest() {}'); | 50 GEN('CertificateViewerUITest::CertificateViewerUITest() {}'); |
| 51 GEN('CertificateViewerUITest::~CertificateViewerUITest() {}'); | 51 GEN('CertificateViewerUITest::~CertificateViewerUITest() {}'); |
| 52 | 52 |
| 53 /** | 53 /** |
| 54 * Tests that the dialog opened to the correct URL. | 54 * Tests that the dialog opened to the correct URL. |
| 55 */ | 55 */ |
| 56 TEST_F('CertificateViewerUITest', 'testDialogURL', function() { | 56 TEST_F('CertificateViewerUITest', 'testDialogURL', function() { |
| 57 assertEquals(chrome.expectedUrl, window.location.href); | 57 assertEquals(chrome.expectedUrl, window.location.href); |
| 58 }); | 58 }); |
| 59 | 59 |
| 60 /** | 60 /** |
| 61 * Tests for the correct common name in the test certificate. | 61 * Tests for the correct common name in the test certificate. |
| 62 */ | 62 */ |
| 63 TEST_F('CertificateViewerUITest', 'testCN', function() { | 63 TEST_F('CertificateViewerUITest', 'testCN', function() { |
| 64 assertEquals('www.google.com', $('issued-cn').textContent); | 64 assertEquals('www.google.com', $('issued-cn').textContent); |
| 65 }); | 65 }); |
| 66 | 66 |
| 67 /** | 67 /** |
| 68 * Test the details pane of the certificate viewer. This verifies that a | 68 * Test the details pane of the certificate viewer. This verifies that a |
| 69 * certificate in the chain can be selected to view the fields. And that fields | 69 * certificate in the chain can be selected to view the fields. And that fields |
| 70 * can be selected to view their values. | 70 * can be selected to view their values. |
| 71 * TODO(flackr,kgr): Re-enable this (http://crbug.com/127732). | |
| 72 */ | 71 */ |
| 73 TEST_F('CertificateViewerUITestAsync', 'DISABLED_testDetails', function() { | 72 TEST_F('CertificateViewerUITestAsync', 'testDetails', function() { |
| 74 var certHierarchy = $('hierarchy'); | 73 var certHierarchy = $('hierarchy'); |
| 75 var certFields = $('cert-fields'); | 74 var certFields = $('cert-fields'); |
| 76 var certFieldVal = $('cert-field-value'); | 75 var certFieldVal = $('cert-field-value'); |
| 77 | 76 |
| 78 // There must be at least one certificate in the hierarchy. | 77 // There must be at least one certificate in the hierarchy. |
| 79 assertLT(0, certHierarchy.childNodes.length); | 78 assertLT(0, certHierarchy.childNodes.length); |
| 80 | 79 |
| 81 // Select the first certificate on the chain and ensure the details show up. | 80 // Select the first certificate on the chain and ensure the details show up. |
| 82 // Override the receive certificate function to catch when fields are | 81 // Override the receive certificate function to catch when fields are |
| 83 // loaded. | 82 // loaded. |
| 83 certHierarchy.selectedItem = null; | |
| 84 cert_viewer.initializeSecondTab(); | |
|
flackr
2012/05/17 15:46:56
I don't think this will work since initializeSecon
| |
| 84 var getCertificateFields = cert_viewer.getCertificateFields; | 85 var getCertificateFields = cert_viewer.getCertificateFields; |
| 85 cert_viewer.getCertificateFields = this.continueTest(WhenTestDone.ALWAYS, | 86 cert_viewer.getCertificateFields = this.continueTest(WhenTestDone.ALWAYS, |
| 86 function(certFieldDetails) { | 87 function(certFieldDetails) { |
| 87 getCertificateFields(certFieldDetails); | 88 getCertificateFields(certFieldDetails); |
| 88 cert_viewer.getCertificateFields = getCertificateFields; | 89 cert_viewer.getCertificateFields = getCertificateFields; |
| 89 assertLT(0, certFields.childNodes.length); | 90 assertLT(0, certFields.childNodes.length); |
| 90 | 91 |
| 91 // Test that a field can be selected to see the details for that field. | 92 // Test that a field can be selected to see the details for that field. |
| 92 var item = getElementWithValue(certFields); | 93 var item = getElementWithValue(certFields); |
| 93 assertNotEquals(null, item); | 94 assertNotEquals(null, item); |
| (...skipping 18 matching lines...) Expand all Loading... | |
| 112 function getElementWithValue(tree) { | 113 function getElementWithValue(tree) { |
| 113 for (var i = 0; i < tree.childNodes.length; i++) { | 114 for (var i = 0; i < tree.childNodes.length; i++) { |
| 114 var element = tree.childNodes[i]; | 115 var element = tree.childNodes[i]; |
| 115 if (element.detail && element.detail.payload && element.detail.payload.val) | 116 if (element.detail && element.detail.payload && element.detail.payload.val) |
| 116 return element; | 117 return element; |
| 117 if (element = getElementWithValue(element)) | 118 if (element = getElementWithValue(element)) |
| 118 return element; | 119 return element; |
| 119 } | 120 } |
| 120 return null; | 121 return null; |
| 121 } | 122 } |
| OLD | NEW |