### Question:
ScrimRenderer { void render(Canvas canvas, SlidrPosition position, Paint paint) { switch (position) { case LEFT: renderLeft(canvas, paint); break; case RIGHT: renderRight(canvas, paint); break; case TOP: renderTop(canvas, paint); break; case BOTTOM: renderBottom(canvas, paint); break; case VERTICAL: renderVertical(canvas, paint); break; case HORIZONTAL: renderHorizontal(canvas, paint); break; } } ScrimRenderer(@NonNull View rootView, @NonNull View decorView);   }### Answer:
@Test public void shouldDrawRectForLeftPosition() { renderer.render(canvas, SlidrPosition.LEFT, paint); verify(canvas).drawRect(0, 0, LEFT, HEIGHT, paint); }
@Test public void shouldDrawRectForRightPosition() { renderer.render(canvas, SlidrPosition.RIGHT, paint); verify(canvas).drawRect(RIGHT, 0, WIDTH, HEIGHT, paint); }
@Test public void shouldDrawRectForTopPosition() { renderer.render(canvas, SlidrPosition.TOP, paint); verify(canvas).drawRect(0, 0, WIDTH, TOP, paint); }
@Test public void shouldDrawRectForBottomPosition() { renderer.render(canvas, SlidrPosition.BOTTOM, paint); verify(canvas).drawRect(0, BOTTOM, WIDTH, HEIGHT, paint); }
@Test public void shouldDrawRectForPositiveVerticalPosition() { renderer.render(canvas, SlidrPosition.VERTICAL, paint); verify(canvas).drawRect(0, 0, WIDTH, TOP, paint); }
@Test public void shouldDrawRectForNegativeVerticalPosition() { when(decorView.getTop()).thenReturn(VERTICAL_TOP); renderer.render(canvas, SlidrPosition.VERTICAL, paint); verify(canvas).drawRect(0, BOTTOM, WIDTH, HEIGHT, paint); }
@Test public void shouldDrawRectForPositiveHorizontalPosition() { renderer.render(canvas, SlidrPosition.HORIZONTAL, paint); verify(canvas).drawRect(0, 0, LEFT, HEIGHT, paint); }
@Test public void shouldDrawRectForNegativeHorizontalPosition() { when(decorView.getLeft()).thenReturn(HORIZONTAL_LEFT); renderer.render(canvas, SlidrPosition.HORIZONTAL, paint); verify(canvas).drawRect(RIGHT, 0, WIDTH, HEIGHT, paint); }