### Question:
DigitalIOFeature extends AbstractPinFeature implements DigitalIO { @Override public String getName() { return String.format(NAME_FORMAT, getPin().getName()); } DigitalIOFeature(Pin pin, DigitalInput input, DigitalOutput output); @Override Signal read(); @Override Signal readDebounced(int debounceMilliseconds); @Override void disableInterrupts(); @Override void enableInterrupts(); @Override boolean areInterruptsEnabled(); @Override void setInterruptDebounceMs(int milliSeconds); @Override int getInterruptDebounceMs(); @Override void setInterruptTrigger(Edge edge); @Override Edge getInterruptTrigger(); @Override void fireInterruptEvent(InterruptEventArgs args); @Override void addInterruptListener(InterruptListener listener); @Override void removeInterruptListener(InterruptListener listener); @Override void clearInterruptListeners(); @Override List<InterruptListener> getInterruptListeners(); @Override String getName(); @Override void write(Signal signal); @Override void applySignal(Signal signal); @Override Signal getAppliedSignal(); @Override void high(); @Override void low(); @Override void toggle(); @Override boolean isHigh(); @Override boolean isLow(); @Override void startBlinking(int periodLengthMilliseconds); @Override void startBlinking(int periodLengthMilliseconds,
			int durationMilliseconds); @Override void blinkTimes(int periodLengthMilliseconds, int times); @Override void stopBlinking(); @Override boolean isBlinking(); @Override void awaitBlinkingStopped(); boolean isBlocking(); @Override boolean isInputActive(); @Override boolean isOutputActive();  }### Answer:
@Test public void testName() { DigitalOutput output = pin.as(DigitalOutput.class); String name = output.getName(); TestCase.assertNotNull(name); }