Package com.opengamma.livedata.test

Examples of com.opengamma.livedata.test.CollectingLiveDataListener


  public void testMixedSubscribe() throws Exception {
    ExternalId strong = ExternalId.of(ExternalSchemes.BLOOMBERG_TICKER, "GBP Curncy");
    ExternalId weak = ExternalId.of(ExternalSchemes.BLOOMBERG_TICKER_WEAK, "GBP Curncy");
   
    List<ExternalId> instruments = Lists.newArrayList(strong, weak);
    CollectingLiveDataListener listener = new CollectingLiveDataListener(instruments.size(), 3);
   
    subscribe(_liveDataClient, listener, instruments);
    assertTrue(listener.waitUntilEnoughUpdatesReceived(30000));
    unsubscribe(_liveDataClient, listener, instruments);
   
    LiveDataSubscriptionResponse strongSub = null;
    LiveDataSubscriptionResponse weakSub = null;
    for (LiveDataSubscriptionResponse response : listener.getSubscriptionResponses()) {
      if (response.getRequestedSpecification().getIdentifiers().contains(strong)) {
        assertEquals(response.getSubscriptionResult(), LiveDataSubscriptionResult.SUCCESS);
        strongSub = response;
      } else if (response.getRequestedSpecification().getIdentifiers().contains(weak)) {
        assertEquals(response.getSubscriptionResult(), LiveDataSubscriptionResult.SUCCESS);
        weakSub = response;
      } else {
        throw new Exception("Unexpected subscription response");
      }
    }
    assertFalse(strongSub.getFullyQualifiedSpecification().equals(weakSub.getFullyQualifiedSpecification()));
    assertFalse(strongSub.getTickDistributionSpecification().equals(weakSub.getTickDistributionSpecification()));
   
    List<LiveDataValueUpdate> allUpdates = listener.getValueUpdates();
    List<LiveDataValueUpdate> stronUpdates = listener.getValueUpdates(getLiveDataSpec(_liveDataClient, strong));
    List<LiveDataValueUpdate> weakUpdates = listener.getValueUpdates(getLiveDataSpec(_liveDataClient, weak));
    assertEquals(1, weakUpdates.size());
    assertEquals(allUpdates.size(), weakUpdates.size() + stronUpdates.size());
  }
View Full Code Here


  public void testBrokenSubscribe() throws Exception {
    ExternalId broken = ExternalId.of(ExternalSchemes.BLOOMBERG_TICKER, "USSV15F Curncy");//Broken
    ExternalId working = ExternalId.of(ExternalSchemes.BLOOMBERG_TICKER, "GBP Curncy");
   
    List<ExternalId> instruments = Lists.newArrayList(broken, working);
    CollectingLiveDataListener listener = new CollectingLiveDataListener(instruments.size(), 3);
   
    subscribe(_liveDataClient, listener, instruments);
    assertTrue(listener.waitUntilEnoughUpdatesReceived(30000));
    unsubscribe(_liveDataClient, listener, instruments);
   
    LiveDataSubscriptionResponse strongSub = null;
    LiveDataSubscriptionResponse weakSub = null;
    for (LiveDataSubscriptionResponse response : listener.getSubscriptionResponses()) {
      if (response.getRequestedSpecification().getIdentifiers().contains(working)) {
        assertEquals(LiveDataSubscriptionResult.SUCCESS, response.getSubscriptionResult());
        strongSub = response;
      } else if (response.getRequestedSpecification().getIdentifiers().contains(broken)) {
        assertEquals(LiveDataSubscriptionResult.NOT_PRESENT, response.getSubscriptionResult());
        weakSub = response;
      } else {
        throw new Exception("Unexpected subscription response");
      }
    }
    assertFalse(strongSub.getFullyQualifiedSpecification().equals(weakSub.getFullyQualifiedSpecification()));
    assertFalse(strongSub.getTickDistributionSpecification().equals(weakSub.getTickDistributionSpecification()));
   
    List<LiveDataValueUpdate> allUpdates = listener.getValueUpdates();
    List<LiveDataValueUpdate> brokenUpdates = listener.getValueUpdates(getLiveDataSpec(_liveDataClient, broken));
    List<LiveDataValueUpdate> workingUpdates = listener.getValueUpdates(getLiveDataSpec(_liveDataClient, working));
    assertEquals(0, brokenUpdates.size());
    assertEquals(allUpdates.size(), brokenUpdates.size() + workingUpdates.size());
  }
View Full Code Here

    final AtomicInteger realSubs = countSubscriptions(_server.getRealServer());
   
    ExternalId weak = ExternalId.of(ExternalSchemes.BLOOMBERG_TICKER_WEAK, "GBP Curncy");
   
    List<ExternalId> instruments = Lists.newArrayList(weak);
    CollectingLiveDataListener listener = new CollectingLiveDataListener(1, 1);
   
    subscribe(_liveDataClient, listener, instruments);
   
    assertEquals(1, combinedSubs.get());
    assertEquals(combinedSubs.get(), fakeSubs.get());
    assertEquals(0, realSubs.get());
    assertTrue(listener.waitUntilEnoughUpdatesReceived(30000));
    for (int i = 0; i < 3; i++) {
      expirationManager.extendPublicationTimeout(ImmutableSet.of(getLiveDataSpec(_liveDataClient, weak)));
      Thread.sleep(period / 2);
    }
    assertEquals(1, combinedSubs.get());
