~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test__dirstate_helpers.py

Integrate in stat-cache-updates-during-commit with faster iter-changes.

Show diffs side-by-side

added added

removed removed

Lines of Context:
18
18
 
19
19
import bisect
20
20
import os
 
21
import time
21
22
 
22
23
from bzrlib import (
23
24
    dirstate,
800
801
    def set_update_entry(self):
801
802
        self.update_entry = dirstate.py_update_entry
802
803
 
 
804
    def test_observed_sha1_cachable(self):
 
805
        state, entry = self.get_state_with_a()
 
806
        atime = time.time() - 10
 
807
        self.build_tree(['a'])
 
808
        statvalue = os.lstat('a')
 
809
        statvalue = test_dirstate._FakeStat(statvalue.st_size, atime, atime,
 
810
            statvalue.st_dev, statvalue.st_ino, statvalue.st_mode)
 
811
        state._observed_sha1(entry, "foo", statvalue)
 
812
        self.assertEqual('foo', entry[1][0][1])
 
813
        packed_stat = dirstate.pack_stat(statvalue)
 
814
        self.assertEqual(packed_stat, entry[1][0][4])
 
815
 
 
816
    def test_observed_sha1_not_cachable(self):
 
817
        state, entry = self.get_state_with_a()
 
818
        oldval = entry[1][0][1]
 
819
        oldstat = entry[1][0][4]
 
820
        self.build_tree(['a'])
 
821
        statvalue = os.lstat('a')
 
822
        state._observed_sha1(entry, "foo", statvalue)
 
823
        self.assertEqual(oldval, entry[1][0][1])
 
824
        self.assertEqual(oldstat, entry[1][0][4])
 
825
 
803
826
    def test_update_entry(self):
804
827
        state, entry = self.get_state_with_a()
805
828
        self.build_tree(['a'])