1   
2   
3   
4   
5   
6   
7   
8   
9   
10  
11  
12  
13  
14  
15  
16  package org.supercsv.cellprocessor.constraint;
17  
18  import static org.junit.Assert.assertEquals;
19  import static org.junit.Assert.assertNull;
20  import static org.supercsv.SuperCsvTestUtils.ANONYMOUS_CSVCONTEXT;
21  
22  import org.junit.Before;
23  import org.junit.Test;
24  import org.supercsv.cellprocessor.ift.CellProcessor;
25  import org.supercsv.exception.SuperCsvConstraintViolationException;
26  import org.supercsv.mock.IdentityTransform;
27  
28  
29  
30  
31  
32  
33  public class EqualsTest {
34  	
35  	private static final String EXPECTED_VALUE = "expected";
36  	
37  	private CellProcessor processor;
38  	private CellProcessor processor2;
39  	private CellProcessor processorChain;
40  	private CellProcessor processorChain2;
41  	
42  	
43  
44  
45  	@Before
46  	public void setUp() {
47  		processor = new Equals();
48  		processor2 = new Equals(EXPECTED_VALUE);
49  		processorChain = new Equals(new IdentityTransform());
50  		processorChain2 = new Equals(EXPECTED_VALUE, new IdentityTransform());
51  	}
52  	
53  	
54  
55  
56  
57  
58  	@Test
59  	public void testValidInput() {
60  		assertEquals(EXPECTED_VALUE, processor.execute(EXPECTED_VALUE, ANONYMOUS_CSVCONTEXT));
61  		assertEquals(EXPECTED_VALUE, processor2.execute(EXPECTED_VALUE, ANONYMOUS_CSVCONTEXT));
62  		assertEquals(EXPECTED_VALUE, processorChain.execute(EXPECTED_VALUE, ANONYMOUS_CSVCONTEXT));
63  		assertEquals(EXPECTED_VALUE, processorChain2.execute(EXPECTED_VALUE, ANONYMOUS_CSVCONTEXT));
64  		
65  		
66  		assertEquals(EXPECTED_VALUE, processor.execute(EXPECTED_VALUE, ANONYMOUS_CSVCONTEXT));
67  		assertEquals(EXPECTED_VALUE, processorChain.execute(EXPECTED_VALUE, ANONYMOUS_CSVCONTEXT));
68  		
69  		
70  		assertEquals(EXPECTED_VALUE, processor2.execute(EXPECTED_VALUE, ANONYMOUS_CSVCONTEXT));
71  		assertEquals(EXPECTED_VALUE, processorChain2.execute(EXPECTED_VALUE, ANONYMOUS_CSVCONTEXT));
72  	}
73  	
74  	
75  
76  
77  	@Test
78  	public void testNullConstantWithNull() {
79  		CellProcessor equalsWithNullConstant = new Equals((Object) null);
80  		assertNull(equalsWithNullConstant.execute(null, ANONYMOUS_CSVCONTEXT));
81  	}
82  	
83  	
84  
85  
86  	@Test(expected = SuperCsvConstraintViolationException.class)
87  	public void testNullConstantWithNonNull() {
88  		CellProcessor equalsWithNullConstant = new Equals((Object) null);
89  		equalsWithNullConstant.execute(EXPECTED_VALUE, ANONYMOUS_CSVCONTEXT);
90  	}
91  	
92  	
93  
94  
95  	@Test(expected = SuperCsvConstraintViolationException.class)
96  	public void testNotEqual() {
97  		assertEquals(EXPECTED_VALUE, processor.execute(EXPECTED_VALUE, ANONYMOUS_CSVCONTEXT));
98  		processor.execute("something else", ANONYMOUS_CSVCONTEXT);
99  	}
100 	
101 	
102 
103 
104 	@Test(expected = SuperCsvConstraintViolationException.class)
105 	public void testNotEqualWithConstant() {
106 		processor2.execute("something else", ANONYMOUS_CSVCONTEXT);
107 	}
108 	
109 }