1 package org.apache.maven.scm.provider.perforce.command.changelog;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.io.File;
23 import java.util.ArrayList;
24 import java.util.List;
25
26 import org.apache.maven.scm.ChangeFile;
27 import org.apache.maven.scm.ChangeSet;
28 import org.apache.maven.scm.ScmTestCase;
29 import org.apache.maven.scm.log.DefaultLog;
30 import org.apache.maven.scm.util.ConsumerUtils;
31
32
33
34
35
36 public class PerforceDescribeConsumerTest
37 extends ScmTestCase
38 {
39 public void testParse()
40 throws Exception
41 {
42 File testFile = getTestFile( "src/test/resources/perforce/perforcedescribelog.txt" );
43
44 PerforceDescribeConsumer consumer =
45 new PerforceDescribeConsumer( "//depot/test", null, new DefaultLog() );
46
47 ConsumerUtils.consumeFile( testFile, consumer );
48
49 List<ChangeSet> entries = new ArrayList<ChangeSet>( consumer.getModifications() );
50 assertEquals( "Wrong number of entries returned", 7, entries.size() );
51 ChangeSet entry = entries.get(0);
52 assertEquals( "mcronin", entry.getAuthor() );
53 assertEquals( "Wrong number of files returned", 3, entry.getFiles().size() );
54 assertEquals( "demo/demo.c", ( (ChangeFile) entry.getFiles().get( 0 ) ).getName() );
55 assertEquals( "2003-08-07", entry.getDateFormatted() );
56 assertEquals( "17:21:57", entry.getTimeFormatted() );
57 entry = entries.get(6);
58 assertEquals( "jim", entry.getAuthor() );
59 assertEquals( "Wrong number of files returned", 1, entry.getFiles().size() );
60 assertEquals( "junk/linefeed.txt", ( (ChangeFile) entry.getFiles().get( 0 ) ).getName() );
61 }
62 }