View Javadoc

1   package io.github.reggert.reb4j.charclass;
2   
3   import static org.hamcrest.CoreMatchers.is;
4   import static org.junit.Assert.assertThat;
5   
6   import io.github.reggert.reb4j.Entity;
7   import io.github.reggert.reb4j.Expression;
8   import io.github.reggert.reb4j.charclass.CharClass;
9   
10  import java.util.HashSet;
11  
12  
13  import org.junit.Test;
14  
15  
16  public class NamedPredefinedClassTest
17  {
18  
19  	@Test
20  	public void testHashCodeAndEquals()
21  	{
22  		final HashSet<Expression> set = new HashSet<Expression>();
23  		set.add(CharClass.Posix.ALPHA);
24  		set.add(CharClass.Posix.ALPHA.negated().negated());
25  		set.add(CharClass.Posix.BLANK);
26  		assertThat(set.size(), is(2));
27  		assertThat(set.contains(CharClass.Posix.ALPHA), is(true));
28  		assertThat(set.contains(CharClass.Posix.CONTROL), is(false));
29  		assertThat(CharClass.Posix.ALPHA.equals(CharClass.Posix.ALPHA), is(true));
30  		assertThat(CharClass.Posix.ALPHA.equals(CharClass.Posix.ALPHA.negated().negated()), is(true));
31  		assertThat(CharClass.Posix.ALPHA.equals(CharClass.Posix.BLANK), is(false));
32  		assertThat(CharClass.Posix.ALPHA.equals(Entity.ANY_CHAR), is(false));
33  		assertThat(CharClass.Posix.ALPHA.equals(null), is(false));
34  	}
35  
36  }