View Full Code Here

    ExternalId workingWeak = ExternalId.of(ExternalSchemes.BLOOMBERG_TICKER_WEAK, "USPFJD5W Curncy");
    ExternalId workingStrong = ExternalId.of(ExternalSchemes.BLOOMBERG_TICKER, "USPFJD5W Curncy");
   
    List<ExternalId> instruments = Lists.newArrayList(broken, working, workingWeak, workingStrong);
    for (int i = 0; i < 10; i++) {
      CollectingLiveDataListener listener = new CollectingLiveDataListener(instruments.size(), 3);

      subscribe(_liveDataClient, listener, instruments);
      assertTrue(listener.waitUntilEnoughUpdatesReceived(30000));
      unsubscribe(_liveDataClient, listener, instruments);
      _unitTestingProvider.rejectAllfurtherRequests();
    }
    assertFalse(_unitTestingProvider.hadToRejectRequests());
  }
View Full Code Here

  public void activeSpecificationsOneSpec() {
    ValueDistributor distributor = new ValueDistributor();
    Set<LiveDataSpecification> activeSpecs = null;
   
    CollectingLiveDataListener listener1 = new CollectingLiveDataListener();
    CollectingLiveDataListener listener2 = new CollectingLiveDataListener();
    LiveDataSpecification spec = new LiveDataSpecification("foo", ExternalId.of("bar", "baz"));
   
    distributor.addListener(spec, listener1);
    activeSpecs = distributor.getActiveSpecifications();
    assertNotNull(activeSpecs);
View Full Code Here

  public void activeSpecificationsTwoSpecs() {
    ValueDistributor distributor = new ValueDistributor();
    Set<LiveDataSpecification> activeSpecs = null;
   
    CollectingLiveDataListener listener1 = new CollectingLiveDataListener();
    LiveDataSpecification spec1 = new LiveDataSpecification("x", ExternalId.of("foo", "bar1"));
    LiveDataSpecification spec2 = new LiveDataSpecification("x", ExternalId.of("foo", "bar2"));
   
    distributor.addListener(spec1, listener1);
    activeSpecs = distributor.getActiveSpecifications();
View Full Code Here

    assertTrue(activeSpecs.contains(spec2));
  }

  public void simpleDistribution() {
    ValueDistributor distributor = new ValueDistributor();
    CollectingLiveDataListener listener1 = new CollectingLiveDataListener();
    LiveDataSpecification spec1 = new LiveDataSpecification("foo", ExternalId.of("bar", "baz"));
   
    distributor.addListener(spec1, listener1);
   
    long sequenceNumber = 12345;
    distributor.notifyListeners(new LiveDataValueUpdateBean(sequenceNumber, spec1, _fudgeContext.newMessage()));
   
    List<LiveDataValueUpdate> updates = listener1.getValueUpdates();
    assertEquals(1, updates.size());
    LiveDataValueUpdate update = updates.get(0);
    assertEquals(sequenceNumber, update.getSequenceNumber());
    assertEquals(spec1, update.getSpecification());
    assertNotNull(update.getFields());
View Full Code Here

  public void equalsDifferentRequestedSpecification() {
    LiveDataSpecification requestedSpecification =
      new LiveDataSpecification(
          "NormalizationId1",
          ExternalId.of("Domain1", "Value1"));
    CollectingLiveDataListener listener = new CollectingLiveDataListener();
    SubscriptionHandle handle1 = new SubscriptionHandle(_user, SubscriptionType.NON_PERSISTENT, requestedSpecification, listener);
    SubscriptionHandle handle2 = new SubscriptionHandle(_user, SubscriptionType.NON_PERSISTENT, requestedSpecification,  listener);
    assertFalse(handle1.equals(handle2));
  }
View Full Code Here

  public void hashCodeDifferentRequestedSpecification() {
    LiveDataSpecification requestedSpecification =
      new LiveDataSpecification(
          "NormalizationId1",
          ExternalId.of("Domain1", "Value1"));
    CollectingLiveDataListener listener = new CollectingLiveDataListener();
    SubscriptionHandle handle1 = new SubscriptionHandle(_user, SubscriptionType.NON_PERSISTENT, requestedSpecification, listener);
    SubscriptionHandle handle2 = new SubscriptionHandle(_user, SubscriptionType.NON_PERSISTENT, requestedSpecification, listener);
    assertFalse(handle1.hashCode() == handle2.hashCode());
  }
View Full Code Here

  public void releaseTicks() {
    LiveDataSpecification spec =
      new LiveDataSpecification(
          "NormalizationId1",
          ExternalId.of("Domain1", "Value1"));
    CollectingLiveDataListener listener = new CollectingLiveDataListener();
    SubscriptionHandle handle = new SubscriptionHandle(_user, SubscriptionType.NON_PERSISTENT, spec, listener);
   
    handle.addTickOnHold(new LiveDataValueUpdateBean(500, spec, FudgeContext.EMPTY_MESSAGE));
    handle.addSnapshotOnHold(new LiveDataValueUpdateBean(501, spec, FudgeContext.EMPTY_MESSAGE));
    handle.addTickOnHold(new LiveDataValueUpdateBean(502, spec, FudgeContext.EMPTY_MESSAGE));
    handle.releaseTicksOnHold();
   
    assertEquals(2, listener.getValueUpdates().size());
   
    assertEquals(501, listener.getValueUpdates().get(0).getSequenceNumber());
    assertEquals(502, listener.getValueUpdates().get(1).getSequenceNumber());
  }
View Full Code Here

TOP

Related Classes of com.opengamma.livedata.test.CollectingLiveDataListener

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.