### Question:
PlaybackTransportControlGlue extends PlaybackBaseControlGlue<T> { @Override public void setControlsRow(PlaybackControlsRow controlsRow) { super.setControlsRow(controlsRow); sHandler.removeMessages(MSG_UPDATE_PLAYBACK_STATE, mGlueWeakReference); onUpdatePlaybackState(); } PlaybackTransportControlGlue(Context context, T impl); @Override void setControlsRow(PlaybackControlsRow controlsRow); @Override void onActionClicked(Action action); @Override boolean onKey(View v, int keyCode, KeyEvent event); final void setSeekProvider(PlaybackSeekDataProvider seekProvider); final PlaybackSeekDataProvider getSeekProvider(); final void setSeekEnabled(boolean seekEnabled); final boolean isSeekEnabled();  }### Answer:
@Test public void customControlsRow() { mContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); InstrumentationRegistry.getInstrumentation().runOnMainSync(new Runnable() { @Override public void run() { mGlue = new PlaybackTransportControlGlueImpl(mContext); } }); PlaybackControlsRow row = new PlaybackControlsRow(mContext); mGlue.setControlsRow(row); PlaybackGlueHostImpl host = new PlaybackGlueHostImpl(); mGlue.setHost(host); assertSame(mGlue, host.mGlue); assertSame(host, mGlue.getHost()); assertTrue(host.mPlaybackRowPresenter instanceof PlaybackTransportRowPresenter); assertSame(host.mRow, row); }
@Test public void customRowAndPresenter() { mContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); InstrumentationRegistry.getInstrumentation().runOnMainSync(new Runnable() { @Override public void run() { mGlue = new PlaybackTransportControlGlueImpl(mContext); } }); PlaybackControlsRow row = new PlaybackControlsRow(mContext); mGlue.setControlsRow(row); PlaybackRowPresenter presenter = new PlaybackRowPresenter() { @Override protected RowPresenter.ViewHolder createRowViewHolder(ViewGroup parent) { return new RowPresenter.ViewHolder(new LinearLayout(parent.getContext())); } }; mGlue.setPlaybackRowPresenter(presenter); PlaybackGlueHostImpl host = new PlaybackGlueHostImpl(); mGlue.setHost(host); assertSame(mGlue, host.mGlue); assertSame(host, mGlue.getHost()); assertSame(host.mPlaybackRowPresenter, presenter); assertSame(host.mRow, row); }