# Deprecated API

## Contents

- Deprecated Classes
- Deprecated Methods

- Deprecated Classes
  Class and Description
  org.junit.rules.TestWatchman Use `TestWatcher` (which implements `TestRule`) instead.

- Deprecated Methods
  Method and Description
  org.hamcrest.Matcher._dont_implement_Matcher___instead_extend_BaseMatcher_() to make
  org.hamcrest.BaseMatcher._dont_implement_Matcher___instead_extend_BaseMatcher_()
  org.junit.Assert.assertEquals(double, double) Use `assertEquals(double expected, double actual, double delta)` instead
  org.junit.Assert.assertEquals(Object[], Object[]) use assertArrayEquals
  org.junit.Assert.assertEquals(String, double, double) Use `assertEquals(String message, double expected, double actual, double delta)` instead
  org.junit.Assert.assertEquals(String, Object[], Object[]) use assertArrayEquals
  org.junit.matchers.JUnitMatchers.both(Matcher) Please use `CoreMatchers.both(Matcher)` instead.
  org.junit.matchers.JUnitMatchers.containsString(String) Please use `CoreMatchers.containsString(String)` instead.
  org.junit.matchers.JUnitMatchers.either(Matcher) Please use `CoreMatchers.either(Matcher)` instead.
  org.junit.runner.Request.errorReport(Class, Throwable)
  org.junit.matchers.JUnitMatchers.everyItem(Matcher) Please use `CoreMatchers.everyItem(Matcher)` instead.
  org.junit.experimental.max.MaxCore.forFolder(String) use storedLocally()
  org.junit.matchers.JUnitMatchers.hasItem(Matcher) Please use `CoreMatchers.hasItem(Matcher)` instead.
  org.junit.matchers.JUnitMatchers.hasItem(T) Please use `CoreMatchers.hasItem(Object)` instead.
  org.junit.matchers.JUnitMatchers.hasItems(Matcher...) Please use `CoreMatchers.hasItems(Matcher...)` instead.
  org.junit.matchers.JUnitMatchers.hasItems(T...) Please use `CoreMatchers.hasItems(Object...)` instead.
  org.hamcrest.CoreMatchers.is(Class) use isA(Class type) instead.
  org.hamcrest.core.Is.is(Class) use isA(Class type) instead.
  org.junit.runners.BlockJUnit4ClassRunner.possiblyExpectingExceptions(FrameworkMethod, Object, Statement) Will be private soon: use Rules instead
  org.junit.runners.model.FrameworkMethod.producesType(Type) This is used only by the Theories runner, and does not use all the generic type info that it ought to. It will be replaced with a forthcoming ParameterSignature#canAcceptResultOf(FrameworkMethod) once Theories moves to junit-contrib.
  org.junit.runners.BlockJUnit4ClassRunner.validateInstanceMethods(List) unused API, will go away in future version
  org.junit.runners.BlockJUnit4ClassRunner.withAfters(FrameworkMethod, Object, Statement) Will be private soon: use Rules instead
  org.junit.runners.BlockJUnit4ClassRunner.withBefores(FrameworkMethod, Object, Statement) Will be private soon: use Rules instead
  org.junit.runners.BlockJUnit4ClassRunner.withPotentialTimeout(FrameworkMethod, Object, Statement) Will be private soon: use Rules instead