1 package org.apache.maven.scm.provider.synergy.consumer;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import org.apache.maven.scm.ScmTestCase;
23 import org.apache.maven.scm.log.DefaultLog;
24 import org.apache.maven.scm.provider.synergy.util.SynergyTask;
25
26 import java.io.BufferedReader;
27 import java.io.IOException;
28 import java.io.InputStream;
29 import java.io.InputStreamReader;
30 import java.util.Calendar;
31 import java.util.Collection;
32 import java.util.Iterator;
33
34
35
36
37 public class SynergyGetCompletedTasksConsumerTest
38 extends ScmTestCase
39 {
40
41 @Override
42 protected void tearDown()
43 throws Exception
44 {
45 super.tearDown();
46
47
48 System.clearProperty( SynergyGetCompletedTasksConsumer.CCMDATEFORMAT_PROPERTY );
49 System.clearProperty( SynergyGetCompletedTasksConsumer.LANGUAGE_PROPERTY );
50 System.clearProperty( SynergyGetCompletedTasksConsumer.COUNTRY_PROPERTY );
51 }
52
53
54 public void testSynergyGetCompletedTasksConsumer()
55 throws IOException
56 {
57 InputStream inputStream = getResourceAsStream( "/synergy/consumer/getCompletedTasks.txt" );
58
59 BufferedReader in = new BufferedReader( new InputStreamReader( inputStream ) );
60
61 String s = in.readLine();
62
63 SynergyGetCompletedTasksConsumer consumer = new SynergyGetCompletedTasksConsumer( new DefaultLog() );
64
65 while ( s != null )
66 {
67 consumer.consumeLine( s );
68
69 s = in.readLine();
70 }
71
72 Collection<SynergyTask> entries = consumer.getTasks();
73
74 assertEquals( "Wrong number of tasks returned", 1, entries.size() );
75
76 SynergyTask task = (SynergyTask) entries.iterator().next();
77 assertEquals( 35, task.getNumber() );
78 assertEquals( "AHD456", task.getUsername() );
79 assertEquals( "gefdeag", task.getComment() );
80 Calendar cal = Calendar.getInstance();
81 cal.clear();
82 cal.set( 2006, Calendar.OCTOBER, 4, 15, 42, 47 );
83
84 assertEquals( cal.getTime(), task.getModifiedTime() );
85
86 }
87
88 public void testSynergyGetCompletedTasksConsumerWithFrenchDate()
89 throws IOException
90 {
91 InputStream inputStream = getResourceAsStream( "/synergy/consumer/getCompletedTasksFrenchDate.txt" );
92
93 BufferedReader in = new BufferedReader( new InputStreamReader( inputStream ) );
94
95 String s = in.readLine();
96
97 System.setProperty( SynergyGetCompletedTasksConsumer.CCMDATEFORMAT_PROPERTY, "EEEE dd MMMM yyyy HH:mm:ss" );
98 System.setProperty( SynergyGetCompletedTasksConsumer.LANGUAGE_PROPERTY, "fr" );
99 System.setProperty( SynergyGetCompletedTasksConsumer.COUNTRY_PROPERTY, "FR" );
100 SynergyGetCompletedTasksConsumer consumer = new SynergyGetCompletedTasksConsumer( new DefaultLog() );
101
102 while ( s != null )
103 {
104 consumer.consumeLine( s );
105
106 s = in.readLine();
107 }
108
109 Collection<SynergyTask> entries = consumer.getTasks();
110
111 assertEquals( "Wrong number of tasks returned", 2, entries.size() );
112
113 Iterator<SynergyTask> i = entries.iterator();
114 SynergyTask task = (SynergyTask) i.next();
115 assertEquals( 52, task.getNumber() );
116 assertEquals( "ccm_root", task.getUsername() );
117 assertEquals( "Modification du pom (url scm)", task.getComment() );
118 Calendar cal = Calendar.getInstance();
119 cal.clear();
120 cal.set( 2006, Calendar.OCTOBER, 6, 10, 3, 59 );
121 assertEquals( cal.getTime(), task.getModifiedTime() );
122
123 task = (SynergyTask) i.next();
124 assertEquals( 53, task.getNumber() );
125 assertEquals( "ccm_root", task.getUsername() );
126 assertEquals( "Inverser l'odre purpose/release", task.getComment() );
127 cal.clear();
128 cal.set( 2006, Calendar.OCTOBER, 6, 10, 47, 13 );
129 assertEquals( cal.getTime(), task.getModifiedTime() );
130 }
131 }