public void testCompositeInput()

in testSrc/org/jetbrains/plugins/ipnb/WebSocketConnectionTest.java [78:110]


  public void testCompositeInput() throws IOException, URISyntaxException, InterruptedException {
    final Ref<Boolean> evaluated = Ref.create(false);
    final IpnbConnection connection = new IpnbConnection(getTestServerURI(), new IpnbConnectionListenerBase() {
      private String myMessageId;

      @Override
      public void onOpen(@NotNull IpnbConnection connection) {
        myMessageId = connection.execute("def simple_crit_func(feat_sub):\n" +
                                         "\n" +
                                         "    \"\"\" Returns sum of numerical values of an input list. \"\"\" \n" +
                                         "\n" +
                                         "    return sum(feat_sub)\n" +
                                         "\n" +
                                         "simple_crit_func([1,2,4])");
      }

      @Override
      public void onOutput(@NotNull IpnbConnection connection,
                           @NotNull String parentMessageId) {
        if (myMessageId.equals(parentMessageId)) {
          final IpnbOutputCell output = connection.getOutput();
          assertEquals(output.getClass(), IpnbOutOutputCell.class);
          final List<String> text = output.getText();
          assertNotNull(text);
          assertEquals("7", text.get(0));
          evaluated.set(true);
          connection.shutdown();
        }
      }
    }, null, DefaultProjectFactory.getInstance().getDefaultProject(), "");
    connection.close();
    assertTrue(evaluated.get());
  }