예제 #1
0
        public void GetRevisionData_Revision1_AuthorIsChristian()
        {
            var rev = api.GetRevisionData(1, 1);

            Assert.That(rev, Has.Count.EqualTo(1));
            Assert.That(rev[0].Author, Is.EqualTo("Christian"));
            Assert.IsTrue(rev[0].Changes.TrueForAll(c => api.GetPathInfo(c.Path, c.Revision).Author == rev[0].Author));
        }
예제 #2
0
        void AddPath(string path, int revision, bool recursive)
        {
            if (!_highestRevision.Set(path, revision))
            {
                return;
            }

            IndexJobData jobData = new IndexJobData();

            jobData.Path          = path;
            jobData.RevisionFirst = revision;
            jobData.RevisionLast  = Revision.Head;
            jobData.Info          = _svn.GetPathInfo(path, revision);
            if (jobData.Info == null)
            {
                return;                       // workaround for issues with forbidden characters in local repository access
            }
            lock (_headJobs) _headJobs[path] = jobData;

            if (recursive && jobData.Info.IsDirectory)
            {
                _svn.ForEachChild(path, revision, Change.Add, QueueAnalyzeJob);
            }
        }