| OLD | NEW |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 library var_test; | 5 library var_test; |
| 6 | 6 |
| 7 import 'package:unittest/unittest.dart'; | 7 import 'package:unittest/unittest.dart'; |
| 8 import 'testing.dart'; | 8 import 'testing.dart'; |
| 9 | 9 |
| 10 List options = ['--no-colors', '--warnings_as_errors', 'memory']; | |
| 11 | |
| 12 compileAndValidate(String input, String generated) { | 10 compileAndValidate(String input, String generated) { |
| 13 var errors = []; | 11 var errors = []; |
| 14 var stylesheet = compileCss(input, errors: errors, opts: options); | 12 var stylesheet = compileCss(input, errors: errors, opts: options); |
| 15 expect(stylesheet != null, true); | 13 expect(stylesheet != null, true); |
| 16 expect(errors.isEmpty, true, reason: errors.toString()); | 14 expect(errors.isEmpty, true, reason: errors.toString()); |
| 17 expect(prettyPrint(stylesheet), generated); | 15 expect(prettyPrint(stylesheet), generated); |
| 18 } | 16 } |
| 19 | 17 |
| 20 compilePolyfillAndValidate(String input, String generated) { | 18 compilePolyfillAndValidate(String input, String generated) { |
| 21 var errors = []; | 19 var errors = []; |
| (...skipping 615 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 637 '''; | 635 '''; |
| 638 final generated = ''' | 636 final generated = ''' |
| 639 var-color-background: #f00; | 637 var-color-background: #f00; |
| 640 var-color-foreground: #00f; | 638 var-color-foreground: #00f; |
| 641 | 639 |
| 642 .test { | 640 .test { |
| 643 background-color: var(color-background); | 641 background-color: var(color-background); |
| 644 color: var(color-foreground); | 642 color: var(color-foreground); |
| 645 }'''; | 643 }'''; |
| 646 | 644 |
| 647 var stylesheet = | 645 var stylesheet = parseCss(input, errors: errors, opts: simpleOptions); |
| 648 parseCss(input, errors: errors, opts: ['--no-colors', 'memory']); | |
| 649 | 646 |
| 650 expect(stylesheet != null, true); | 647 expect(stylesheet != null, true); |
| 651 expect(errors.isEmpty, true, reason: errors.toString()); | 648 expect(errors.isEmpty, true, reason: errors.toString()); |
| 652 expect(prettyPrint(stylesheet), generated); | 649 expect(prettyPrint(stylesheet), generated); |
| 653 | 650 |
| 654 compileAndValidate(input, generated); | 651 compileAndValidate(input, generated); |
| 655 | 652 |
| 656 final input2 = ''' | 653 final input2 = ''' |
| 657 @color-background: red; | 654 @color-background: red; |
| 658 @color-foreground: blue; | 655 @color-foreground: blue; |
| 659 | 656 |
| 660 .test { | 657 .test { |
| 661 background-color: @color-background; | 658 background-color: @color-background; |
| 662 color: @color-foreground; | 659 color: @color-foreground; |
| 663 } | 660 } |
| 664 '''; | 661 '''; |
| 665 final generated2 = '''var-color-background: #f00; | 662 final generated2 = '''var-color-background: #f00; |
| 666 var-color-foreground: #00f; | 663 var-color-foreground: #00f; |
| 667 | 664 |
| 668 .test { | 665 .test { |
| 669 background-color: var(color-background); | 666 background-color: var(color-background); |
| 670 color: var(color-foreground); | 667 color: var(color-foreground); |
| 671 }'''; | 668 }'''; |
| 672 | 669 |
| 673 stylesheet = | 670 stylesheet = parseCss(input, errors: errors..clear(), opts: simpleOptions); |
| 674 parseCss(input, errors: errors..clear(), opts: ['--no-colors', 'memory']); | |
| 675 | 671 |
| 676 expect(stylesheet != null, true); | 672 expect(stylesheet != null, true); |
| 677 expect(errors.isEmpty, true, reason: errors.toString()); | 673 expect(errors.isEmpty, true, reason: errors.toString()); |
| 678 expect(prettyPrint(stylesheet), generated2); | 674 expect(prettyPrint(stylesheet), generated2); |
| 679 | 675 |
| 680 compileAndValidate(input2, generated2); | 676 compileAndValidate(input2, generated2); |
| 681 } | 677 } |
| 682 | 678 |
| 683 testLess() { | 679 testLess() { |
| 684 final errors = []; | 680 final errors = []; |
| 685 final input = ''' | 681 final input = ''' |
| 686 @color-background: red; | 682 @color-background: red; |
| 687 @color-foreground: blue; | 683 @color-foreground: blue; |
| 688 | 684 |
| 689 .test { | 685 .test { |
| 690 background-color: var(color-background); | 686 background-color: var(color-background); |
| 691 color: var(color-foreground); | 687 color: var(color-foreground); |
| 692 } | 688 } |
| 693 '''; | 689 '''; |
| 694 final generated = '''var-color-background: #f00; | 690 final generated = '''var-color-background: #f00; |
| 695 var-color-foreground: #00f; | 691 var-color-foreground: #00f; |
| 696 | 692 |
| 697 .test { | 693 .test { |
| 698 background-color: var(color-background); | 694 background-color: var(color-background); |
| 699 color: var(color-foreground); | 695 color: var(color-foreground); |
| 700 }'''; | 696 }'''; |
| 701 | 697 |
| 702 var stylesheet = | 698 var stylesheet = parseCss(input, errors: errors, opts: simpleOptions); |
| 703 parseCss(input, errors: errors, opts: ['--no-colors', 'memory']); | |
| 704 | 699 |
| 705 expect(stylesheet != null, true); | 700 expect(stylesheet != null, true); |
| 706 expect(errors.isEmpty, true, reason: errors.toString()); | 701 expect(errors.isEmpty, true, reason: errors.toString()); |
| 707 expect(prettyPrint(stylesheet), generated); | 702 expect(prettyPrint(stylesheet), generated); |
| 708 | 703 |
| 709 compileAndValidate(input, generated); | 704 compileAndValidate(input, generated); |
| 710 | 705 |
| 711 final input2 = ''' | 706 final input2 = ''' |
| 712 @color-background: red; | 707 @color-background: red; |
| 713 @color-foreground: blue; | 708 @color-foreground: blue; |
| 714 | 709 |
| 715 .test { | 710 .test { |
| 716 background-color: @color-background; | 711 background-color: @color-background; |
| 717 color: @color-foreground; | 712 color: @color-foreground; |
| 718 } | 713 } |
| 719 '''; | 714 '''; |
| 720 final generated2 = '''var-color-background: #f00; | 715 final generated2 = '''var-color-background: #f00; |
| 721 var-color-foreground: #00f; | 716 var-color-foreground: #00f; |
| 722 | 717 |
| 723 .test { | 718 .test { |
| 724 background-color: var(color-background); | 719 background-color: var(color-background); |
| 725 color: var(color-foreground); | 720 color: var(color-foreground); |
| 726 }'''; | 721 }'''; |
| 727 | 722 |
| 728 stylesheet = | 723 stylesheet = parseCss(input, errors: errors..clear(), opts: simpleOptions); |
| 729 parseCss(input, errors: errors..clear(), opts: ['--no-colors', 'memory']); | |
| 730 | 724 |
| 731 expect(stylesheet != null, true); | 725 expect(stylesheet != null, true); |
| 732 expect(errors.isEmpty, true, reason: errors.toString()); | 726 expect(errors.isEmpty, true, reason: errors.toString()); |
| 733 expect(prettyPrint(stylesheet), generated2); | 727 expect(prettyPrint(stylesheet), generated2); |
| 734 | 728 |
| 735 compileAndValidate(input2, generated2); | 729 compileAndValidate(input2, generated2); |
| 736 } | 730 } |
| 737 | 731 |
| 738 void polyfill() { | 732 void polyfill() { |
| 739 compilePolyfillAndValidate(r''' | 733 compilePolyfillAndValidate(r''' |
| (...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 922 test('Expressions var', expressionsVar); | 916 test('Expressions var', expressionsVar); |
| 923 test('Default value in var()', defaultVar); | 917 test('Default value in var()', defaultVar); |
| 924 test('CSS Parser only var', parserVar); | 918 test('CSS Parser only var', parserVar); |
| 925 test('Var syntax', testVar); | 919 test('Var syntax', testVar); |
| 926 test('Indirects', testIndirects); | 920 test('Indirects', testIndirects); |
| 927 test('Forward Refs', undefinedVars); | 921 test('Forward Refs', undefinedVars); |
| 928 test('Less syntax', testLess); | 922 test('Less syntax', testLess); |
| 929 test('Polyfill', polyfill); | 923 test('Polyfill', polyfill); |
| 930 test('Multi-file', includes); | 924 test('Multi-file', includes); |
| 931 } | 925 } |
| OLD | NEW |