diff --git a/components/svn/svnclasses.pas b/components/svn/svnclasses.pas index ea60cb888..7d854e327 100644 --- a/components/svn/svnclasses.pas +++ b/components/svn/svnclasses.pas @@ -34,7 +34,7 @@ unit SvnClasses; interface uses - Classes, SysUtils, strutils, + Classes, SysUtils, strutils, dateutils, contnrs, DOM, XMLRead, SvnCommand; @@ -162,6 +162,7 @@ type FMessage: string; FRevision: integer; function GetCommonPath: string; + function GetDateTime: TDateTime; function GetDisplayDate: string; function GetLogPath(index: integer): TLogPath; function GetLogPathCount: integer; @@ -174,6 +175,7 @@ type property Author: string read FAuthor write FAuthor; property CommonPath: string read GetCommonPath; property Date: string read FDate write FDate; + property DateTime: TDateTime read GetDateTime; property DisplayDate: string read GetDisplayDate; property Message: string read FMessage write FMessage; property Path[index: integer] :TLogPath read GetLogPath; @@ -548,6 +550,11 @@ begin end; end; +function TLogEntry.GetDateTime: TDateTime; +begin + Result := ScanDateTime('yyyy-mm-dd"T"hh:nn:ss.zzz',FDate); +end; + function TLogEntry.GetDisplayDate: string; begin Result := Copy(FDate, 1, 10) + ' ' + Copy(FDate,12,8); @@ -696,7 +703,6 @@ begin Lines := TStringList.Create; try Lines.LoadFromStream(s); - //writeln(Lines.Text); i := 0; while (i - + + + + - @@ -56,11 +58,8 @@ - + - - - diff --git a/components/svn/test/testsvnclasses.pas b/components/svn/test/testsvnclasses.pas index 1d68db3ba..e983f93d1 100644 --- a/components/svn/test/testsvnclasses.pas +++ b/components/svn/test/testsvnclasses.pas @@ -5,7 +5,7 @@ unit TestSvnClasses; interface uses - Classes, SysUtils, fpcunit, testregistry, + Classes, SysUtils, dateutils, fpcunit, testregistry, svnclasses; type @@ -116,6 +116,8 @@ begin '2007-02-20T10:57:42.928052Z', LogEntry.Date); AssertEquals('Wrong log display date', '2007-02-20 10:57:42', LogEntry.DisplayDate); + AssertEquals('Wrong log datetime', + EncodeDateTime(2007,2,20,10,57,42,928), LogEntry.DateTime); AssertEquals('Wrong log message', 'TAChart: added icon, added to make bigide', LogEntry.Message); finally