1 package io.github.reggert.reb4j; 2 3 import static org.hamcrest.CoreMatchers.is; 4 import static org.junit.Assert.assertEquals; 5 import static org.junit.Assert.assertThat; 6 7 import io.github.reggert.reb4j.Adopted; 8 import io.github.reggert.reb4j.Literal; 9 10 import java.util.regex.Pattern; 11 12 import org.junit.Test; 13 14 15 public class AdoptTest 16 { 17 @Test 18 public void testAdopt() 19 { 20 final Pattern pattern = Pattern.compile("abc"); 21 final Adopted expression = Adopted.fromPattern(pattern); 22 assertEquals("abc", expression.expression().toString()); 23 } 24 25 @Test 26 public void testAdoptedHashcodeEquals() 27 { 28 final Pattern pattern1 = Pattern.compile("abc"); 29 final Adopted expression1 = Adopted.fromPattern(pattern1); 30 final Pattern pattern2 = expression1.toPattern(); 31 final Adopted expression2 = Adopted.fromPattern(pattern2); 32 final Literal literal = Literal.literal("abc"); 33 assertThat(expression1.equals(expression1), is(true)); 34 assertThat(expression1.equals(expression2), is(true)); 35 assertThat(expression1.equals(literal), is(false)); 36 assertThat(expression1.hashCode(), is(expression2.hashCode())); 37 } 38 }