646
646
timestamp_1ms = round(timestamp, 3)
647
647
self.assertEqual(timestamp_1ms, timestamp)
649
def assertBasisTreeKind(self, kind, tree, file_id):
649
def assertBasisTreeKind(self, kind, tree, path):
650
650
basis = tree.basis_tree()
651
651
basis.lock_read()
653
self.assertEqual(kind, basis.kind(file_id))
653
self.assertEqual(kind, basis.kind(path))
660
660
os.symlink('target', 'name')
661
661
tree.add('name', 'a-file-id')
662
662
tree.commit('Added a symlink')
663
self.assertBasisTreeKind('symlink', tree, 'a-file-id')
663
self.assertBasisTreeKind('symlink', tree, 'name')
665
665
os.unlink('name')
666
666
self.build_tree(['name'])
667
667
tree.commit('Changed symlink to file')
668
self.assertBasisTreeKind('file', tree, 'a-file-id')
668
self.assertBasisTreeKind('file', tree, 'name')
670
670
os.unlink('name')
671
671
os.symlink('target', 'name')
672
672
tree.commit('file to symlink')
673
self.assertBasisTreeKind('symlink', tree, 'a-file-id')
673
self.assertBasisTreeKind('symlink', tree, 'name')
675
675
os.unlink('name')
677
677
tree.commit('symlink to directory')
678
self.assertBasisTreeKind('directory', tree, 'a-file-id')
678
self.assertBasisTreeKind('directory', tree, 'name')
681
681
os.symlink('target', 'name')
682
682
tree.commit('directory to symlink')
683
self.assertBasisTreeKind('symlink', tree, 'a-file-id')
683
self.assertBasisTreeKind('symlink', tree, 'name')
685
685
# prepare for directory <-> file tests
686
686
os.unlink('name')
688
688
tree.commit('symlink to directory')
689
self.assertBasisTreeKind('directory', tree, 'a-file-id')
689
self.assertBasisTreeKind('directory', tree, 'name')
692
692
self.build_tree(['name'])
693
693
tree.commit('Changed directory to file')
694
self.assertBasisTreeKind('file', tree, 'a-file-id')
694
self.assertBasisTreeKind('file', tree, 'name')
696
696
os.unlink('name')
698
698
tree.commit('file to directory')
699
self.assertBasisTreeKind('directory', tree, 'a-file-id')
699
self.assertBasisTreeKind('directory', tree, 'name')
701
701
def test_commit_unversioned_specified(self):
702
702
"""Commit should raise if specified files isn't in basis or worktree"""