@Test
public void testEnvironmentVars() {
Map<String, String> vars = new HashMap<>();
vars.put("RABBITMQ_TEST_ADMIN_PASSWORD", "FOO");
vars.put("RABBITMQ_TEST_ADMIN_URI", "http://foo/bar");
vars.put("RABBITMQ_TEST_ADMIN_USER", "BAR");
vars.put("RABBITMQ_TEST_HOSTNAME", "BAZ");
vars.put("RABBITMQ_TEST_PASSWORD", "QUX");
vars.put("RABBITMQ_TEST_PORT", "2345");
vars.put("RABBITMQ_TEST_USER", "FIZ");
BrokerRunning.setEnvironmentVariableOverrides(vars);
BrokerRunning brokerRunning = BrokerRunning.isBrokerAndManagementRunning();
assertEquals("http://foo/bar", brokerRunning.getAdminUri());
ConnectionFactory connectionFactory = brokerRunning.getConnectionFactory();
assertEquals("BAZ", connectionFactory.getHost());
assertEquals(2345, connectionFactory.getPort());
assertEquals("FIZ", connectionFactory.getUsername());
assertEquals("QUX", connectionFactory.getPassword());
DirectFieldAccessor dfa = new DirectFieldAccessor(brokerRunning);
assertEquals("BAR", dfa.getPropertyValue("adminUser"));
assertEquals("FOO", dfa.getPropertyValue("adminPassword"));
BrokerRunning.clearEnvironmentVariableOverrides();
}