test_class.file: matchers/src/test/java/org/cthul/matchers/proc/RaisesTest.java
test_class.identifier: RaisesTest
test_case.body: @Test
      public void test_error_description() {
          Matcher<Throwable> tMatcher = mock(Matcher.class);
          when(tMatcher.matches(anyObject())).thenReturn(true);
          DescribeAnswer.describe(tMatcher, "throwable-matcher msg");
          
          Matcher<String> sMatcher = mock(Matcher.class);
          when(sMatcher.matches(anyObject())).thenReturn(false);
          DescribeAnswer.describe(sMatcher, "message-matcher msg");
          DescribeAnswer.mismatch(sMatcher, "message-mismatch");
  
          Matcher<Object> matcher = instanceOf(Throwable.class).that(
                  tMatcher, 
                  new ExceptionMessage(sMatcher));
          
          AssertionError ae = null;
          
          P0 throwIllegalArgument = new P0() {
              @Override protected Object run() throws Throwable {
                  throw new IllegalArgumentException("No value!");
              }
          };
          
          try {
              assertThat(throwIllegalArgument, raises(matcher));
          } catch (AssertionError e) {
              ae = e;
          }
          
          assertThat("Matching failed", ae, not(nullValue()));
          assertThat(ae.getMessage(), containsPattern("Expected"
                  + ".*throwable-matcher msg and throwable message is message-matcher msg.*"));
          assertThat(ae.getMessage(),
                     containsPattern("but: threw message message-mismatch"));
      }
