OLD | NEW |
1 #!/usr/bin/python | 1 #!/usr/bin/python |
2 # | 2 # |
3 # Copyright 2008-2009 Google Inc. All Rights Reserved. | 3 # Copyright 2008-2009 Google Inc. All Rights Reserved. |
4 # | 4 # |
5 # Licensed under the Apache License, Version 2.0 (the "License"); | 5 # Licensed under the Apache License, Version 2.0 (the "License"); |
6 # you may not use this file except in compliance with the License. | 6 # you may not use this file except in compliance with the License. |
7 # You may obtain a copy of the License at | 7 # You may obtain a copy of the License at |
8 # | 8 # |
9 # http://www.apache.org/licenses/LICENSE-2.0 | 9 # http://www.apache.org/licenses/LICENSE-2.0 |
10 # | 10 # |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
63 BaseTestCase.setUp(self) | 63 BaseTestCase.setUp(self) |
64 # Mock them to be sure nothing bad happens. | 64 # Mock them to be sure nothing bad happens. |
65 self.mox.StubOutWithMock(gclient_scm, 'CaptureSVN') | 65 self.mox.StubOutWithMock(gclient_scm, 'CaptureSVN') |
66 self._CaptureSVNInfo = gclient_scm.CaptureSVNInfo | 66 self._CaptureSVNInfo = gclient_scm.CaptureSVNInfo |
67 self.mox.StubOutWithMock(gclient_scm, 'CaptureSVNInfo') | 67 self.mox.StubOutWithMock(gclient_scm, 'CaptureSVNInfo') |
68 self.mox.StubOutWithMock(gclient_scm, 'CaptureSVNStatus') | 68 self.mox.StubOutWithMock(gclient_scm, 'CaptureSVNStatus') |
69 self.mox.StubOutWithMock(gclient_scm, 'RunSVN') | 69 self.mox.StubOutWithMock(gclient_scm, 'RunSVN') |
70 self.mox.StubOutWithMock(gclient_scm, 'RunSVNAndGetFileList') | 70 self.mox.StubOutWithMock(gclient_scm, 'RunSVNAndGetFileList') |
71 self._gclient_gclient = gclient.GClient | 71 self._gclient_gclient = gclient.GClient |
72 gclient.GClient = self.mox.CreateMockAnything() | 72 gclient.GClient = self.mox.CreateMockAnything() |
73 self._scm_wrapper = gclient_scm.create_scm | 73 self._scm_wrapper = gclient_scm.SCMWrapper |
74 gclient_scm.create_scm = self.mox.CreateMockAnything() | 74 gclient_scm.SCMWrapper = self.mox.CreateMockAnything() |
75 | 75 |
76 def tearDown(self): | 76 def tearDown(self): |
77 gclient.GClient = self._gclient_gclient | 77 gclient.GClient = self._gclient_gclient |
78 gclient_scm.create_scm = self._scm_wrapper | 78 gclient_scm.SCMWrapper = self._scm_wrapper |
79 BaseTestCase.tearDown(self) | 79 BaseTestCase.tearDown(self) |
80 | 80 |
81 | 81 |
82 class GclientTestCase(GClientBaseTestCase): | 82 class GclientTestCase(GClientBaseTestCase): |
83 class OptionsObject(object): | 83 class OptionsObject(object): |
84 def __init__(self, test_case, verbose=False, spec=None, | 84 def __init__(self, test_case, verbose=False, spec=None, |
85 config_filename='a_file_name', | 85 config_filename='a_file_name', |
86 entries_filename='a_entry_file_name', | 86 entries_filename='a_entry_file_name', |
87 deps_file='a_deps_file_name', force=False, nohooks=False): | 87 deps_file='a_deps_file_name', force=False, nohooks=False): |
88 self.verbose = verbose | 88 self.verbose = verbose |
(...skipping 312 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
401 options = self.Options() | 401 options = self.Options() |
402 | 402 |
403 checkout_path = os.path.join(self.root_dir, solution_name) | 403 checkout_path = os.path.join(self.root_dir, solution_name) |
404 gclient.os.path.exists(os.path.join(checkout_path, '.git')).AndReturn(False) | 404 gclient.os.path.exists(os.path.join(checkout_path, '.git')).AndReturn(False) |
405 # Expect a check for the entries file and we say there is not one. | 405 # Expect a check for the entries file and we say there is not one. |
406 gclient.os.path.exists(os.path.join(self.root_dir, options.entries_filename) | 406 gclient.os.path.exists(os.path.join(self.root_dir, options.entries_filename) |
407 ).AndReturn(False) | 407 ).AndReturn(False) |
408 | 408 |
409 # An scm will be requested for the solution. | 409 # An scm will be requested for the solution. |
410 scm_wrapper_sol = self.mox.CreateMockAnything() | 410 scm_wrapper_sol = self.mox.CreateMockAnything() |
411 gclient_scm.create_scm(self.url, self.root_dir, solution_name | 411 gclient_scm.SCMWrapper(self.url, self.root_dir, solution_name |
412 ).AndReturn(scm_wrapper_sol) | 412 ).AndReturn(scm_wrapper_sol) |
413 # Then an update will be performed. | 413 # Then an update will be performed. |
414 scm_wrapper_sol.RunCommand('update', options, self.args, []) | 414 scm_wrapper_sol.RunCommand('update', options, self.args, []) |
415 # Then an attempt will be made to read its DEPS file. | 415 # Then an attempt will be made to read its DEPS file. |
416 gclient.FileRead(os.path.join(self.root_dir, | 416 gclient.FileRead(os.path.join(self.root_dir, |
417 solution_name, | 417 solution_name, |
418 options.deps_file)).AndRaise(IOError(2, 'No DEPS file')) | 418 options.deps_file)).AndRaise(IOError(2, 'No DEPS file')) |
419 | 419 |
420 # After everything is done, an attempt is made to write an entries | 420 # After everything is done, an attempt is made to write an entries |
421 # file. | 421 # file. |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
458 gclient.os.path.exists(os.path.join(self.root_dir, solution_name, 'src', | 458 gclient.os.path.exists(os.path.join(self.root_dir, solution_name, 'src', |
459 't', '.git') | 459 't', '.git') |
460 ).AndReturn(False) | 460 ).AndReturn(False) |
461 gclient.os.path.exists(os.path.join(self.root_dir, solution_name, '.git') | 461 gclient.os.path.exists(os.path.join(self.root_dir, solution_name, '.git') |
462 ).AndReturn(False) | 462 ).AndReturn(False) |
463 # Expect a check for the entries file and we say there is not one. | 463 # Expect a check for the entries file and we say there is not one. |
464 gclient.os.path.exists(os.path.join(self.root_dir, options.entries_filename) | 464 gclient.os.path.exists(os.path.join(self.root_dir, options.entries_filename) |
465 ).AndReturn(False) | 465 ).AndReturn(False) |
466 | 466 |
467 # An scm will be requested for the solution. | 467 # An scm will be requested for the solution. |
468 gclient_scm.create_scm(self.url, self.root_dir, solution_name | 468 gclient_scm.SCMWrapper(self.url, self.root_dir, solution_name |
469 ).AndReturn(scm_wrapper_sol) | 469 ).AndReturn(scm_wrapper_sol) |
470 # Then an update will be performed. | 470 # Then an update will be performed. |
471 scm_wrapper_sol.RunCommand('update', options, self.args, []) | 471 scm_wrapper_sol.RunCommand('update', options, self.args, []) |
472 # Then an attempt will be made to read its DEPS file. | 472 # Then an attempt will be made to read its DEPS file. |
473 gclient.FileRead(os.path.join(self.root_dir, | 473 gclient.FileRead(os.path.join(self.root_dir, |
474 solution_name, | 474 solution_name, |
475 options.deps_file)).AndReturn(deps) | 475 options.deps_file)).AndReturn(deps) |
476 | 476 |
477 # Next we expect an scm to be request for dep src/t but it should | 477 # Next we expect an scm to be request for dep src/t but it should |
478 # use the url specified in deps and the relative path should now | 478 # use the url specified in deps and the relative path should now |
479 # be relative to the DEPS file. | 479 # be relative to the DEPS file. |
480 gclient_scm.create_scm( | 480 gclient_scm.SCMWrapper( |
481 'svn://scm.t/trunk', | 481 'svn://scm.t/trunk', |
482 self.root_dir, | 482 self.root_dir, |
483 os.path.join(solution_name, "src", "t")).AndReturn(scm_wrapper_t) | 483 os.path.join(solution_name, "src", "t")).AndReturn(scm_wrapper_t) |
484 scm_wrapper_t.RunCommand('update', options, self.args, []) | 484 scm_wrapper_t.RunCommand('update', options, self.args, []) |
485 | 485 |
486 # After everything is done, an attempt is made to write an entries | 486 # After everything is done, an attempt is made to write an entries |
487 # file. | 487 # file. |
488 gclient.FileWrite(os.path.join(self.root_dir, options.entries_filename), | 488 gclient.FileWrite(os.path.join(self.root_dir, options.entries_filename), |
489 entries_content) | 489 entries_content) |
490 | 490 |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
532 gclient.os.path.exists(os.path.join(self.root_dir, 'src/n', '.git') | 532 gclient.os.path.exists(os.path.join(self.root_dir, 'src/n', '.git') |
533 ).AndReturn(False) | 533 ).AndReturn(False) |
534 gclient.os.path.exists(os.path.join(self.root_dir, 'src/t', '.git') | 534 gclient.os.path.exists(os.path.join(self.root_dir, 'src/t', '.git') |
535 ).AndReturn(False) | 535 ).AndReturn(False) |
536 | 536 |
537 # Expect a check for the entries file and we say there is not one. | 537 # Expect a check for the entries file and we say there is not one. |
538 gclient.os.path.exists(os.path.join(self.root_dir, options.entries_filename) | 538 gclient.os.path.exists(os.path.join(self.root_dir, options.entries_filename) |
539 ).AndReturn(False) | 539 ).AndReturn(False) |
540 | 540 |
541 # An scm will be requested for the solution. | 541 # An scm will be requested for the solution. |
542 gclient_scm.create_scm(self.url, self.root_dir, solution_name | 542 gclient_scm.SCMWrapper(self.url, self.root_dir, solution_name |
543 ).AndReturn(scm_wrapper_sol) | 543 ).AndReturn(scm_wrapper_sol) |
544 # Then an update will be performed. | 544 # Then an update will be performed. |
545 scm_wrapper_sol.RunCommand('update', options, self.args, []) | 545 scm_wrapper_sol.RunCommand('update', options, self.args, []) |
546 # Then an attempt will be made to read its DEPS file. | 546 # Then an attempt will be made to read its DEPS file. |
547 gclient.FileRead(os.path.join(checkout_path, options.deps_file) | 547 gclient.FileRead(os.path.join(checkout_path, options.deps_file) |
548 ).AndReturn(deps) | 548 ).AndReturn(deps) |
549 | 549 |
550 # Next we expect an scm to be request for dep src/n even though it does not | 550 # Next we expect an scm to be request for dep src/n even though it does not |
551 # exist in the DEPS file. | 551 # exist in the DEPS file. |
552 gclient_scm.create_scm('svn://custom.n/trunk', | 552 gclient_scm.SCMWrapper('svn://custom.n/trunk', |
553 self.root_dir, | 553 self.root_dir, |
554 "src/n").AndReturn(scm_wrapper_n) | 554 "src/n").AndReturn(scm_wrapper_n) |
555 | 555 |
556 # Next we expect an scm to be request for dep src/t but it should | 556 # Next we expect an scm to be request for dep src/t but it should |
557 # use the url specified in custom_deps. | 557 # use the url specified in custom_deps. |
558 gclient_scm.create_scm('svn://custom.t/trunk', | 558 gclient_scm.SCMWrapper('svn://custom.t/trunk', |
559 self.root_dir, | 559 self.root_dir, |
560 "src/t").AndReturn(scm_wrapper_t) | 560 "src/t").AndReturn(scm_wrapper_t) |
561 | 561 |
562 scm_wrapper_n.RunCommand('update', options, self.args, []) | 562 scm_wrapper_n.RunCommand('update', options, self.args, []) |
563 scm_wrapper_t.RunCommand('update', options, self.args, []) | 563 scm_wrapper_t.RunCommand('update', options, self.args, []) |
564 | 564 |
565 # NOTE: the dep src/b should not create an scm at all. | 565 # NOTE: the dep src/b should not create an scm at all. |
566 | 566 |
567 # After everything is done, an attempt is made to write an entries | 567 # After everything is done, an attempt is made to write an entries |
568 # file. | 568 # file. |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
618 gclient.os.path.exists(os.path.join(self.root_dir, name_b, '.git') | 618 gclient.os.path.exists(os.path.join(self.root_dir, name_b, '.git') |
619 ).AndReturn(False) | 619 ).AndReturn(False) |
620 gclient.os.path.exists(os.path.join(self.root_dir, 'src/t', '.git') | 620 gclient.os.path.exists(os.path.join(self.root_dir, 'src/t', '.git') |
621 ).AndReturn(False) | 621 ).AndReturn(False) |
622 | 622 |
623 # Expect a check for the entries file and we say there is not one. | 623 # Expect a check for the entries file and we say there is not one. |
624 gclient.os.path.exists(os.path.join(self.root_dir, options.entries_filename) | 624 gclient.os.path.exists(os.path.join(self.root_dir, options.entries_filename) |
625 ).AndReturn(False) | 625 ).AndReturn(False) |
626 | 626 |
627 # An scm will be requested for the first solution. | 627 # An scm will be requested for the first solution. |
628 gclient_scm.create_scm(url_a, self.root_dir, name_a).AndReturn( | 628 gclient_scm.SCMWrapper(url_a, self.root_dir, name_a).AndReturn( |
629 scm_wrapper_a) | 629 scm_wrapper_a) |
630 # Then an attempt will be made to read it's DEPS file. | 630 # Then an attempt will be made to read it's DEPS file. |
631 gclient.FileRead(os.path.join(self.root_dir, name_a, options.deps_file) | 631 gclient.FileRead(os.path.join(self.root_dir, name_a, options.deps_file) |
632 ).AndReturn(deps_a) | 632 ).AndReturn(deps_a) |
633 # Then an update will be performed. | 633 # Then an update will be performed. |
634 scm_wrapper_a.RunCommand('update', options, self.args, []) | 634 scm_wrapper_a.RunCommand('update', options, self.args, []) |
635 | 635 |
636 # An scm will be requested for the second solution. | 636 # An scm will be requested for the second solution. |
637 gclient_scm.create_scm(url_b, self.root_dir, name_b).AndReturn( | 637 gclient_scm.SCMWrapper(url_b, self.root_dir, name_b).AndReturn( |
638 scm_wrapper_b) | 638 scm_wrapper_b) |
639 # Then an attempt will be made to read its DEPS file. | 639 # Then an attempt will be made to read its DEPS file. |
640 gclient.FileRead(os.path.join(self.root_dir, name_b, options.deps_file) | 640 gclient.FileRead(os.path.join(self.root_dir, name_b, options.deps_file) |
641 ).AndReturn(deps_b) | 641 ).AndReturn(deps_b) |
642 # Then an update will be performed. | 642 # Then an update will be performed. |
643 scm_wrapper_b.RunCommand('update', options, self.args, []) | 643 scm_wrapper_b.RunCommand('update', options, self.args, []) |
644 | 644 |
645 # Finally, an scm is requested for the shared dep. | 645 # Finally, an scm is requested for the shared dep. |
646 gclient_scm.create_scm('http://svn.t/trunk', self.root_dir, 'src/t' | 646 gclient_scm.SCMWrapper('http://svn.t/trunk', self.root_dir, 'src/t' |
647 ).AndReturn(scm_wrapper_dep) | 647 ).AndReturn(scm_wrapper_dep) |
648 # And an update is run on it. | 648 # And an update is run on it. |
649 scm_wrapper_dep.RunCommand('update', options, self.args, []) | 649 scm_wrapper_dep.RunCommand('update', options, self.args, []) |
650 | 650 |
651 # After everything is done, an attempt is made to write an entries file. | 651 # After everything is done, an attempt is made to write an entries file. |
652 gclient.FileWrite(os.path.join(self.root_dir, options.entries_filename), | 652 gclient.FileWrite(os.path.join(self.root_dir, options.entries_filename), |
653 entries_content) | 653 entries_content) |
654 | 654 |
655 self.mox.ReplayAll() | 655 self.mox.ReplayAll() |
656 client = self._gclient_gclient(self.root_dir, options) | 656 client = self._gclient_gclient(self.root_dir, options) |
657 client.SetConfig(gclient_config) | 657 client.SetConfig(gclient_config) |
658 client.RunOnDeps('update', self.args) | 658 client.RunOnDeps('update', self.args) |
659 | 659 |
660 def testRunOnDepsSuccess(self): | 660 def testRunOnDepsSuccess(self): |
661 # Fake .gclient file. | 661 # Fake .gclient file. |
662 name = 'testRunOnDepsSuccess_solution_name' | 662 name = 'testRunOnDepsSuccess_solution_name' |
663 gclient_config = """solutions = [ { | 663 gclient_config = """solutions = [ { |
664 'name': '%s', | 664 'name': '%s', |
665 'url': '%s', | 665 'url': '%s', |
666 'custom_deps': {}, | 666 'custom_deps': {}, |
667 }, ]""" % (name, self.url) | 667 }, ]""" % (name, self.url) |
668 | 668 |
669 options = self.Options() | 669 options = self.Options() |
670 gclient.os.path.exists(os.path.join(self.root_dir, name, '.git') | 670 gclient.os.path.exists(os.path.join(self.root_dir, name, '.git') |
671 ).AndReturn(False) | 671 ).AndReturn(False) |
672 gclient.os.path.exists(os.path.join(self.root_dir, options.entries_filename) | 672 gclient.os.path.exists(os.path.join(self.root_dir, options.entries_filename) |
673 ).AndReturn(False) | 673 ).AndReturn(False) |
674 gclient_scm.create_scm(self.url, self.root_dir, name).AndReturn( | 674 gclient_scm.SCMWrapper(self.url, self.root_dir, name).AndReturn( |
675 gclient_scm.create_scm) | 675 gclient_scm.SCMWrapper) |
676 gclient_scm.create_scm.RunCommand('update', options, self.args, []) | 676 gclient_scm.SCMWrapper.RunCommand('update', options, self.args, []) |
677 gclient.FileRead(os.path.join(self.root_dir, name, options.deps_file) | 677 gclient.FileRead(os.path.join(self.root_dir, name, options.deps_file) |
678 ).AndReturn("Boo = 'a'") | 678 ).AndReturn("Boo = 'a'") |
679 gclient.FileWrite(os.path.join(self.root_dir, options.entries_filename), | 679 gclient.FileWrite(os.path.join(self.root_dir, options.entries_filename), |
680 'entries = [\n "%s",\n]\n' % name) | 680 'entries = [\n "%s",\n]\n' % name) |
681 | 681 |
682 self.mox.ReplayAll() | 682 self.mox.ReplayAll() |
683 client = self._gclient_gclient(self.root_dir, options) | 683 client = self._gclient_gclient(self.root_dir, options) |
684 client.SetConfig(gclient_config) | 684 client.SetConfig(gclient_config) |
685 client.RunOnDeps('update', self.args) | 685 client.RunOnDeps('update', self.args) |
686 | 686 |
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
758 ).AndReturn(False) | 758 ).AndReturn(False) |
759 gclient.os.path.exists(os.path.join(self.root_dir, | 759 gclient.os.path.exists(os.path.join(self.root_dir, |
760 'src/third_party/python_24', '.git') | 760 'src/third_party/python_24', '.git') |
761 ).AndReturn(False) | 761 ).AndReturn(False) |
762 gclient.os.path.exists(os.path.join(self.root_dir, 'src/breakpad/bar', | 762 gclient.os.path.exists(os.path.join(self.root_dir, 'src/breakpad/bar', |
763 '.git') | 763 '.git') |
764 ).AndReturn(False) | 764 ).AndReturn(False) |
765 gclient.os.path.exists(os.path.join(self.root_dir, options.entries_filename) | 765 gclient.os.path.exists(os.path.join(self.root_dir, options.entries_filename) |
766 ).AndReturn(False) | 766 ).AndReturn(False) |
767 | 767 |
768 gclient_scm.create_scm(self.url, self.root_dir, 'src').AndReturn( | 768 gclient_scm.SCMWrapper(self.url, self.root_dir, 'src').AndReturn( |
769 scm_wrapper_src) | 769 scm_wrapper_src) |
770 scm_wrapper_src.RunCommand('update', mox.Func(OptIsRev123), self.args, []) | 770 scm_wrapper_src.RunCommand('update', mox.Func(OptIsRev123), self.args, []) |
771 | 771 |
772 gclient_scm.create_scm(self.url, self.root_dir, | 772 gclient_scm.SCMWrapper(self.url, self.root_dir, |
773 None).AndReturn(scm_wrapper_src2) | 773 None).AndReturn(scm_wrapper_src2) |
774 scm_wrapper_src2.FullUrlForRelativeUrl('/trunk/deps/third_party/cygwin@3248' | 774 scm_wrapper_src2.FullUrlForRelativeUrl('/trunk/deps/third_party/cygwin@3248' |
775 ).AndReturn(cygwin_path) | 775 ).AndReturn(cygwin_path) |
776 | 776 |
777 gclient_scm.create_scm(self.url, self.root_dir, | 777 gclient_scm.SCMWrapper(self.url, self.root_dir, |
778 None).AndReturn(scm_wrapper_src2) | 778 None).AndReturn(scm_wrapper_src2) |
779 scm_wrapper_src2.FullUrlForRelativeUrl('/trunk/deps/third_party/WebKit' | 779 scm_wrapper_src2.FullUrlForRelativeUrl('/trunk/deps/third_party/WebKit' |
780 ).AndReturn(webkit_path) | 780 ).AndReturn(webkit_path) |
781 | 781 |
782 gclient_scm.create_scm(webkit_path, self.root_dir, | 782 gclient_scm.SCMWrapper(webkit_path, self.root_dir, |
783 'foo/third_party/WebKit').AndReturn(scm_wrapper_webkit) | 783 'foo/third_party/WebKit').AndReturn(scm_wrapper_webkit) |
784 scm_wrapper_webkit.RunCommand('update', mox.Func(OptIsRev42), self.args, []) | 784 scm_wrapper_webkit.RunCommand('update', mox.Func(OptIsRev42), self.args, []) |
785 | 785 |
786 gclient_scm.create_scm( | 786 gclient_scm.SCMWrapper( |
787 'http://google-breakpad.googlecode.com/svn/trunk/src@285', | 787 'http://google-breakpad.googlecode.com/svn/trunk/src@285', |
788 self.root_dir, 'src/breakpad/bar').AndReturn(scm_wrapper_breakpad) | 788 self.root_dir, 'src/breakpad/bar').AndReturn(scm_wrapper_breakpad) |
789 scm_wrapper_breakpad.RunCommand('update', mox.Func(OptIsRevNone), | 789 scm_wrapper_breakpad.RunCommand('update', mox.Func(OptIsRevNone), |
790 self.args, []) | 790 self.args, []) |
791 | 791 |
792 gclient_scm.create_scm(cygwin_path, self.root_dir, | 792 gclient_scm.SCMWrapper(cygwin_path, self.root_dir, |
793 'src/third_party/cygwin').AndReturn(scm_wrapper_cygwin) | 793 'src/third_party/cygwin').AndReturn(scm_wrapper_cygwin) |
794 scm_wrapper_cygwin.RunCommand('update', mox.Func(OptIsRev333), self.args, | 794 scm_wrapper_cygwin.RunCommand('update', mox.Func(OptIsRev333), self.args, |
795 []) | 795 []) |
796 | 796 |
797 gclient_scm.create_scm('svn://random_server:123/trunk/python_24@5580', | 797 gclient_scm.SCMWrapper('svn://random_server:123/trunk/python_24@5580', |
798 self.root_dir, | 798 self.root_dir, |
799 'src/third_party/python_24').AndReturn( | 799 'src/third_party/python_24').AndReturn( |
800 scm_wrapper_python) | 800 scm_wrapper_python) |
801 scm_wrapper_python.RunCommand('update', mox.Func(OptIsRevNone), self.args, | 801 scm_wrapper_python.RunCommand('update', mox.Func(OptIsRevNone), self.args, |
802 []) | 802 []) |
803 | 803 |
804 self.mox.ReplayAll() | 804 self.mox.ReplayAll() |
805 client = self._gclient_gclient(self.root_dir, options) | 805 client = self._gclient_gclient(self.root_dir, options) |
806 client.SetConfig(gclient_config) | 806 client.SetConfig(gclient_config) |
807 client.RunOnDeps('update', self.args) | 807 client.RunOnDeps('update', self.args) |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
863 ).AndReturn(deps_content) | 863 ).AndReturn(deps_content) |
864 gclient.FileWrite(os.path.join(self.root_dir, options.entries_filename), | 864 gclient.FileWrite(os.path.join(self.root_dir, options.entries_filename), |
865 entries_content) | 865 entries_content) |
866 | 866 |
867 gclient.os.path.exists(os.path.join(self.root_dir, 'foo/third_party/WebKit', | 867 gclient.os.path.exists(os.path.join(self.root_dir, 'foo/third_party/WebKit', |
868 '.git')).AndReturn(False) | 868 '.git')).AndReturn(False) |
869 gclient.os.path.exists(os.path.join(self.root_dir, name, '.git') | 869 gclient.os.path.exists(os.path.join(self.root_dir, name, '.git') |
870 ).AndReturn(False) | 870 ).AndReturn(False) |
871 gclient.os.path.exists(os.path.join(self.root_dir, options.entries_filename) | 871 gclient.os.path.exists(os.path.join(self.root_dir, options.entries_filename) |
872 ).AndReturn(False) | 872 ).AndReturn(False) |
873 gclient_scm.create_scm(self.url, self.root_dir, name).AndReturn( | 873 gclient_scm.SCMWrapper(self.url, self.root_dir, name).AndReturn( |
874 gclient_scm.create_scm) | 874 gclient_scm.SCMWrapper) |
875 gclient_scm.create_scm.RunCommand('update', options, self.args, []) | 875 gclient_scm.SCMWrapper.RunCommand('update', options, self.args, []) |
876 | 876 |
877 gclient_scm.create_scm(self.url, self.root_dir, | 877 gclient_scm.SCMWrapper(self.url, self.root_dir, |
878 None).AndReturn(scm_wrapper_src) | 878 None).AndReturn(scm_wrapper_src) |
879 scm_wrapper_src.FullUrlForRelativeUrl('/trunk/bar/WebKit' | 879 scm_wrapper_src.FullUrlForRelativeUrl('/trunk/bar/WebKit' |
880 ).AndReturn(webkit_path) | 880 ).AndReturn(webkit_path) |
881 | 881 |
882 gclient_scm.create_scm(webkit_path, self.root_dir, | 882 gclient_scm.SCMWrapper(webkit_path, self.root_dir, |
883 'foo/third_party/WebKit').AndReturn(gclient_scm.create_scm) | 883 'foo/third_party/WebKit').AndReturn(gclient_scm.SCMWrapper) |
884 gclient_scm.create_scm.RunCommand('update', options, self.args, []) | 884 gclient_scm.SCMWrapper.RunCommand('update', options, self.args, []) |
885 | 885 |
886 self.mox.ReplayAll() | 886 self.mox.ReplayAll() |
887 client = self._gclient_gclient(self.root_dir, options) | 887 client = self._gclient_gclient(self.root_dir, options) |
888 client.SetConfig(gclient_config) | 888 client.SetConfig(gclient_config) |
889 client.RunOnDeps('update', self.args) | 889 client.RunOnDeps('update', self.args) |
890 | 890 |
891 def testRunOnDepsSuccessCustomVars(self): | 891 def testRunOnDepsSuccessCustomVars(self): |
892 # Fake .gclient file. | 892 # Fake .gclient file. |
893 name = 'testRunOnDepsSuccessCustomVars_solution_name' | 893 name = 'testRunOnDepsSuccessCustomVars_solution_name' |
894 gclient_config = """solutions = [ { | 894 gclient_config = """solutions = [ { |
(...skipping 24 matching lines...) Expand all Loading... |
919 gclient.FileWrite(os.path.join(self.root_dir, options.entries_filename), | 919 gclient.FileWrite(os.path.join(self.root_dir, options.entries_filename), |
920 entries_content) | 920 entries_content) |
921 | 921 |
922 gclient.os.path.exists(os.path.join(self.root_dir, 'foo/third_party/WebKit', | 922 gclient.os.path.exists(os.path.join(self.root_dir, 'foo/third_party/WebKit', |
923 '.git') | 923 '.git') |
924 ).AndReturn(False) | 924 ).AndReturn(False) |
925 gclient.os.path.exists(os.path.join(self.root_dir, name, '.git') | 925 gclient.os.path.exists(os.path.join(self.root_dir, name, '.git') |
926 ).AndReturn(False) | 926 ).AndReturn(False) |
927 gclient.os.path.exists(os.path.join(self.root_dir, options.entries_filename) | 927 gclient.os.path.exists(os.path.join(self.root_dir, options.entries_filename) |
928 ).AndReturn(False) | 928 ).AndReturn(False) |
929 gclient_scm.create_scm(self.url, self.root_dir, name).AndReturn( | 929 gclient_scm.SCMWrapper(self.url, self.root_dir, name).AndReturn( |
930 gclient_scm.create_scm) | 930 gclient_scm.SCMWrapper) |
931 gclient_scm.create_scm.RunCommand('update', options, self.args, []) | 931 gclient_scm.SCMWrapper.RunCommand('update', options, self.args, []) |
932 | 932 |
933 gclient_scm.create_scm(self.url, self.root_dir, | 933 gclient_scm.SCMWrapper(self.url, self.root_dir, |
934 None).AndReturn(scm_wrapper_src) | 934 None).AndReturn(scm_wrapper_src) |
935 scm_wrapper_src.FullUrlForRelativeUrl('/trunk/bar_custom/WebKit' | 935 scm_wrapper_src.FullUrlForRelativeUrl('/trunk/bar_custom/WebKit' |
936 ).AndReturn(webkit_path) | 936 ).AndReturn(webkit_path) |
937 | 937 |
938 gclient_scm.create_scm(webkit_path, self.root_dir, | 938 gclient_scm.SCMWrapper(webkit_path, self.root_dir, |
939 'foo/third_party/WebKit').AndReturn(gclient_scm.create_scm) | 939 'foo/third_party/WebKit').AndReturn(gclient_scm.SCMWrapper) |
940 gclient_scm.create_scm.RunCommand('update', options, self.args, []) | 940 gclient_scm.SCMWrapper.RunCommand('update', options, self.args, []) |
941 | 941 |
942 self.mox.ReplayAll() | 942 self.mox.ReplayAll() |
943 client = self._gclient_gclient(self.root_dir, options) | 943 client = self._gclient_gclient(self.root_dir, options) |
944 client.SetConfig(gclient_config) | 944 client.SetConfig(gclient_config) |
945 client.RunOnDeps('update', self.args) | 945 client.RunOnDeps('update', self.args) |
946 | 946 |
947 def testRunOnDepsFailureVars(self): | 947 def testRunOnDepsFailureVars(self): |
948 # Fake .gclient file. | 948 # Fake .gclient file. |
949 name = 'testRunOnDepsFailureVars_solution_name' | 949 name = 'testRunOnDepsFailureVars_solution_name' |
950 gclient_config = """solutions = [ { | 950 gclient_config = """solutions = [ { |
951 'name': '%s', | 951 'name': '%s', |
952 'url': '%s', | 952 'url': '%s', |
953 'custom_deps': {}, | 953 'custom_deps': {}, |
954 'custom_vars': {}, | 954 'custom_vars': {}, |
955 }, ]""" % (name, self.url) | 955 }, ]""" % (name, self.url) |
956 # Fake DEPS file. | 956 # Fake DEPS file. |
957 deps_content = """deps = { | 957 deps_content = """deps = { |
958 'foo/third_party/WebKit': Var('webkit') + 'WebKit', | 958 'foo/third_party/WebKit': Var('webkit') + 'WebKit', |
959 }""" | 959 }""" |
960 | 960 |
961 options = self.Options() | 961 options = self.Options() |
962 gclient.FileRead(os.path.join(self.root_dir, name, options.deps_file) | 962 gclient.FileRead(os.path.join(self.root_dir, name, options.deps_file) |
963 ).AndReturn(deps_content) | 963 ).AndReturn(deps_content) |
964 gclient_scm.create_scm(self.url, self.root_dir, name).AndReturn( | 964 gclient_scm.SCMWrapper(self.url, self.root_dir, name).AndReturn( |
965 gclient_scm.create_scm) | 965 gclient_scm.SCMWrapper) |
966 gclient_scm.create_scm.RunCommand('update', options, self.args, []) | 966 gclient_scm.SCMWrapper.RunCommand('update', options, self.args, []) |
967 | 967 |
968 self.mox.ReplayAll() | 968 self.mox.ReplayAll() |
969 client = self._gclient_gclient(self.root_dir, options) | 969 client = self._gclient_gclient(self.root_dir, options) |
970 client.SetConfig(gclient_config) | 970 client.SetConfig(gclient_config) |
971 exception = "Var is not defined: webkit" | 971 exception = "Var is not defined: webkit" |
972 try: | 972 try: |
973 client.RunOnDeps('update', self.args) | 973 client.RunOnDeps('update', self.args) |
974 except gclient.Error, e: | 974 except gclient.Error, e: |
975 self.assertEquals(e.args[0], exception) | 975 self.assertEquals(e.args[0], exception) |
976 else: | 976 else: |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1031 def setUp(self): | 1031 def setUp(self): |
1032 GClientBaseTestCase.setUp(self) | 1032 GClientBaseTestCase.setUp(self) |
1033 self.root_dir = self.Dir() | 1033 self.root_dir = self.Dir() |
1034 self.args = self.Args() | 1034 self.args = self.Args() |
1035 self.url = self.Url() | 1035 self.url = self.Url() |
1036 self.relpath = 'asf' | 1036 self.relpath = 'asf' |
1037 | 1037 |
1038 def testDir(self): | 1038 def testDir(self): |
1039 members = [ | 1039 members = [ |
1040 'FullUrlForRelativeUrl', 'RunCommand', 'cleanup', 'diff', 'export', | 1040 'FullUrlForRelativeUrl', 'RunCommand', 'cleanup', 'diff', 'export', |
1041 'pack', 'relpath', 'revert', 'runhooks', 'scm_name', 'status', | 1041 'pack', 'relpath', 'revert', 'scm_name', 'status', 'update', 'url', |
1042 'update', 'url', | |
1043 ] | 1042 ] |
1044 | 1043 |
1045 # If you add a member, be sure to add the relevant test! | 1044 # If you add a member, be sure to add the relevant test! |
1046 self.compareMembers(self._scm_wrapper(self.url, | 1045 self.compareMembers(self._scm_wrapper(), members) |
1047 self.root_dir, | |
1048 self.relpath), | |
1049 members) | |
1050 | |
1051 def testUnsupportedSCM(self): | |
1052 args = [self.url, self.root_dir, self.relpath] | |
1053 kwargs = {'scm_name' : 'foo'} | |
1054 exception_msg = 'Unsupported scm %(scm_name)s' % kwargs | |
1055 self.assertRaisesError(exception_msg, self._scm_wrapper, *args, **kwargs) | |
1056 | 1046 |
1057 def testFullUrlForRelativeUrl(self): | 1047 def testFullUrlForRelativeUrl(self): |
1058 self.url = 'svn://a/b/c/d' | 1048 self.url = 'svn://a/b/c/d' |
1059 | 1049 |
1060 self.mox.ReplayAll() | 1050 self.mox.ReplayAll() |
1061 scm = self._scm_wrapper(self.url, self.root_dir, self.relpath) | 1051 scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir, |
| 1052 relpath=self.relpath) |
1062 self.assertEqual(scm.FullUrlForRelativeUrl('/crap'), 'svn://a/b/crap') | 1053 self.assertEqual(scm.FullUrlForRelativeUrl('/crap'), 'svn://a/b/crap') |
1063 | 1054 |
1064 def testRunCommandException(self): | 1055 def testRunCommandException(self): |
1065 options = self.Options(verbose=False) | 1056 options = self.Options(verbose=False) |
1066 gclient.os.path.exists(os.path.join(self.root_dir, self.relpath, '.git') | 1057 gclient.os.path.exists(os.path.join(self.root_dir, self.relpath, '.git') |
1067 ).AndReturn(False) | 1058 ).AndReturn(False) |
1068 | 1059 |
1069 self.mox.ReplayAll() | 1060 self.mox.ReplayAll() |
1070 scm = self._scm_wrapper(self.url, self.root_dir, self.relpath) | 1061 scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir, |
| 1062 relpath=self.relpath) |
1071 exception = "Unsupported argument(s): %s" % ','.join(self.args) | 1063 exception = "Unsupported argument(s): %s" % ','.join(self.args) |
1072 self.assertRaisesError(exception, scm.RunCommand, | 1064 self.assertRaisesError(exception, self._scm_wrapper.RunCommand, |
1073 'update', options, self.args) | 1065 scm, 'update', options, self.args) |
1074 | 1066 |
1075 def testRunCommandUnknown(self): | 1067 def testRunCommandUnknown(self): |
1076 # TODO(maruel): if ever used. | 1068 # TODO(maruel): if ever used. |
1077 pass | 1069 pass |
1078 | 1070 |
1079 def testRevertMissing(self): | 1071 def testRevertMissing(self): |
1080 options = self.Options(verbose=True) | 1072 options = self.Options(verbose=True) |
1081 base_path = os.path.join(self.root_dir, self.relpath) | 1073 base_path = os.path.join(self.root_dir, self.relpath) |
1082 gclient.os.path.isdir(base_path).AndReturn(False) | 1074 gclient.os.path.isdir(base_path).AndReturn(False) |
1083 # It'll to a checkout instead. | 1075 # It'll to a checkout instead. |
1084 gclient.os.path.exists(os.path.join(base_path, '.git')).AndReturn(False) | 1076 gclient.os.path.exists(os.path.join(base_path, '.git')).AndReturn(False) |
1085 print("\n_____ %s is missing, synching instead" % self.relpath) | 1077 print("\n_____ %s is missing, synching instead" % self.relpath) |
1086 # Checkout. | 1078 # Checkout. |
1087 gclient.os.path.exists(base_path).AndReturn(False) | 1079 gclient.os.path.exists(base_path).AndReturn(False) |
1088 files_list = self.mox.CreateMockAnything() | 1080 files_list = self.mox.CreateMockAnything() |
1089 gclient_scm.RunSVNAndGetFileList(['checkout', self.url, base_path], | 1081 gclient_scm.RunSVNAndGetFileList(['checkout', self.url, base_path], |
1090 self.root_dir, files_list) | 1082 self.root_dir, files_list) |
1091 | 1083 |
1092 self.mox.ReplayAll() | 1084 self.mox.ReplayAll() |
1093 scm = self._scm_wrapper(self.url, self.root_dir, self.relpath) | 1085 scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir, |
| 1086 relpath=self.relpath) |
1094 scm.revert(options, self.args, files_list) | 1087 scm.revert(options, self.args, files_list) |
1095 | 1088 |
1096 def testRevertNone(self): | 1089 def testRevertNone(self): |
1097 options = self.Options(verbose=True) | 1090 options = self.Options(verbose=True) |
1098 base_path = os.path.join(self.root_dir, self.relpath) | 1091 base_path = os.path.join(self.root_dir, self.relpath) |
1099 gclient.os.path.isdir(base_path).AndReturn(True) | 1092 gclient.os.path.isdir(base_path).AndReturn(True) |
1100 gclient_scm.CaptureSVNStatus(base_path).AndReturn([]) | 1093 gclient_scm.CaptureSVNStatus(base_path).AndReturn([]) |
1101 | 1094 |
1102 self.mox.ReplayAll() | 1095 self.mox.ReplayAll() |
1103 scm = self._scm_wrapper(self.url, self.root_dir, self.relpath) | 1096 scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir, |
| 1097 relpath=self.relpath) |
1104 file_list = [] | 1098 file_list = [] |
1105 scm.revert(options, self.args, file_list) | 1099 scm.revert(options, self.args, file_list) |
1106 | 1100 |
1107 def testRevert2Files(self): | 1101 def testRevert2Files(self): |
1108 options = self.Options(verbose=True) | 1102 options = self.Options(verbose=True) |
1109 base_path = os.path.join(self.root_dir, self.relpath) | 1103 base_path = os.path.join(self.root_dir, self.relpath) |
1110 gclient.os.path.isdir(base_path).AndReturn(True) | 1104 gclient.os.path.isdir(base_path).AndReturn(True) |
1111 items = [ | 1105 items = [ |
1112 ('M ', 'a'), | 1106 ('M ', 'a'), |
1113 ('A ', 'b'), | 1107 ('A ', 'b'), |
1114 ] | 1108 ] |
1115 gclient_scm.CaptureSVNStatus(base_path).AndReturn(items) | 1109 gclient_scm.CaptureSVNStatus(base_path).AndReturn(items) |
1116 | 1110 |
1117 print(os.path.join(base_path, 'a')) | 1111 print(os.path.join(base_path, 'a')) |
1118 print(os.path.join(base_path, 'b')) | 1112 print(os.path.join(base_path, 'b')) |
1119 gclient_scm.RunSVN(['revert', 'a', 'b'], base_path) | 1113 gclient_scm.RunSVN(['revert', 'a', 'b'], base_path) |
1120 | 1114 |
1121 self.mox.ReplayAll() | 1115 self.mox.ReplayAll() |
1122 scm = self._scm_wrapper(self.url, self.root_dir, self.relpath) | 1116 scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir, |
| 1117 relpath=self.relpath) |
1123 file_list = [] | 1118 file_list = [] |
1124 scm.revert(options, self.args, file_list) | 1119 scm.revert(options, self.args, file_list) |
1125 self.assertEquals(sorted(file_list), sorted([os.path.join(base_path, 'a'), | 1120 self.assertEquals(sorted(file_list), sorted([os.path.join(base_path, 'a'), |
1126 os.path.join(base_path, 'b')])) | 1121 os.path.join(base_path, 'b')])) |
1127 | 1122 |
1128 def testRevertUnversionedUnexpectedFile(self): | 1123 def testRevertUnversionedUnexpectedFile(self): |
1129 options = self.Options(verbose=True) | 1124 options = self.Options(verbose=True) |
1130 base_path = os.path.join(self.root_dir, self.relpath) | 1125 base_path = os.path.join(self.root_dir, self.relpath) |
1131 gclient.os.path.isdir(base_path).AndReturn(True) | 1126 gclient.os.path.isdir(base_path).AndReturn(True) |
1132 items = [ | 1127 items = [ |
(...skipping 15 matching lines...) Expand all Loading... |
1148 #self.assertEquals(file_list, [os.path.join(base_path, 'a')]) | 1143 #self.assertEquals(file_list, [os.path.join(base_path, 'a')]) |
1149 | 1144 |
1150 def testStatus(self): | 1145 def testStatus(self): |
1151 options = self.Options(verbose=True) | 1146 options = self.Options(verbose=True) |
1152 base_path = os.path.join(self.root_dir, self.relpath) | 1147 base_path = os.path.join(self.root_dir, self.relpath) |
1153 gclient.os.path.isdir(base_path).AndReturn(True) | 1148 gclient.os.path.isdir(base_path).AndReturn(True) |
1154 gclient_scm.RunSVNAndGetFileList(['status'] + self.args, base_path, | 1149 gclient_scm.RunSVNAndGetFileList(['status'] + self.args, base_path, |
1155 []).AndReturn(None) | 1150 []).AndReturn(None) |
1156 | 1151 |
1157 self.mox.ReplayAll() | 1152 self.mox.ReplayAll() |
1158 scm = self._scm_wrapper(self.url, self.root_dir, self.relpath) | 1153 scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir, |
| 1154 relpath=self.relpath) |
1159 file_list = [] | 1155 file_list = [] |
1160 self.assertEqual(scm.status(options, self.args, file_list), None) | 1156 self.assertEqual(scm.status(options, self.args, file_list), None) |
1161 | 1157 |
1162 | 1158 |
1163 # TODO(maruel): TEST REVISIONS!!! | 1159 # TODO(maruel): TEST REVISIONS!!! |
1164 # TODO(maruel): TEST RELOCATE!!! | 1160 # TODO(maruel): TEST RELOCATE!!! |
1165 def testUpdateCheckout(self): | 1161 def testUpdateCheckout(self): |
1166 options = self.Options(verbose=True) | 1162 options = self.Options(verbose=True) |
1167 base_path = os.path.join(self.root_dir, self.relpath) | 1163 base_path = os.path.join(self.root_dir, self.relpath) |
1168 file_info = gclient_utils.PrintableObject() | 1164 file_info = gclient_utils.PrintableObject() |
1169 file_info.root = 'blah' | 1165 file_info.root = 'blah' |
1170 file_info.url = self.url | 1166 file_info.url = self.url |
1171 file_info.uuid = 'ABC' | 1167 file_info.uuid = 'ABC' |
1172 file_info.revision = 42 | 1168 file_info.revision = 42 |
1173 gclient.os.path.exists(os.path.join(base_path, '.git')).AndReturn(False) | 1169 gclient.os.path.exists(os.path.join(base_path, '.git')).AndReturn(False) |
1174 # Checkout. | 1170 # Checkout. |
1175 gclient.os.path.exists(base_path).AndReturn(False) | 1171 gclient.os.path.exists(base_path).AndReturn(False) |
1176 files_list = self.mox.CreateMockAnything() | 1172 files_list = self.mox.CreateMockAnything() |
1177 gclient_scm.RunSVNAndGetFileList(['checkout', self.url, base_path], | 1173 gclient_scm.RunSVNAndGetFileList(['checkout', self.url, base_path], |
1178 self.root_dir, files_list) | 1174 self.root_dir, files_list) |
1179 self.mox.ReplayAll() | 1175 self.mox.ReplayAll() |
1180 scm = self._scm_wrapper(self.url, self.root_dir, self.relpath) | 1176 scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir, |
| 1177 relpath=self.relpath) |
1181 scm.update(options, (), files_list) | 1178 scm.update(options, (), files_list) |
1182 | 1179 |
1183 def testUpdateUpdate(self): | 1180 def testUpdateUpdate(self): |
1184 options = self.Options(verbose=True) | 1181 options = self.Options(verbose=True) |
1185 base_path = os.path.join(self.root_dir, self.relpath) | 1182 base_path = os.path.join(self.root_dir, self.relpath) |
1186 options.force = True | 1183 options.force = True |
1187 options.nohooks = False | 1184 options.nohooks = False |
1188 file_info = { | 1185 file_info = { |
1189 'Repository Root': 'blah', | 1186 'Repository Root': 'blah', |
1190 'URL': self.url, | 1187 'URL': self.url, |
1191 'UUID': 'ABC', | 1188 'UUID': 'ABC', |
1192 'Revision': 42, | 1189 'Revision': 42, |
1193 } | 1190 } |
1194 gclient.os.path.exists(os.path.join(base_path, '.git')).AndReturn(False) | 1191 gclient.os.path.exists(os.path.join(base_path, '.git')).AndReturn(False) |
1195 # Checkout or update. | 1192 # Checkout or update. |
1196 gclient.os.path.exists(base_path).AndReturn(True) | 1193 gclient.os.path.exists(base_path).AndReturn(True) |
1197 gclient_scm.CaptureSVNInfo(os.path.join(base_path, "."), '.' | 1194 gclient_scm.CaptureSVNInfo(os.path.join(base_path, "."), '.' |
1198 ).AndReturn(file_info) | 1195 ).AndReturn(file_info) |
1199 # Cheat a bit here. | 1196 # Cheat a bit here. |
1200 gclient_scm.CaptureSVNInfo(file_info['URL'], '.').AndReturn(file_info) | 1197 gclient_scm.CaptureSVNInfo(file_info['URL'], '.').AndReturn(file_info) |
1201 additional_args = [] | 1198 additional_args = [] |
1202 if options.manually_grab_svn_rev: | 1199 if options.manually_grab_svn_rev: |
1203 additional_args = ['--revision', str(file_info['Revision'])] | 1200 additional_args = ['--revision', str(file_info['Revision'])] |
1204 files_list = [] | 1201 files_list = [] |
1205 gclient_scm.RunSVNAndGetFileList(['update', base_path] + additional_args, | 1202 gclient_scm.RunSVNAndGetFileList(['update', base_path] + additional_args, |
1206 self.root_dir, files_list) | 1203 self.root_dir, files_list) |
1207 | 1204 |
1208 self.mox.ReplayAll() | 1205 self.mox.ReplayAll() |
1209 scm = self._scm_wrapper(self.url, self.root_dir, self.relpath) | 1206 scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir, |
| 1207 relpath=self.relpath) |
1210 scm.update(options, (), files_list) | 1208 scm.update(options, (), files_list) |
1211 | 1209 |
1212 def testUpdateGit(self): | 1210 def testUpdateGit(self): |
1213 options = self.Options(verbose=True) | 1211 options = self.Options(verbose=True) |
1214 gclient.os.path.exists(os.path.join(self.root_dir, self.relpath, '.git') | 1212 gclient.os.path.exists(os.path.join(self.root_dir, self.relpath, '.git') |
1215 ).AndReturn(True) | 1213 ).AndReturn(True) |
1216 print("________ found .git directory; skipping %s" % self.relpath) | 1214 print("________ found .git directory; skipping %s" % self.relpath) |
1217 | 1215 |
1218 self.mox.ReplayAll() | 1216 self.mox.ReplayAll() |
1219 scm = self._scm_wrapper(self.url, self.root_dir, self.relpath) | 1217 scm = self._scm_wrapper(url=self.url, root_dir=self.root_dir, |
| 1218 relpath=self.relpath) |
1220 file_list = [] | 1219 file_list = [] |
1221 scm.update(options, self.args, file_list) | 1220 scm.update(options, self.args, file_list) |
1222 | 1221 |
1223 def testGetSVNFileInfo(self): | 1222 def testGetSVNFileInfo(self): |
1224 xml_text = r"""<?xml version="1.0"?> | 1223 xml_text = r"""<?xml version="1.0"?> |
1225 <info> | 1224 <info> |
1226 <entry kind="file" path="%s" revision="14628"> | 1225 <entry kind="file" path="%s" revision="14628"> |
1227 <url>http://src.chromium.org/svn/trunk/src/chrome/app/d</url> | 1226 <url>http://src.chromium.org/svn/trunk/src/chrome/app/d</url> |
1228 <repository><root>http://src.chromium.org/svn</root></repository> | 1227 <repository><root>http://src.chromium.org/svn</root></repository> |
1229 <wc-info> | 1228 <wc-info> |
(...skipping 178 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1408 """ | 1407 """ |
1409 gclient_scm.CaptureSVN = CaptureSVNMock | 1408 gclient_scm.CaptureSVN = CaptureSVNMock |
1410 info = gclient_scm.CaptureSVNStatus(None) | 1409 info = gclient_scm.CaptureSVNStatus(None) |
1411 self.assertEquals(info, []) | 1410 self.assertEquals(info, []) |
1412 | 1411 |
1413 | 1412 |
1414 if __name__ == '__main__': | 1413 if __name__ == '__main__': |
1415 unittest.main() | 1414 unittest.main() |
1416 | 1415 |
1417 # vim: ts=2:sw=2:tw=80:et: | 1416 # vim: ts=2:sw=2:tw=80:et: |
OLD | NEW |