/** * Copyright (C) 2013 - present by OpenGamma Inc. and the OpenGamma group of companies * * Please see distribution for license. */ package com.opengamma.bbg; import static org.testng.AssertJUnit.assertEquals; import static org.testng.AssertJUnit.assertNull; import org.mockito.Mockito; import org.testng.annotations.Test; import com.bloomberglp.blpapi.SessionOptions; import com.opengamma.bbg.referencedata.statistics.NullBloombergReferenceDataStatistics; import com.opengamma.util.test.TestGroup; /** * Tests {@link BloombergConnector} */ @Test(groups = TestGroup.UNIT) public class BloombergConnectorTest { public void testAvailabilityListeners() { final BloombergConnector connector = new BloombergConnector("Test", NullBloombergReferenceDataStatistics.INSTANCE); try { final BloombergConnector.AvailabilityListener mock1 = Mockito.mock(BloombergConnector.AvailabilityListener.class); final BloombergConnector.AvailabilityListener mock2 = Mockito.mock(BloombergConnector.AvailabilityListener.class); // Test with none connector.notifyAvailabilityListeners(); // Add mocks connector.addAvailabilityListener(mock1); connector.addAvailabilityListener(mock2); // Test with both connector.notifyAvailabilityListeners(); Mockito.verify(mock1, Mockito.times(1)).bloombergAvailable(); Mockito.verify(mock2, Mockito.times(1)).bloombergAvailable(); // Remove first & notify again connector.removeAvailabilityListener(mock1); connector.notifyAvailabilityListeners(); Mockito.verify(mock1, Mockito.times(1)).bloombergAvailable(); Mockito.verify(mock2, Mockito.times(2)).bloombergAvailable(); } finally { connector.close(); } } public void getNullApplicationName() { SessionOptions sessionOptions = new SessionOptions(); final BloombergConnector connector = new BloombergConnector("Test", sessionOptions); try { String applicationName = connector.getApplicationName(); assertNull(applicationName); } finally { connector.close(); } } public void getApplicationName() { BloombergConnectorFactoryBean factoryBean = new BloombergConnectorFactoryBean("Test", "127.0.0.1", 8417, "TestAppName"); BloombergConnector connector = factoryBean.createObject(); try { assertEquals("TestAppName", connector.getApplicationName()); } finally { connector.close(); } } }