| OLD | NEW |
| 1 # Copyright (C) 2009 Google Inc. All rights reserved. | 1 # Copyright (C) 2009 Google Inc. All rights reserved. |
| 2 # Copyright (C) 2009 Apple Inc. All rights reserved. | 2 # Copyright (C) 2009 Apple Inc. All rights reserved. |
| 3 # Copyright (C) 2011 Daniel Bates (dbates@intudata.com). All rights reserved. | 3 # Copyright (C) 2011 Daniel Bates (dbates@intudata.com). All rights reserved. |
| 4 # | 4 # |
| 5 # Redistribution and use in source and binary forms, with or without | 5 # Redistribution and use in source and binary forms, with or without |
| 6 # modification, are permitted provided that the following conditions are | 6 # modification, are permitted provided that the following conditions are |
| 7 # met: | 7 # met: |
| 8 # | 8 # |
| 9 # * Redistributions of source code must retain the above copyright | 9 # * Redistributions of source code must retain the above copyright |
| 10 # notice, this list of conditions and the following disclaimer. | 10 # notice, this list of conditions and the following disclaimer. |
| (...skipping 362 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 373 def tearDown(self): | 373 def tearDown(self): |
| 374 super(GitSVNTest, self).tearDown() | 374 super(GitSVNTest, self).tearDown() |
| 375 self._tear_down_svn_checkout() | 375 self._tear_down_svn_checkout() |
| 376 self._tear_down_gitsvn_checkout() | 376 self._tear_down_gitsvn_checkout() |
| 377 | 377 |
| 378 def _set_up_gitsvn_checkout(self): | 378 def _set_up_gitsvn_checkout(self): |
| 379 self.git_checkout_path = self._mkdtemp(suffix="git_test_checkout") | 379 self.git_checkout_path = self._mkdtemp(suffix="git_test_checkout") |
| 380 # --quiet doesn't make git svn silent | 380 # --quiet doesn't make git svn silent |
| 381 self._run_silent(['git', 'svn', 'clone', '-T', 'trunk', self.svn_repo_ur
l, self.git_checkout_path]) | 381 self._run_silent(['git', 'svn', 'clone', '-T', 'trunk', self.svn_repo_ur
l, self.git_checkout_path]) |
| 382 self._chdir(self.git_checkout_path) | 382 self._chdir(self.git_checkout_path) |
| 383 self.git_v2 = self._run(['git', '--version']).startswith('git version 2'
) |
| 384 if self.git_v2: |
| 385 # The semantics of 'git svn clone -T' changed in v2 (apparently), so
the branch names are different. |
| 386 # This works around it, for compatibility w/ v1. |
| 387 self._run_silent(['git', 'branch', 'trunk', 'origin/trunk']) |
| 383 | 388 |
| 384 def _tear_down_gitsvn_checkout(self): | 389 def _tear_down_gitsvn_checkout(self): |
| 385 self._rmtree(self.git_checkout_path) | 390 self._rmtree(self.git_checkout_path) |
| 386 | 391 |
| 387 def test_detection(self): | 392 def test_detection(self): |
| 388 self.assertEqual(self.scm.display_name(), "git") | 393 self.assertEqual(self.scm.display_name(), "git") |
| 389 self.assertEqual(self.scm.supports_local_commits(), True) | 394 self.assertEqual(self.scm.supports_local_commits(), True) |
| 390 | 395 |
| 391 def test_read_git_config(self): | 396 def test_read_git_config(self): |
| 392 key = 'test.git-config' | 397 key = 'test.git-config' |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 479 self._write_text_file('test_file', 'changed test content') | 484 self._write_text_file('test_file', 'changed test content') |
| 480 self.assertTrue(self.scm.has_working_directory_changes()) | 485 self.assertTrue(self.scm.has_working_directory_changes()) |
| 481 self.assertRaises(ScriptError, self.scm.commit_locally_with_message, 'no
working copy changes', False) | 486 self.assertRaises(ScriptError, self.scm.commit_locally_with_message, 'no
working copy changes', False) |
| 482 | 487 |
| 483 def _test_upstream_branch(self): | 488 def _test_upstream_branch(self): |
| 484 self._run(['git', 'checkout', '-t', '-b', 'my-branch']) | 489 self._run(['git', 'checkout', '-t', '-b', 'my-branch']) |
| 485 self._run(['git', 'checkout', '-t', '-b', 'my-second-branch']) | 490 self._run(['git', 'checkout', '-t', '-b', 'my-second-branch']) |
| 486 self.assertEqual(self.scm._upstream_branch(), 'my-branch') | 491 self.assertEqual(self.scm._upstream_branch(), 'my-branch') |
| 487 | 492 |
| 488 def test_remote_branch_ref(self): | 493 def test_remote_branch_ref(self): |
| 489 self.assertEqual(self.scm._remote_branch_ref(), 'refs/remotes/trunk') | 494 remote_branch_ref = self.scm._remote_branch_ref() |
| 495 if self.git_v2: |
| 496 self.assertEqual(remote_branch_ref, 'refs/remotes/origin/trunk') |
| 497 else: |
| 498 self.assertEqual(remote_branch_ref, 'refs/remotes/trunk') |
| 490 | 499 |
| 491 def test_create_patch_local_plus_working_copy(self): | 500 def test_create_patch_local_plus_working_copy(self): |
| 492 self._one_local_commit_plus_working_copy_changes() | 501 self._one_local_commit_plus_working_copy_changes() |
| 493 patch = self.scm.create_patch() | 502 patch = self.scm.create_patch() |
| 494 self.assertRegexpMatches(patch, r'test_file_commit1') | 503 self.assertRegexpMatches(patch, r'test_file_commit1') |
| 495 self.assertRegexpMatches(patch, r'test_file_commit2') | 504 self.assertRegexpMatches(patch, r'test_file_commit2') |
| 496 | 505 |
| 497 def test_create_patch(self): | 506 def test_create_patch(self): |
| 498 self._one_local_commit_plus_working_copy_changes() | 507 self._one_local_commit_plus_working_copy_changes() |
| 499 patch = self.scm.create_patch() | 508 patch = self.scm.create_patch() |
| (...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 685 scm = self.make_scm() | 694 scm = self.make_scm() |
| 686 scm.find_checkout_root = lambda path: '' | 695 scm.find_checkout_root = lambda path: '' |
| 687 scm._run_git = lambda args: 'Date: 2013-02-08 08:05:49 +0000' | 696 scm._run_git = lambda args: 'Date: 2013-02-08 08:05:49 +0000' |
| 688 self.assertEqual(scm.timestamp_of_revision('some-path', '12345'), '2013-
02-08T08:05:49Z') | 697 self.assertEqual(scm.timestamp_of_revision('some-path', '12345'), '2013-
02-08T08:05:49Z') |
| 689 | 698 |
| 690 scm._run_git = lambda args: 'Date: 2013-02-08 01:02:03 +0130' | 699 scm._run_git = lambda args: 'Date: 2013-02-08 01:02:03 +0130' |
| 691 self.assertEqual(scm.timestamp_of_revision('some-path', '12345'), '2013-
02-07T23:32:03Z') | 700 self.assertEqual(scm.timestamp_of_revision('some-path', '12345'), '2013-
02-07T23:32:03Z') |
| 692 | 701 |
| 693 scm._run_git = lambda args: 'Date: 2013-02-08 01:55:21 -0800' | 702 scm._run_git = lambda args: 'Date: 2013-02-08 01:55:21 -0800' |
| 694 self.assertEqual(scm.timestamp_of_revision('some-path', '12345'), '2013-
02-08T09:55:21Z') | 703 self.assertEqual(scm.timestamp_of_revision('some-path', '12345'), '2013-
02-08T09:55:21Z') |
| OLD | NEW |