### Question:
KinesisPlugin implements Plugin { @Override public synchronized Iterable<ConnectorFactory> getConnectorFactories() { if (factory == null) { this.factory = new KinesisConnectorFactory(); } return ImmutableList.of(this.factory); } KinesisPlugin();  KinesisPlugin(KinesisConnectorFactory factory); @Override synchronized Iterable<ConnectorFactory> getConnectorFactories();  }### Answer:
@Test public ConnectorFactory testConnectorExists() { KinesisPlugin plugin = new KinesisPlugin(); Iterable<ConnectorFactory> iteratable = plugin.getConnectorFactories(); List<ConnectorFactory> factories = new ArrayList<>(); for (ConnectorFactory connectorFactory : iteratable) { factories.add(connectorFactory); } assertNotNull(factories); assertEquals(factories.size(), 1); ConnectorFactory factory = factories.get(0); assertNotNull(factory); return factory; }