| OLD | NEW |
| 1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
| 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
| 4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
| 5 | 5 |
| 6 '''Unit tests for writers.doc_writer''' | 6 '''Unit tests for writers.doc_writer''' |
| 7 | 7 |
| 8 | 8 |
| 9 import json | 9 import json |
| 10 import os | 10 import os |
| (...skipping 21 matching lines...) Expand all Loading... |
| 32 | 32 |
| 33 def setUp(self): | 33 def setUp(self): |
| 34 # Create a writer for the tests. | 34 # Create a writer for the tests. |
| 35 self.writer = doc_writer.GetWriter( | 35 self.writer = doc_writer.GetWriter( |
| 36 config={ | 36 config={ |
| 37 'app_name': 'Chrome', | 37 'app_name': 'Chrome', |
| 38 'frame_name': 'Chrome Frame', | 38 'frame_name': 'Chrome Frame', |
| 39 'os_name': 'Chrome OS', | 39 'os_name': 'Chrome OS', |
| 40 'webview_name': 'WebView', | 40 'webview_name': 'WebView', |
| 41 'android_webview_restriction_prefix': 'mock.prefix:', | 41 'android_webview_restriction_prefix': 'mock.prefix:', |
| 42 'win_reg_mandatory_key_name': 'MockKey', | 42 'win_config' : { |
| 43 'win_reg_recommended_key_name': 'MockKeyRec', | 43 'win' : { |
| 44 'reg_mandatory_key_name': 'MockKey', |
| 45 'reg_recommended_key_name': 'MockKeyRec', |
| 46 }, |
| 47 'chrome_os' : { |
| 48 'reg_mandatory_key_name': 'MockKeyCrOS', |
| 49 'reg_recommended_key_name': 'MockKeyCrOSRec', |
| 50 }, |
| 51 }, |
| 44 'build': 'test_product', | 52 'build': 'test_product', |
| 45 }) | 53 }) |
| 46 self.writer.messages = { | 54 self.writer.messages = { |
| 47 'doc_back_to_top': {'text': '_test_back_to_top'}, | 55 'doc_back_to_top': {'text': '_test_back_to_top'}, |
| 48 'doc_complex_policies_on_windows': {'text': '_test_complex_policies_win'}, | 56 'doc_complex_policies_on_windows': {'text': '_test_complex_policies_win'}, |
| 49 'doc_data_type': {'text': '_test_data_type'}, | 57 'doc_data_type': {'text': '_test_data_type'}, |
| 50 'doc_description': {'text': '_test_description'}, | 58 'doc_description': {'text': '_test_description'}, |
| 51 'doc_arc_support': {'text': '_test_arc_support'}, | 59 'doc_arc_support': {'text': '_test_arc_support'}, |
| 52 'doc_description_column_title': { | 60 'doc_description_column_title': { |
| 53 'text': '_test_description_column_title' | 61 'text': '_test_description_column_title' |
| 54 }, | 62 }, |
| 55 'doc_example_value': {'text': '_test_example_value'}, | 63 'doc_example_value': {'text': '_test_example_value'}, |
| 64 'doc_win_example_value': {'text': '_test_example_value_win'}, |
| 65 'doc_chrome_os_example_value': {'text': '_test_example_value_chrome_os'}, |
| 56 'doc_feature_dynamic_refresh': {'text': '_test_feature_dynamic_refresh'}, | 66 'doc_feature_dynamic_refresh': {'text': '_test_feature_dynamic_refresh'}, |
| 57 'doc_feature_can_be_recommended': {'text': '_test_feature_recommended'}, | 67 'doc_feature_can_be_recommended': {'text': '_test_feature_recommended'}, |
| 58 'doc_feature_can_be_mandatory': {'text': '_test_feature_mandatory'}, | 68 'doc_feature_can_be_mandatory': {'text': '_test_feature_mandatory'}, |
| 59 'doc_intro': {'text': '_test_intro'}, | 69 'doc_intro': {'text': '_test_intro'}, |
| 60 'doc_mac_linux_pref_name': {'text': '_test_mac_linux_pref_name'}, | 70 'doc_mac_linux_pref_name': {'text': '_test_mac_linux_pref_name'}, |
| 61 'doc_android_restriction_name': { | 71 'doc_android_restriction_name': { |
| 62 'text': '_test_android_restriction_name' | 72 'text': '_test_android_restriction_name' |
| 63 }, | 73 }, |
| 64 'doc_android_webview_restriction_name': { | 74 'doc_android_webview_restriction_name': { |
| 65 'text': '_test_android_webview_restriction_name' | 75 'text': '_test_android_webview_restriction_name' |
| 66 }, | 76 }, |
| 67 'doc_note': {'text': '_test_note'}, | 77 'doc_note': {'text': '_test_note'}, |
| 68 'doc_name_column_title': {'text': '_test_name_column_title'}, | 78 'doc_name_column_title': {'text': '_test_name_column_title'}, |
| 69 'doc_not_supported': {'text': '_test_not_supported'}, | 79 'doc_not_supported': {'text': '_test_not_supported'}, |
| 70 'doc_since_version': {'text': '_test_since_version'}, | 80 'doc_since_version': {'text': '_test_since_version'}, |
| 71 'doc_supported': {'text': '_test_supported'}, | 81 'doc_supported': {'text': '_test_supported'}, |
| 72 'doc_supported_features': {'text': '_test_supported_features'}, | 82 'doc_supported_features': {'text': '_test_supported_features'}, |
| 73 'doc_supported_on': {'text': '_test_supported_on'}, | 83 'doc_supported_on': {'text': '_test_supported_on'}, |
| 74 'doc_win_reg_loc': {'text': '_test_win_reg_loc'}, | 84 'doc_win_reg_loc': {'text': '_test_win_reg_loc'}, |
| 85 'doc_chrome_os_reg_loc': {'text': '_test_chrome_os_reg_loc'}, |
| 75 | 86 |
| 76 'doc_bla': {'text': '_test_bla'}, | 87 'doc_bla': {'text': '_test_bla'}, |
| 77 } | 88 } |
| 78 self.writer.Init() | 89 self.writer.Init() |
| 79 | 90 |
| 80 # It is not worth testing the exact content of style attributes. | 91 # It is not worth testing the exact content of style attributes. |
| 81 # Therefore we override them here with shorter texts. | 92 # Therefore we override them here with shorter texts. |
| 82 for key in self.writer._STYLE.keys(): | 93 for key in self.writer._STYLE.keys(): |
| 83 self.writer._STYLE[key] = 'style_%s;' % key | 94 self.writer._STYLE[key] = 'style_%s;' % key |
| 84 # Add some more style attributes for additional testing. | 95 # Add some more style attributes for additional testing. |
| (...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 248 '<root>' | 259 '<root>' |
| 249 'Can Be Recommended: _test_supported, ' | 260 'Can Be Recommended: _test_supported, ' |
| 250 'Dynamic Refresh: _test_supported, ' | 261 'Dynamic Refresh: _test_supported, ' |
| 251 'Spaceship Docking: _test_not_supported' | 262 'Spaceship Docking: _test_not_supported' |
| 252 '</root>') | 263 '</root>') |
| 253 | 264 |
| 254 def testAddListExample(self): | 265 def testAddListExample(self): |
| 255 policy = { | 266 policy = { |
| 256 'name': 'PolicyName', | 267 'name': 'PolicyName', |
| 257 'example_value': ['Foo', 'Bar'], | 268 'example_value': ['Foo', 'Bar'], |
| 258 'supported_on': [ { 'platforms': ['win', 'mac', 'linux'] } ] | 269 'supported_on': [ { 'platforms': ['win', 'mac', 'linux', 'chrome_os'] } ] |
| 259 } | 270 } |
| 260 self.writer._AddListExample(self.doc_root, policy) | 271 self.writer._AddListExample(self.doc_root, policy) |
| 261 self.assertEquals( | 272 self.assertEquals( |
| 262 self.doc_root.toxml(), | 273 self.doc_root.toxml(), |
| 263 '<root>' | 274 '<root>' |
| 264 '<dl style="style_dd dl;">' | 275 '<dl style="style_dd dl;">' |
| 265 '<dt>Windows:</dt>' | 276 '<dt>_test_example_value_win</dt>' |
| 266 '<dd style="style_.monospace;style_.pre;">' | 277 '<dd style="style_.monospace;style_.pre;">' |
| 267 'MockKey\\PolicyName\\1 = "Foo"\n' | 278 'MockKey\\PolicyName\\1 = "Foo"\n' |
| 268 'MockKey\\PolicyName\\2 = "Bar"' | 279 'MockKey\\PolicyName\\2 = "Bar"' |
| 269 '</dd>' | 280 '</dd>' |
| 281 '<dt>_test_example_value_chrome_os</dt>' |
| 282 '<dd style="style_.monospace;style_.pre;">' |
| 283 'MockKeyCrOS\\PolicyName\\1 = "Foo"\n' |
| 284 'MockKeyCrOS\\PolicyName\\2 = "Bar"' |
| 285 '</dd>' |
| 270 '<dt>Android/Linux:</dt>' | 286 '<dt>Android/Linux:</dt>' |
| 271 '<dd style="style_.monospace;">' | 287 '<dd style="style_.monospace;">' |
| 272 '["Foo", "Bar"]' | 288 '["Foo", "Bar"]' |
| 273 '</dd>' | 289 '</dd>' |
| 274 '<dt>Mac:</dt>' | 290 '<dt>Mac:</dt>' |
| 275 '<dd style="style_.monospace;style_.pre;">' | 291 '<dd style="style_.monospace;style_.pre;">' |
| 276 '<array>\n' | 292 '<array>\n' |
| 277 ' <string>Foo</string>\n' | 293 ' <string>Foo</string>\n' |
| 278 ' <string>Bar</string>\n' | 294 ' <string>Bar</string>\n' |
| 279 '</array>' | 295 '</array>' |
| (...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 421 }, { | 437 }, { |
| 422 'product': 'chrome', | 438 'product': 'chrome', |
| 423 'platforms': ['android'], | 439 'platforms': ['android'], |
| 424 'since_version': '30', | 440 'since_version': '30', |
| 425 'until_version': '', | 441 'until_version': '', |
| 426 }, { | 442 }, { |
| 427 'product': 'webview', | 443 'product': 'webview', |
| 428 'platforms': ['android'], | 444 'platforms': ['android'], |
| 429 'since_version': '47', | 445 'since_version': '47', |
| 430 'until_version': '', | 446 'until_version': '', |
| 447 }, { |
| 448 'product': 'chrome', |
| 449 'platforms': ['chrome_os'], |
| 450 'since_version': '55', |
| 451 'until_version': '', |
| 431 }], | 452 }], |
| 432 'features': {'dynamic_refresh': False}, | 453 'features': {'dynamic_refresh': False}, |
| 433 'example_value': False, | 454 'example_value': False, |
| 434 'arc_support': 'TestArcSupportNote' | 455 'arc_support': 'TestArcSupportNote' |
| 435 } | 456 } |
| 436 self.writer.messages['doc_since_version'] = {'text': '...$6...'} | 457 self.writer.messages['doc_since_version'] = {'text': '...$6...'} |
| 437 self.writer._AddPolicyDetails(self.doc_root, policy) | 458 self.writer._AddPolicyDetails(self.doc_root, policy) |
| 438 self.assertEquals( | 459 self.assertEquals( |
| 439 self.doc_root.toxml(), | 460 self.doc_root.toxml(), |
| 440 '<root><dl>' | 461 '<root><dl>' |
| 441 '<dt style="style_dt;">_test_data_type</dt>' | 462 '<dt style="style_dt;">_test_data_type</dt>' |
| 442 '<dd>Boolean [Windows:REG_DWORD]</dd>' | 463 '<dd>Boolean [Windows:REG_DWORD]</dd>' |
| 443 '<dt style="style_dt;">_test_win_reg_loc</dt>' | 464 '<dt style="style_dt;">_test_win_reg_loc</dt>' |
| 444 '<dd style="style_.monospace;">MockKey\TestPolicyName</dd>' | 465 '<dd style="style_.monospace;">MockKey\TestPolicyName</dd>' |
| 466 '<dt style="style_dt;">_test_chrome_os_reg_loc</dt>' |
| 467 '<dd style="style_.monospace;">MockKeyCrOS\TestPolicyName</dd>' |
| 445 '<dt style="style_dt;">_test_mac_linux_pref_name</dt>' | 468 '<dt style="style_dt;">_test_mac_linux_pref_name</dt>' |
| 446 '<dd style="style_.monospace;">TestPolicyName</dd>' | 469 '<dd style="style_.monospace;">TestPolicyName</dd>' |
| 447 '<dt style="style_dt;">_test_android_restriction_name</dt>' | 470 '<dt style="style_dt;">_test_android_restriction_name</dt>' |
| 448 '<dd style="style_.monospace;">TestPolicyName</dd>' | 471 '<dd style="style_.monospace;">TestPolicyName</dd>' |
| 449 '<dt style="style_dt;">_test_android_webview_restriction_name</dt>' | 472 '<dt style="style_dt;">_test_android_webview_restriction_name</dt>' |
| 450 '<dd style="style_.monospace;">mock.prefix:TestPolicyName</dd>' | 473 '<dd style="style_.monospace;">mock.prefix:TestPolicyName</dd>' |
| 451 '<dt style="style_dt;">_test_supported_on</dt>' | 474 '<dt style="style_dt;">_test_supported_on</dt>' |
| 452 '<dd>' | 475 '<dd>' |
| 453 '<ul style="style_ul;">' | 476 '<ul style="style_ul;">' |
| 454 '<li>Chrome (Windows, Mac, Linux) ...8...</li>' | 477 '<li>Chrome (Windows, Mac, Linux) ...8...</li>' |
| 455 '<li>Chrome (Android) ...30...</li>' | 478 '<li>Chrome (Android) ...30...</li>' |
| 456 '<li>WebView (Android) ...47...</li>' | 479 '<li>WebView (Android) ...47...</li>' |
| 480 '<li>Chrome (Chrome OS) ...55...</li>' |
| 457 '</ul>' | 481 '</ul>' |
| 458 '</dd>' | 482 '</dd>' |
| 459 '<dt style="style_dt;">_test_supported_features</dt>' | 483 '<dt style="style_dt;">_test_supported_features</dt>' |
| 460 '<dd>_test_feature_dynamic_refresh: _test_not_supported</dd>' | 484 '<dd>_test_feature_dynamic_refresh: _test_not_supported</dd>' |
| 461 '<dt style="style_dt;">_test_description</dt><dd><p>TestPolicyDesc</p></dd
>' | 485 '<dt style="style_dt;">_test_description</dt><dd><p>TestPolicyDesc</p></dd
>' |
| 462 '<dt style="style_dt;">_test_arc_support</dt>' | 486 '<dt style="style_dt;">_test_arc_support</dt>' |
| 463 '<dd><p>TestArcSupportNote</p></dd>' | 487 '<dd><p>TestArcSupportNote</p></dd>' |
| 464 '<dt style="style_dt;">_test_example_value</dt>' | 488 '<dt style="style_dt;">_test_example_value</dt>' |
| 465 '<dd>0x00000000 (Windows), false (Linux),' | 489 '<dd>0x00000000 (Windows), false (Linux),' |
| 466 ' false (Android), <false /> (Mac)</dd>' | 490 ' false (Android), <false /> (Mac)</dd>' |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 509 def testAddDictPolicyDetails(self): | 533 def testAddDictPolicyDetails(self): |
| 510 # Test if the definition list (<dl>) of policy details is created correctly | 534 # Test if the definition list (<dl>) of policy details is created correctly |
| 511 # for 'dict' policies. | 535 # for 'dict' policies. |
| 512 policy = { | 536 policy = { |
| 513 'type': 'dict', | 537 'type': 'dict', |
| 514 'name': 'TestPolicyName', | 538 'name': 'TestPolicyName', |
| 515 'caption': 'TestPolicyCaption', | 539 'caption': 'TestPolicyCaption', |
| 516 'desc': 'TestPolicyDesc', | 540 'desc': 'TestPolicyDesc', |
| 517 'supported_on': [{ | 541 'supported_on': [{ |
| 518 'product': 'chrome', | 542 'product': 'chrome', |
| 519 'platforms': ['win', 'mac', 'linux'], | 543 'platforms': ['win', 'mac', 'linux', 'chrome_os'], |
| 520 'since_version': '8', | 544 'since_version': '8', |
| 521 'until_version': '', | 545 'until_version': '', |
| 522 }], | 546 }], |
| 523 'features': {'dynamic_refresh': False}, | 547 'features': {'dynamic_refresh': False}, |
| 524 'example_value': { 'foo': 123 } | 548 'example_value': { 'foo': 123 } |
| 525 } | 549 } |
| 526 self.writer.messages['doc_since_version'] = {'text': '...$6...'} | 550 self.writer.messages['doc_since_version'] = {'text': '...$6...'} |
| 527 self.writer._AddPolicyDetails(self.doc_root, policy) | 551 self.writer._AddPolicyDetails(self.doc_root, policy) |
| 528 self.assertEquals( | 552 self.assertEquals( |
| 529 self.doc_root.toxml(), | 553 self.doc_root.toxml(), |
| 530 '<root><dl>' | 554 '<root><dl>' |
| 531 '<dt style="style_dt;">_test_data_type</dt>' | 555 '<dt style="style_dt;">_test_data_type</dt>' |
| 532 '<dd>Dictionary [Windows:REG_SZ] (_test_complex_policies_win)</dd>' | 556 '<dd>Dictionary [Windows:REG_SZ] (_test_complex_policies_win)</dd>' |
| 533 '<dt style="style_dt;">_test_win_reg_loc</dt>' | 557 '<dt style="style_dt;">_test_win_reg_loc</dt>' |
| 534 '<dd style="style_.monospace;">MockKey\TestPolicyName</dd>' | 558 '<dd style="style_.monospace;">MockKey\TestPolicyName</dd>' |
| 559 '<dt style="style_dt;">_test_chrome_os_reg_loc</dt>' |
| 560 '<dd style="style_.monospace;">MockKeyCrOS\TestPolicyName</dd>' |
| 535 '<dt style="style_dt;">_test_mac_linux_pref_name</dt>' | 561 '<dt style="style_dt;">_test_mac_linux_pref_name</dt>' |
| 536 '<dd style="style_.monospace;">TestPolicyName</dd>' | 562 '<dd style="style_.monospace;">TestPolicyName</dd>' |
| 537 '<dt style="style_dt;">_test_supported_on</dt>' | 563 '<dt style="style_dt;">_test_supported_on</dt>' |
| 538 '<dd>' | 564 '<dd>' |
| 539 '<ul style="style_ul;">' | 565 '<ul style="style_ul;">' |
| 540 '<li>Chrome (Windows, Mac, Linux) ...8...</li>' | 566 '<li>Chrome (Windows, Mac, Linux, Chrome OS) ...8...</li>' |
| 541 '</ul>' | 567 '</ul>' |
| 542 '</dd>' | 568 '</dd>' |
| 543 '<dt style="style_dt;">_test_supported_features</dt>' | 569 '<dt style="style_dt;">_test_supported_features</dt>' |
| 544 '<dd>_test_feature_dynamic_refresh: _test_not_supported</dd>' | 570 '<dd>_test_feature_dynamic_refresh: _test_not_supported</dd>' |
| 545 '<dt style="style_dt;">_test_description</dt><dd><p>TestPolicyDesc</p></dd
>' | 571 '<dt style="style_dt;">_test_description</dt><dd><p>TestPolicyDesc</p></dd
>' |
| 546 '<dt style="style_dt;">_test_example_value</dt>' | 572 '<dt style="style_dt;">_test_example_value</dt>' |
| 547 '<dd>' | 573 '<dd>' |
| 548 '<dl style="style_dd dl;">' | 574 '<dl style="style_dd dl;">' |
| 549 '<dt>Windows:</dt>' | 575 '<dt>_test_example_value_win</dt>' |
| 550 '<dd style="style_.monospace;style_.pre;">MockKey\TestPolicyName = {
"foo": 123}</dd>' | 576 '<dd style="style_.monospace;style_.pre;">' |
| 577 'MockKey\TestPolicyName = {"foo": 123}</dd>' |
| 578 '<dt>_test_example_value_chrome_os</dt>' |
| 579 '<dd style="style_.monospace;style_.pre;">' |
| 580 'MockKeyCrOS\TestPolicyName = {"foo": 123}</dd>' |
| 551 '<dt>Android/Linux:</dt>' | 581 '<dt>Android/Linux:</dt>' |
| 552 '<dd style="style_.monospace;">TestPolicyName: {"foo": 123
}</dd>' | 582 '<dd style="style_.monospace;">' |
| 583 'TestPolicyName: {"foo": 123}</dd>' |
| 553 '<dt>Mac:</dt>' | 584 '<dt>Mac:</dt>' |
| 554 '<dd style="style_.monospace;style_.pre;">' | 585 '<dd style="style_.monospace;style_.pre;">' |
| 555 '<key>TestPolicyName</key>\n' | 586 '<key>TestPolicyName</key>\n' |
| 556 '<dict>\n' | 587 '<dict>\n' |
| 557 ' <key>foo</key>\n' | 588 ' <key>foo</key>\n' |
| 558 ' <integer>123</integer>\n' | 589 ' <integer>123</integer>\n' |
| 559 '</dict>' | 590 '</dict>' |
| 560 '</dd>' | 591 '</dd>' |
| 561 '</dl>' | 592 '</dl>' |
| 562 '</dd>' | 593 '</dd>' |
| 563 '</dl></root>') | 594 '</dl></root>') |
| 564 | 595 |
| 565 def testAddPolicyDetailsRecommendedOnly(self): | 596 def testAddPolicyDetailsRecommendedOnly(self): |
| 566 policy = { | 597 policy = { |
| 567 'type': 'main', | 598 'type': 'main', |
| 568 'name': 'TestPolicyName', | 599 'name': 'TestPolicyName', |
| 569 'caption': 'TestPolicyCaption', | 600 'caption': 'TestPolicyCaption', |
| 570 'desc': 'TestPolicyDesc', | 601 'desc': 'TestPolicyDesc', |
| 571 'supported_on': [{ | 602 'supported_on': [{ |
| 572 'product': 'chrome', | 603 'product': 'chrome', |
| 573 'platforms': ['win', 'mac', 'linux'], | 604 'platforms': ['win', 'mac', 'linux'], |
| 574 'since_version': '8', | 605 'since_version': '8', |
| 575 'until_version': '', | 606 'until_version': '', |
| 576 }, { | 607 }, { |
| 577 'product': 'chrome', | 608 'product': 'chrome', |
| 578 'platforms': ['android'], | 609 'platforms': ['android'], |
| 579 'since_version': '30', | 610 'since_version': '30', |
| 580 'until_version': '', | 611 'until_version': '', |
| 612 }, { |
| 613 'product': 'chrome', |
| 614 'platforms': ['chrome_os'], |
| 615 'since_version': '53', |
| 616 'until_version': '', |
| 581 }], | 617 }], |
| 582 'features': { | 618 'features': { |
| 583 'dynamic_refresh': False, | 619 'dynamic_refresh': False, |
| 584 'can_be_mandatory': False, | 620 'can_be_mandatory': False, |
| 585 'can_be_recommended': True | 621 'can_be_recommended': True |
| 586 }, | 622 }, |
| 587 'example_value': False | 623 'example_value': False |
| 588 } | 624 } |
| 589 self.writer.messages['doc_since_version'] = {'text': '...$6...'} | 625 self.writer.messages['doc_since_version'] = {'text': '...$6...'} |
| 590 self.writer._AddPolicyDetails(self.doc_root, policy) | 626 self.writer._AddPolicyDetails(self.doc_root, policy) |
| 591 self.assertEquals( | 627 self.assertEquals( |
| 592 self.doc_root.toxml(), | 628 self.doc_root.toxml(), |
| 593 '<root><dl>' | 629 '<root><dl>' |
| 594 '<dt style="style_dt;">_test_data_type</dt>' | 630 '<dt style="style_dt;">_test_data_type</dt>' |
| 595 '<dd>Boolean [Windows:REG_DWORD]</dd>' | 631 '<dd>Boolean [Windows:REG_DWORD]</dd>' |
| 596 '<dt style="style_dt;">_test_win_reg_loc</dt>' | 632 '<dt style="style_dt;">_test_win_reg_loc</dt>' |
| 597 '<dd style="style_.monospace;">MockKeyRec\TestPolicyName</dd>' | 633 '<dd style="style_.monospace;">MockKeyRec\TestPolicyName</dd>' |
| 634 '<dt style="style_dt;">_test_chrome_os_reg_loc</dt>' |
| 635 '<dd style="style_.monospace;">MockKeyCrOSRec\TestPolicyName</dd>' |
| 598 '<dt style="style_dt;">_test_mac_linux_pref_name</dt>' | 636 '<dt style="style_dt;">_test_mac_linux_pref_name</dt>' |
| 599 '<dd style="style_.monospace;">TestPolicyName</dd>' | 637 '<dd style="style_.monospace;">TestPolicyName</dd>' |
| 600 '<dt style="style_dt;">_test_android_restriction_name</dt>' | 638 '<dt style="style_dt;">_test_android_restriction_name</dt>' |
| 601 '<dd style="style_.monospace;">TestPolicyName</dd>' | 639 '<dd style="style_.monospace;">TestPolicyName</dd>' |
| 602 '<dt style="style_dt;">_test_supported_on</dt>' | 640 '<dt style="style_dt;">_test_supported_on</dt>' |
| 603 '<dd>' | 641 '<dd>' |
| 604 '<ul style="style_ul;">' | 642 '<ul style="style_ul;">' |
| 605 '<li>Chrome (Windows, Mac, Linux) ...8...</li>' | 643 '<li>Chrome (Windows, Mac, Linux) ...8...</li>' |
| 606 '<li>Chrome (Android) ...30...</li>' | 644 '<li>Chrome (Android) ...30...</li>' |
| 645 '<li>Chrome (Chrome OS) ...53...</li>' |
| 607 '</ul>' | 646 '</ul>' |
| 608 '</dd>' | 647 '</dd>' |
| 609 '<dt style="style_dt;">_test_supported_features</dt>' | 648 '<dt style="style_dt;">_test_supported_features</dt>' |
| 610 '<dd>_test_feature_mandatory: _test_not_supported,' | 649 '<dd>_test_feature_mandatory: _test_not_supported,' |
| 611 ' _test_feature_recommended: _test_supported,' | 650 ' _test_feature_recommended: _test_supported,' |
| 612 ' _test_feature_dynamic_refresh: _test_not_supported</dd>' | 651 ' _test_feature_dynamic_refresh: _test_not_supported</dd>' |
| 613 '<dt style="style_dt;">_test_description</dt><dd><p>TestPolicyDesc</p></dd
>' | 652 '<dt style="style_dt;">_test_description</dt><dd><p>TestPolicyDesc</p></dd
>' |
| 614 '<dt style="style_dt;">_test_example_value</dt>' | 653 '<dt style="style_dt;">_test_example_value</dt>' |
| 615 '<dd>0x00000000 (Windows), false (Linux),' | 654 '<dd>0x00000000 (Windows), false (Linux),' |
| 616 ' false (Android), <false /> (Mac)</dd>' | 655 ' false (Android), <false /> (Mac)</dd>' |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 666 | 705 |
| 667 def testAddPolicySection(self): | 706 def testAddPolicySection(self): |
| 668 # Test if policy details are correctly added to the document. | 707 # Test if policy details are correctly added to the document. |
| 669 policy = { | 708 policy = { |
| 670 'name': 'PolicyName', | 709 'name': 'PolicyName', |
| 671 'caption': 'PolicyCaption', | 710 'caption': 'PolicyCaption', |
| 672 'desc': 'PolicyDesc', | 711 'desc': 'PolicyDesc', |
| 673 'type': 'string', | 712 'type': 'string', |
| 674 'supported_on': [{ | 713 'supported_on': [{ |
| 675 'product': 'chrome', | 714 'product': 'chrome', |
| 676 'platforms': ['win', 'mac'], | 715 'platforms': ['win', 'mac', 'chrome_os'], |
| 677 'since_version': '7', | 716 'since_version': '7', |
| 678 'until_version': '', | 717 'until_version': '', |
| 679 }], | 718 }], |
| 680 'features': {'dynamic_refresh': False}, | 719 'features': {'dynamic_refresh': False}, |
| 681 'example_value': 'False' | 720 'example_value': 'False' |
| 682 } | 721 } |
| 683 self.writer.messages['doc_since_version'] = {'text': '..$6..'} | 722 self.writer.messages['doc_since_version'] = {'text': '..$6..'} |
| 684 self.writer._AddPolicySection(self.doc_root, policy) | 723 self.writer._AddPolicySection(self.doc_root, policy) |
| 685 self.assertEquals( | 724 self.assertEquals( |
| 686 self.doc_root.toxml(), | 725 self.doc_root.toxml(), |
| 687 '<root>' | 726 '<root>' |
| 688 '<div style="margin-left: 0px">' | 727 '<div style="margin-left: 0px">' |
| 689 '<h3><a name="PolicyName"/>PolicyName</h3>' | 728 '<h3><a name="PolicyName"/>PolicyName</h3>' |
| 690 '<span>PolicyCaption</span>' | 729 '<span>PolicyCaption</span>' |
| 691 '<dl>' | 730 '<dl>' |
| 692 '<dt style="style_dt;">_test_data_type</dt>' | 731 '<dt style="style_dt;">_test_data_type</dt>' |
| 693 '<dd>String [Windows:REG_SZ]</dd>' | 732 '<dd>String [Windows:REG_SZ]</dd>' |
| 694 '<dt style="style_dt;">_test_win_reg_loc</dt>' | 733 '<dt style="style_dt;">_test_win_reg_loc</dt>' |
| 695 '<dd style="style_.monospace;">MockKey\\PolicyName</dd>' | 734 '<dd style="style_.monospace;">MockKey\\PolicyName</dd>' |
| 735 '<dt style="style_dt;">_test_chrome_os_reg_loc</dt>' |
| 736 '<dd style="style_.monospace;">MockKeyCrOS\\PolicyName</dd>' |
| 696 '<dt style="style_dt;">_test_mac_linux_pref_name</dt>' | 737 '<dt style="style_dt;">_test_mac_linux_pref_name</dt>' |
| 697 '<dd style="style_.monospace;">PolicyName</dd>' | 738 '<dd style="style_.monospace;">PolicyName</dd>' |
| 698 '<dt style="style_dt;">_test_supported_on</dt>' | 739 '<dt style="style_dt;">_test_supported_on</dt>' |
| 699 '<dd>' | 740 '<dd>' |
| 700 '<ul style="style_ul;">' | 741 '<ul style="style_ul;">' |
| 701 '<li>Chrome (Windows, Mac) ..7..</li>' | 742 '<li>Chrome (Windows, Mac, Chrome OS) ..7..</li>' |
| 702 '</ul>' | 743 '</ul>' |
| 703 '</dd>' | 744 '</dd>' |
| 704 '<dt style="style_dt;">_test_supported_features</dt>' | 745 '<dt style="style_dt;">_test_supported_features</dt>' |
| 705 '<dd>_test_feature_dynamic_refresh: _test_not_supported</dd>' | 746 '<dd>_test_feature_dynamic_refresh: _test_not_supported</dd>' |
| 706 '<dt style="style_dt;">_test_description</dt>' | 747 '<dt style="style_dt;">_test_description</dt>' |
| 707 '<dd><p>PolicyDesc</p></dd>' | 748 '<dd><p>PolicyDesc</p></dd>' |
| 708 '<dt style="style_dt;">_test_example_value</dt>' | 749 '<dt style="style_dt;">_test_example_value</dt>' |
| 709 '<dd>"False"</dd>' | 750 '<dd>"False"</dd>' |
| 710 '</dl>' | 751 '</dl>' |
| 711 '<a href="#top">_test_back_to_top</a>' | 752 '<a href="#top">_test_back_to_top</a>' |
| (...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 934 }, | 975 }, |
| 935 ], | 976 ], |
| 936 }, | 977 }, |
| 937 } | 978 } |
| 938 self.writer._AddDictionaryExample(self.doc_root, policy) | 979 self.writer._AddDictionaryExample(self.doc_root, policy) |
| 939 value = json.dumps(policy['example_value']).replace('"', '"') | 980 value = json.dumps(policy['example_value']).replace('"', '"') |
| 940 self.assertEquals( | 981 self.assertEquals( |
| 941 self.doc_root.toxml(), | 982 self.doc_root.toxml(), |
| 942 '<root>' | 983 '<root>' |
| 943 '<dl style="style_dd dl;">' | 984 '<dl style="style_dd dl;">' |
| 944 '<dt>Windows:</dt>' | 985 '<dt>_test_example_value_win</dt>' |
| 945 '<dd style="style_.monospace;style_.pre;">MockKey\PolicyName = ' | 986 '<dd style="style_.monospace;style_.pre;">MockKey\PolicyName = ' |
| 946 + value + | 987 + value + |
| 947 '</dd>' | 988 '</dd>' |
| 948 '<dt>Android/Linux:</dt>' | 989 '<dt>Android/Linux:</dt>' |
| 949 '<dd style="style_.monospace;">PolicyName: ' + value + '</dd>' | 990 '<dd style="style_.monospace;">PolicyName: ' + value + '</dd>' |
| 950 '<dt>Mac:</dt>' | 991 '<dt>Mac:</dt>' |
| 951 '<dd style="style_.monospace;style_.pre;">' | 992 '<dd style="style_.monospace;style_.pre;">' |
| 952 '<key>PolicyName</key>\n' | 993 '<key>PolicyName</key>\n' |
| 953 '<dict>\n' | 994 '<dict>\n' |
| 954 ' <key>DictList</key>\n' | 995 ' <key>DictList</key>\n' |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 987 | 1028 |
| 988 def testParagraphs(self): | 1029 def testParagraphs(self): |
| 989 text = 'Paragraph 1\n\nParagraph 2\n\nParagraph 3' | 1030 text = 'Paragraph 1\n\nParagraph 2\n\nParagraph 3' |
| 990 self.writer._AddParagraphs(self.doc_root, text) | 1031 self.writer._AddParagraphs(self.doc_root, text) |
| 991 self.assertEquals( | 1032 self.assertEquals( |
| 992 self.doc_root.toxml(), | 1033 self.doc_root.toxml(), |
| 993 '<root><p>Paragraph 1</p><p>Paragraph 2</p><p>Paragraph 3</p></root>') | 1034 '<root><p>Paragraph 1</p><p>Paragraph 2</p><p>Paragraph 3</p></root>') |
| 994 | 1035 |
| 995 if __name__ == '__main__': | 1036 if __name__ == '__main__': |
| 996 unittest.main() | 1037 unittest.main() |
| OLD | NEW |