Plugin extends Input implements ITransform, IPluginOutput { @Override public boolean canConnectFirst(IInputRaw connector) { return true; } protected  Plugin(); void checkIfOutputQueueHasData(); void notifySurfaceReady(ISurface surface); @Override CommandQueue getOutputCommandQueue(); abstract void start(); abstract void stop(); @Override void push(Frame frame); @Override MediaFormatType getMediaFormatType(); @Override MediaFormat getMediaFormatByType(MediaFormatType mediaFormatType); @Override MediaFormat getOutputMediaFormat(); @Override void incrementConnectedPluginsCount(); @Override boolean canConnectFirst(IInputRaw connector); boolean canConnectFirst(IOutputRaw connector); @Override void recreate(); void setInputResolution(Resolution resolution);  }
@Test public void canConnectFirst() { AudioEncoder audioEncoder = create.audioEncoder().construct(); boolean shouldBeTrue = audioEncoder.canConnectFirst(mock(IInputRaw.class)); assertTrue(shouldBeTrue); }