Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(624)

Side by Side Diff: tests/checkout_test.py

Issue 10825009: Remove GitSvn*Checkout implementations. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/tools/depot_tools
Patch Set: Created 8 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « checkout.py ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 checkout.py.""" 6 """Unit tests for checkout.py."""
7 7
8 import logging 8 import logging
9 import os 9 import os
10 import shutil 10 import shutil
(...skipping 411 matching lines...) Expand 10 before | Expand all | Expand 10 after
422 'Node Kind': 'file', 422 'Node Kind': 'file',
423 'Path': 'chromeos/views/webui_menu_widget.h', 423 'Path': 'chromeos/views/webui_menu_widget.h',
424 'Repository Root': '%s' % self.svn_base.rstrip('/'), 424 'Repository Root': '%s' % self.svn_base.rstrip('/'),
425 'Revision': '2', 425 'Revision': '2',
426 'Schedule': 'add', 426 'Schedule': 'add',
427 'URL': '%strunk/chromeos/views/webui_menu_widget.h' % self.svn_base, 427 'URL': '%strunk/chromeos/views/webui_menu_widget.h' % self.svn_base,
428 } 428 }
429 self.assertEquals(expected, values) 429 self.assertEquals(expected, values)
430 430
431 431
432 class GitSvnCheckout(SvnBaseTest):
433 name = 'foo.git'
434
435 def _get_co(self, post_processors):
436 self.assertNotEqual(False, post_processors)
437 return checkout.GitSvnCheckout(
438 self.root_dir, self.name[:-4],
439 self.usr, self.pwd,
440 self.svn_base, self.svn_trunk, post_processors)
441
442 def testAll(self):
443 expected = {
444 'author': self.FAKE_REPOS.USERS[0][0],
445 }
446 root = os.path.join(self.root_dir, self.name)
447 self._check_base(self._get_co(None), root, True, expected)
448
449 def testGitSvnPremade(self):
450 # Test premade git-svn clone. First make a git-svn clone.
451 git_svn_co = self._get_co(None)
452 revision = git_svn_co.prepare(None)
453 self.assertEquals(self.previous_log['revision'], revision)
454 # Then use GitSvnClone to clone it to lose the git-svn connection and verify
455 # git svn init / git svn fetch works.
456 git_svn_clone = checkout.GitSvnPremadeCheckout(
457 self.root_dir, self.name[:-4] + '2', 'trunk',
458 self.usr, self.pwd,
459 self.svn_base, self.svn_trunk, git_svn_co.project_path)
460 self.assertEquals(
461 self.previous_log['revision'], git_svn_clone.prepare(None))
462
463 def testException(self):
464 self._check_exception(
465 self._get_co(None), 'fatal: corrupt patch at line 12\n')
466
467 def testSvnProps(self):
468 co = self._get_co(None)
469 co.prepare(None)
470 try:
471 svn_props = [('foo', 'bar')]
472 co.apply_patch(
473 [patch.FilePatchDiff('chrome/file.cc', RAW.PATCH, svn_props)])
474 self.fail()
475 except patch.UnsupportedPatchFormat, e:
476 self.assertEquals(e.filename, 'chrome/file.cc')
477 self.assertEquals(
478 e.status,
479 'Cannot apply svn property foo to file chrome/file.cc.')
480 co.prepare(None)
481 # svn:eol-style is ignored.
482 svn_props = [('svn:eol-style', 'LF')]
483 co.apply_patch(
484 [patch.FilePatchDiff('chrome/file.cc', RAW.PATCH, svn_props)])
485
486 def testProcess(self):
487 self._test_process(self._get_co)
488
489 def testPrepare(self):
490 co = self._get_co(None)
491 # TODO(maruel): Cheat here until prepare(revision != None) implemented.
492 co.old_prepare = co.prepare
493 def prepare(rev):
494 # Basically, test that it is broken.
495 self.assertEquals(1, rev)
496 self.assertEquals(2, co.old_prepare(None))
497 return 1
498 co.prepare = prepare
499 self._test_prepare(co)
500
501 def testMove(self):
502 self._check_move(self._get_co(None))
503
504
505 class RawCheckout(SvnBaseTest): 432 class RawCheckout(SvnBaseTest):
506 def setUp(self): 433 def setUp(self):
507 super(RawCheckout, self).setUp() 434 super(RawCheckout, self).setUp()
508 # Use a svn checkout as the base. 435 # Use a svn checkout as the base.
509 self.base_co = checkout.SvnCheckout( 436 self.base_co = checkout.SvnCheckout(
510 self.root_dir, self.name, None, None, self.svn_url) 437 self.root_dir, self.name, None, None, self.svn_url)
511 self.base_co.prepare(None) 438 self.base_co.prepare(None)
512 439
513 def _get_co(self, post_processors): 440 def _get_co(self, post_processors):
514 self.assertNotEqual(False, post_processors) 441 self.assertNotEqual(False, post_processors)
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after
606 if '-v' in sys.argv: 533 if '-v' in sys.argv:
607 DEBUGGING = True 534 DEBUGGING = True
608 logging.basicConfig( 535 logging.basicConfig(
609 level=logging.DEBUG, 536 level=logging.DEBUG,
610 format='%(levelname)5s %(filename)15s(%(lineno)3d): %(message)s') 537 format='%(levelname)5s %(filename)15s(%(lineno)3d): %(message)s')
611 else: 538 else:
612 logging.basicConfig( 539 logging.basicConfig(
613 level=logging.ERROR, 540 level=logging.ERROR,
614 format='%(levelname)5s %(filename)15s(%(lineno)3d): %(message)s') 541 format='%(levelname)5s %(filename)15s(%(lineno)3d): %(message)s')
615 unittest.main() 542 unittest.main()
OLDNEW
« no previous file with comments | « checkout.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698