test_case.class_method_signature: RaisesTest.test_error_description()
test_case.full_signature: @Test public void test_error_description()
test_case.identifier: test_error_description
test_case.invocations: mock thenReturn when matches anyObject describe mock thenReturn when matches anyObject describe mismatch that instanceOf assertThat raises assertThat not nullValue assertThat getMessage containsPattern assertThat getMessage containsPattern
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void test_error_description()
focal_class.declarator: exceptionMatcher
focal_class.modifier: private final
focal_class.original_string: private final Matcher<? super Throwable> exceptionMatcher;
focal_class.type: Matcher<? super Throwable>
focal_class.var_name: exceptionMatcher
focal_class.file: matchers/src/main/java/org/cthul/matchers/proc/Raises.java
focal_class.identifier: Raises
focal_class.class_method_signature: Raises.Raises(Matcher<? super Throwable> matcher)
focal_class.full_signature: public  Raises(Matcher<? super Throwable> matcher)
focal_class.identifier: Raises
focal_class.modifiers: public
focal_class.parameters: (Matcher<? super Throwable> matcher)
focal_class.signature:  Raises(Matcher<? super Throwable> matcher)
focal_class.class_method_signature: Raises.getDescriptionPrecedence()
focal_class.full_signature: @Override public int getDescriptionPrecedence()
focal_class.identifier: getDescriptionPrecedence
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int getDescriptionPrecedence()
focal_class.class_method_signature: Raises.describeTo(Description description)
focal_class.full_signature: @Override public void describeTo(Description description)
focal_class.identifier: describeTo
focal_class.modifiers: @Override public
focal_class.parameters: (Description description)
focal_class.return: void
focal_class.signature: void describeTo(Description description)
focal_class.class_method_signature: Raises.matchesSafely(Proc proc)
focal_class.full_signature: @Override protected boolean matchesSafely(Proc proc)
focal_class.identifier: matchesSafely
focal_class.modifiers: @Override protected
focal_class.parameters: (Proc proc)
focal_class.return: boolean
focal_class.signature: boolean matchesSafely(Proc proc)
focal_class.class_method_signature: Raises.matchResultSafely(I proc)
focal_class.full_signature: @Override protected MatchResult<I> matchResultSafely(I proc)
focal_class.identifier: matchResultSafely
focal_class.modifiers: @Override protected
focal_class.parameters: (I proc)
focal_class.return: MatchResult<I>
focal_class.signature: MatchResult<I> matchResultSafely(I proc)
focal_class.class_method_signature: Raises.raises(Matcher<? super Throwable> throwableMatcher)
focal_class.full_signature: @Factory public static Matcher<Proc> raises(Matcher<? super Throwable> throwableMatcher)
focal_class.identifier: raises
focal_class.modifiers: @Factory public static
focal_class.parameters: (Matcher<? super Throwable> throwableMatcher)
focal_class.return: Matcher<Proc>
focal_class.signature: Matcher<Proc> raises(Matcher<? super Throwable> throwableMatcher)
focal_class.class_method_signature: Raises.raises(Class<? extends Throwable> clazz)
focal_class.full_signature: @Factory public static Matcher<Proc> raises(Class<? extends Throwable> clazz)
focal_class.identifier: raises
focal_class.modifiers: @Factory public static
focal_class.parameters: (Class<? extends Throwable> clazz)
focal_class.return: Matcher<Proc>
focal_class.signature: Matcher<Proc> raises(Class<? extends Throwable> clazz)
focal_class.class_method_signature: Raises.raises(String regex)
focal_class.full_signature: @Factory public static Matcher<Proc> raises(String regex)
focal_class.identifier: raises
focal_class.modifiers: @Factory public static
focal_class.parameters: (String regex)
focal_class.return: Matcher<Proc>
focal_class.signature: Matcher<Proc> raises(String regex)
focal_class.class_method_signature: Raises.raises(Class<? extends Throwable> clazz, String regex)
focal_class.full_signature: @Factory public static Matcher<Proc> raises(Class<? extends Throwable> clazz, String regex)
focal_class.identifier: raises
focal_class.modifiers: @Factory public static
focal_class.parameters: (Class<? extends Throwable> clazz, String regex)
focal_class.return: Matcher<Proc>
focal_class.signature: Matcher<Proc> raises(Class<? extends Throwable> clazz, String regex)
focal_class.class_method_signature: Raises.raises(Class<? extends Throwable> clazz, Matcher<? super Throwable> matcher)
focal_class.full_signature: @Factory public static Matcher<Proc> raises(Class<? extends Throwable> clazz, Matcher<? super Throwable> matcher)
focal_class.identifier: raises
focal_class.modifiers: @Factory public static
focal_class.parameters: (Class<? extends Throwable> clazz, Matcher<? super Throwable> matcher)
focal_class.return: Matcher<Proc>
focal_class.signature: Matcher<Proc> raises(Class<? extends Throwable> clazz, Matcher<? super Throwable> matcher)
focal_class.class_method_signature: Raises.raisesException()
focal_class.full_signature: @Factory public static Matcher<Proc> raisesException()
focal_class.identifier: raisesException
focal_class.modifiers: @Factory public static
focal_class.parameters: ()
focal_class.return: Matcher<Proc>
focal_class.signature: Matcher<Proc> raisesException()
focal_class.class_method_signature: Raises.raisesException(Matcher<? super Exception> matcher)
focal_class.full_signature: @Factory public static Matcher<Proc> raisesException(Matcher<? super Exception> matcher)
focal_class.identifier: raisesException
focal_class.modifiers: @Factory public static
focal_class.parameters: (Matcher<? super Exception> matcher)
focal_class.return: Matcher<Proc>
focal_class.signature: Matcher<Proc> raisesException(Matcher<? super Exception> matcher)
focal_class.class_method_signature: Raises.raisesException(Class<? extends Exception> clazz)
focal_class.full_signature: @Factory public static Matcher<Proc> raisesException(Class<? extends Exception> clazz)
focal_class.identifier: raisesException
focal_class.modifiers: @Factory public static
focal_class.parameters: (Class<? extends Exception> clazz)
focal_class.return: Matcher<Proc>
focal_class.signature: Matcher<Proc> raisesException(Class<? extends Exception> clazz)
focal_class.class_method_signature: Raises.raisesException(String regex)
focal_class.full_signature: @Factory public static Matcher<Proc> raisesException(String regex)
focal_class.identifier: raisesException
focal_class.modifiers: @Factory public static
focal_class.parameters: (String regex)
focal_class.return: Matcher<Proc>
focal_class.signature: Matcher<Proc> raisesException(String regex)
focal_class.class_method_signature: Raises.raisesException(Class<? extends Exception> clazz, String regex)
focal_class.full_signature: @Factory public static Matcher<Proc> raisesException(Class<? extends Exception> clazz, String regex)
focal_class.identifier: raisesException
focal_class.modifiers: @Factory public static
focal_class.parameters: (Class<? extends Exception> clazz, String regex)
focal_class.return: Matcher<Proc>
focal_class.signature: Matcher<Proc> raisesException(Class<? extends Exception> clazz, String regex)
focal_class.superclass: extends TypesafeNestedResultMatcher<Proc>
focal_method.body: public Raises(Matcher<? super Throwable> matcher) {
          super(Proc.class);
          exceptionMatcher = matcher;
      }
focal_method.class_method_signature: Raises.Raises(Matcher<? super Throwable> matcher)
focal_method.full_signature: public  Raises(Matcher<? super Throwable> matcher)
focal_method.identifier: Raises
focal_method.modifiers: public
focal_method.parameters: (Matcher<? super Throwable> matcher)
focal_method.signature:  Raises(Matcher<? super Throwable> matcher)