Layout newLayout; TextLayoutBuilder layoutBuilder = new TextLayoutBuilder(); layoutBuilder.setShouldCacheLayout(false);
@Before public void setup() { mBuilder = new TextLayoutBuilder(); mBuilder.setText(TEST); // Clear the cache. TextLayoutBuilder.sCache.evictAll(); }
@Test public void testTwoBuildersWithSameParamsAndCaching() { mLayout = mBuilder.setShouldCacheLayout(true).build(); TextLayoutBuilder newBuilder = new TextLayoutBuilder(); Layout newLayout = newBuilder.setText(TEST).setShouldCacheLayout(true).build(); assertEquals(mLayout, newLayout); }
@Test public void testTwoBuildersWithSameParamsAndNoCaching() { mLayout = mBuilder.setShouldCacheLayout(false).build(); TextLayoutBuilder newBuilder = new TextLayoutBuilder(); Layout newLayout = newBuilder.setText(TEST).setShouldCacheLayout(false).build(); assertNotEquals(mLayout, newLayout); }
@Test public void testMeasureModeExactly() { final Layout layout = new TextLayoutBuilder() .setText(ShadowLayout.LONG_TEXT) .setWidth(20, MEASURE_MODE_EXACTLY) .setTypeface(Typeface.DEFAULT) .setTextSize(10) .build(); assertEquals(20, layout.getWidth()); }
@Test public void testLegacyBehaviour() { final Layout layout = new TextLayoutBuilder() .setText(ShadowLayout.LONG_TEXT) .setWidth(-1) .setTypeface(Typeface.DEFAULT) .setTextSize(10) .build(); assertEquals(ShadowLayout.LONG_TEXT_LENGTH, layout.getWidth()); } }
@Test public void testMeasureModeUnspecified() { final Layout layout = new TextLayoutBuilder() .setText(ShadowLayout.LONG_TEXT) .setWidth(20, MEASURE_MODE_UNSPECIFIED) .setTypeface(Typeface.DEFAULT) .setTextSize(10) .build(); assertEquals(ShadowLayout.LONG_TEXT_LENGTH, layout.getWidth()); }
@Test public void testMeasureModeAtMostLongText() { final Layout layout = new TextLayoutBuilder() .setText(ShadowLayout.LONG_TEXT) .setWidth(20, MEASURE_MODE_AT_MOST) .setTypeface(Typeface.DEFAULT) .setTextSize(10) .build(); assertEquals(20, layout.getWidth()); }
@Test public void testMeasureModeAtMostShortText() { final Layout layout = new TextLayoutBuilder() .setText(ShadowLayout.SHORT_TEXT) .setWidth(20, MEASURE_MODE_AT_MOST) .setTypeface(Typeface.DEFAULT) .setTextSize(10) .build(); assertEquals(ShadowLayout.SHORT_TEXT_LENGTH, layout.getWidth()); }