@Test
public void testDeployNonCodedAdapter() throws Exception {

    DeviceAdapterId adapter = getDeviceAdapterId();
    ArgumentCaptor<DeviceAdapter> devAdapter = ArgumentCaptor.forClass(DeviceAdapter.class);
    String adapterId = adapter.getType() + AdapterSpecificConstants.DASH + adapter.getInterfaceVersion()
            + AdapterSpecificConstants.DASH + adapter.getModel() + AdapterSpecificConstants.DASH + adapter.getVendor();
    CommonFileUtil.unpackToSpecificDirectory(m_dir
            + STAGED_AREA_ARCHIVE_PATH, m_dir + File.separator + adapterId);
    m_nonCodedAdapterService.deployAdapter(adapterId, m_subsystem, this.getClass(), m_dir, m_dir, m_devInterface);
    verify(m_adapterManager).deploy(devAdapter.capture(), eq(m_subsystem), eq(this.getClass()), eq(m_devInterface));
    DeviceAdapter actualAdapter = devAdapter.getValue();
    assertEquals(m_expectedAdapterId, actualAdapter.getDeviceAdapterId());
    assertEquals(3, actualAdapter.getSupportedFeatures().size());
    assertEquals(1, actualAdapter.getSupportedDevations().size());
    assertEquals(5, actualAdapter.getCapabilities().size());
    assertEquals(3, actualAdapter.getRevisions().size());
    assertEquals(m_expectedDefaultXml, IOUtils.toString(new ByteArrayInputStream(actualAdapter.getDefaultXmlBytes())).trim());
}