OLD | NEW |
1 #!/usr/bin/python | 1 #!/usr/bin/python |
2 | 2 |
3 # Copyright (c) 2011 The Chromium OS Authors. All rights reserved. | 3 # Copyright (c) 2011 The Chromium OS Authors. All rights reserved. |
4 # Use of this source code is governed by a BSD-style license that can be | 4 # Use of this source code is governed by a BSD-style license that can be |
5 # found in the LICENSE file. | 5 # found in the LICENSE file. |
6 | 6 |
7 """Unittests for build stages.""" | 7 """Unittests for build stages.""" |
8 | 8 |
9 import mox | 9 import mox |
10 import os | 10 import os |
(...skipping 604 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
615 return stages.BuildTargetStage(self.bot_id, | 615 return stages.BuildTargetStage(self.bot_id, |
616 self.options, | 616 self.options, |
617 self.build_config) | 617 self.build_config) |
618 | 618 |
619 def testAllConditionalPaths(self): | 619 def testAllConditionalPaths(self): |
620 """Enable all paths to get line coverage.""" | 620 """Enable all paths to get line coverage.""" |
621 self.build_config['vm_tests'] = True | 621 self.build_config['vm_tests'] = True |
622 self.options.tests = True | 622 self.options.tests = True |
623 self.build_config['build_type'] = 'full' | 623 self.build_config['build_type'] = 'full' |
624 self.build_config['usepkg'] = True | 624 self.build_config['usepkg'] = True |
| 625 self.build_config['useflags'] = ['ALPHA', 'BRAVO', 'CHARLIE'] |
| 626 proper_env = {'USE' : ' '.join(self.build_config['useflags'])} |
625 | 627 |
626 stages.BuilderStage._GetPortageEnvVar('FULL_BINHOST').AndReturn('new.com') | 628 stages.BuilderStage._GetPortageEnvVar('FULL_BINHOST').AndReturn('new.com') |
627 stages.BuilderStage.old_binhost = 'old.com' | 629 stages.BuilderStage.old_binhost = 'old.com' |
628 | 630 |
629 commands.Build( | 631 commands.Build( |
630 self.build_root, True, | 632 self.build_root, True, build_autotest=True, usepkg=True, |
631 build_autotest=True, usepkg=True) | 633 extra_env=proper_env) |
632 | 634 |
633 commands.UploadPrebuilts( | 635 commands.UploadPrebuilts( |
634 self.build_root, self.build_config['board'], | 636 self.build_root, self.build_config['board'], |
635 self.build_config['rev_overlays'], [], | 637 self.build_config['rev_overlays'], [], |
636 self.build_config['build_type'], False) | 638 self.build_config['build_type'], False) |
637 | 639 |
638 commands.BuildImage(self.build_root) | 640 commands.BuildImage(self.build_root, extra_env=proper_env) |
639 commands.BuildVMImageForTesting(self.build_root) | 641 commands.BuildVMImageForTesting(self.build_root, extra_env=proper_env) |
640 | 642 |
641 self.mox.ReplayAll() | 643 self.mox.ReplayAll() |
642 self.RunStage() | 644 self.RunStage() |
643 self.mox.VerifyAll() | 645 self.mox.VerifyAll() |
644 | 646 |
645 def testFalseBuildArgs1(self): | 647 def testFalseBuildArgs1(self): |
646 """Make sure our logic for Build arguments can toggle to false.""" | 648 """Make sure our logic for Build arguments can toggle to false.""" |
647 stages.BuilderStage._GetPortageEnvVar('FULL_BINHOST').AndReturn('new.com') | 649 stages.BuilderStage._GetPortageEnvVar('FULL_BINHOST').AndReturn('new.com') |
648 stages.BuilderStage.old_binhost = 'new.com' | 650 stages.BuilderStage.old_binhost = 'new.com' |
| 651 self.build_config['useflags'] = None |
649 | 652 |
650 commands.Build(self.build_root, False, build_autotest=False, usepkg=False) | 653 commands.Build(self.build_root, False, build_autotest=False, usepkg=False, |
651 commands.BuildImage(self.build_root) | 654 extra_env=None) |
| 655 commands.BuildImage(self.build_root, extra_env=None) |
652 | 656 |
653 self.mox.ReplayAll() | 657 self.mox.ReplayAll() |
654 self.RunStage() | 658 self.RunStage() |
655 self.mox.VerifyAll() | 659 self.mox.VerifyAll() |
656 | 660 |
657 def testFalseBuildArgs2(self): | 661 def testFalseBuildArgs2(self): |
658 """Verify emptytree flag is false when there is no old binhost.""" | 662 """Verify emptytree flag is false when there is no old binhost.""" |
659 stages.BuilderStage._GetPortageEnvVar('FULL_BINHOST').AndReturn('new.com') | 663 stages.BuilderStage._GetPortageEnvVar('FULL_BINHOST').AndReturn('new.com') |
660 stages.BuilderStage.old_binhost = False | 664 stages.BuilderStage.old_binhost = False |
| 665 self.build_config['useflags'] = ['BAKER'] |
| 666 proper_env = {'USE' : ' '.join(self.build_config['useflags'])} |
661 | 667 |
662 commands.Build( | 668 commands.Build( |
663 self.build_root, False, | 669 self.build_root, False, |
664 build_autotest=False, usepkg=False) | 670 build_autotest=False, usepkg=False, extra_env=proper_env) |
665 | 671 |
666 commands.BuildImage(self.build_root) | 672 commands.BuildImage(self.build_root, extra_env=proper_env) |
667 | 673 |
668 self.mox.ReplayAll() | 674 self.mox.ReplayAll() |
669 self.RunStage() | 675 self.RunStage() |
670 self.mox.VerifyAll() | 676 self.mox.VerifyAll() |
671 | 677 |
672 | 678 |
673 class ArchiveStageTest(AbstractStageTest): | 679 class ArchiveStageTest(AbstractStageTest): |
674 | 680 |
675 def setUp(self): | 681 def setUp(self): |
676 mox.MoxTestBase.setUp(self) | 682 mox.MoxTestBase.setUp(self) |
(...skipping 248 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
925 actualResults = stages.BuilderStage.Results.Get() | 931 actualResults = stages.BuilderStage.Results.Get() |
926 | 932 |
927 # Break out the asserts to be per item to make debugging easier | 933 # Break out the asserts to be per item to make debugging easier |
928 self.assertEqual(len(expectedResults), len(actualResults)) | 934 self.assertEqual(len(expectedResults), len(actualResults)) |
929 for i in xrange(len(expectedResults)): | 935 for i in xrange(len(expectedResults)): |
930 self.assertEqual(expectedResults[i], actualResults[i]) | 936 self.assertEqual(expectedResults[i], actualResults[i]) |
931 | 937 |
932 | 938 |
933 if __name__ == '__main__': | 939 if __name__ == '__main__': |
934 unittest.main() | 940 unittest.main() |
OLD | NEW |