/* * Copyright (C) 2012 - present by Yann Le Tallec. * Please see distribution for license. */ package com.assylias.jbloomberg; import com.bloomberglp.blpapi.Element; import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; import static org.testng.Assert.*; import org.testng.annotations.BeforeMethod; import org.testng.annotations.Test; public class AbstractResultParserTest { private AbstractResultParser parser; @BeforeMethod(groups="unit") public void beforeMethod() { parser = new AbstractResultParser () { @Override protected void parseResponseNoResponseError(Element response) { throw new UnsupportedOperationException("Not supported yet."); } @Override protected AbstractRequestResult getRequestResult() { return null; } }; } @Test(groups="unit", expectedExceptions = TimeoutException.class) public void testGet_notReady() throws Exception { parser.getResult(1, TimeUnit.MILLISECONDS); } @Test(groups="unit", expectedExceptions = IllegalStateException.class) public void testNoMoreMessages_Twice() { parser.noMoreMessages(); parser.noMoreMessages(); } @Test(groups="unit") public void testGet_NoMoreMessages() throws Exception { parser.noMoreMessages(); parser.getResult(); } @Test(groups="unit") public void testGet_Twice() throws Exception { parser.noMoreMessages(); RequestResult result1 = parser.getResult(); RequestResult result2 = parser.getResult(); assertTrue(result1 == result2); } @Test(groups="unit") public void testGet_NoMoreMessages_WithTimeOut() throws Exception { parser.noMoreMessages(); parser.getResult(20, TimeUnit.MILLISECONDS); } @Test(groups="unit", expectedExceptions = IllegalStateException.class) public void testAdd_afterNoMoreMessages() { parser.noMoreMessages(); parser.addMessage(null); } }