test_class.file: rxjava/src/test/java/io/reactivex/internal/subscribers/LambdaSubscriberTest.java
test_class.identifier: LambdaSubscriberTest
test_case.body: @Test
      public void onNextThrowsCancelsUpstream() {
          PublishProcessor<Integer> pp = PublishProcessor.create();
  
          final List<Throwable> errors = new ArrayList<Throwable>();
  
          pp.subscribe(new Consumer<Integer>() {
              @Override
              public void accept(Integer v) throws Exception {
                  throw new TestException();
              }
          }, new Consumer<Throwable>() {
              @Override
              public void accept(Throwable e) throws Exception {
                  errors.add(e);
              }
          });
  
          assertTrue("No observers?!", pp.hasSubscribers());
          assertTrue("Has errors already?!", errors.isEmpty());
  
          pp.onNext(1);
  
          assertFalse("Has observers?!", pp.hasSubscribers());
          assertFalse("No errors?!", errors.isEmpty());
  
          assertTrue(errors.toString(), errors.get(0) instanceof TestException);
      }
test_case.class_method_signature: LambdaSubscriberTest.onNextThrowsCancelsUpstream()
test_case.full_signature: @Test public void onNextThrowsCancelsUpstream()
test_case.identifier: onNextThrowsCancelsUpstream
test_case.invocations: create subscribe add assertTrue hasSubscribers assertTrue isEmpty onNext assertFalse hasSubscribers assertFalse isEmpty assertTrue toString get
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void onNextThrowsCancelsUpstream()
focal_class.declarator: serialVersionUID = -7251123623727029452L
focal_class.modifier: private static final
focal_class.original_string: private static final long serialVersionUID = -7251123623727029452L;
focal_class.type: long
focal_class.var_name: serialVersionUID
focal_class.declarator: onNext
focal_class.modifier: final
focal_class.original_string: final Consumer<? super T> onNext;
focal_class.type: Consumer<? super T>
focal_class.var_name: onNext
focal_class.declarator: onError
focal_class.modifier: final
focal_class.original_string: final Consumer<? super Throwable> onError;
focal_class.type: Consumer<? super Throwable>
focal_class.var_name: onError
focal_class.declarator: onComplete
focal_class.modifier: final
focal_class.original_string: final Action onComplete;
focal_class.type: Action
focal_class.var_name: onComplete
focal_class.declarator: onSubscribe
focal_class.modifier: final
focal_class.original_string: final Consumer<? super Subscription> onSubscribe;
focal_class.type: Consumer<? super Subscription>
focal_class.var_name: onSubscribe
focal_class.file: rxjava/src/main/java/io/reactivex/internal/subscribers/LambdaSubscriber.java
focal_class.identifier: LambdaSubscriber
focal_class.interfaces: implements FlowableSubscriber<T>, Subscription, Disposable, LambdaConsumerIntrospection
focal_class.class_method_signature: LambdaSubscriber.LambdaSubscriber(Consumer<? super T> onNext, Consumer<? super Throwable> onError,
              Action onComplete,
              Consumer<? super Subscription> onSubscribe)
focal_class.full_signature: public  LambdaSubscriber(Consumer<? super T> onNext, Consumer<? super Throwable> onError,
              Action onComplete,
              Consumer<? super Subscription> onSubscribe)
focal_class.identifier: LambdaSubscriber
focal_class.modifiers: public
focal_class.parameters: (Consumer<? super T> onNext, Consumer<? super Throwable> onError,
              Action onComplete,
              Consumer<? super Subscription> onSubscribe)
focal_class.signature:  LambdaSubscriber(Consumer<? super T> onNext, Consumer<? super Throwable> onError,
              Action onComplete,
              Consumer<? super Subscription> onSubscribe)
focal_class.class_method_signature: LambdaSubscriber.onSubscribe(Subscription s)
focal_class.full_signature: @Override public void onSubscribe(Subscription s)
focal_class.identifier: onSubscribe
focal_class.modifiers: @Override public
focal_class.parameters: (Subscription s)
focal_class.return: void
focal_class.signature: void onSubscribe(Subscription s)
focal_class.class_method_signature: LambdaSubscriber.onNext(T t)
focal_class.full_signature: @Override public void onNext(T t)
focal_class.identifier: onNext
focal_class.modifiers: @Override public
focal_class.parameters: (T t)
focal_class.return: void
focal_class.signature: void onNext(T t)
focal_class.class_method_signature: LambdaSubscriber.onError(Throwable t)
focal_class.full_signature: @Override public void onError(Throwable t)
focal_class.identifier: onError
focal_class.modifiers: @Override public
focal_class.parameters: (Throwable t)
focal_class.return: void
focal_class.signature: void onError(Throwable t)
focal_class.class_method_signature: LambdaSubscriber.onComplete()
focal_class.full_signature: @Override public void onComplete()
focal_class.identifier: onComplete
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void onComplete()
focal_class.class_method_signature: LambdaSubscriber.dispose()
focal_class.full_signature: @Override public void dispose()
focal_class.identifier: dispose
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void dispose()
focal_class.class_method_signature: LambdaSubscriber.isDisposed()
focal_class.full_signature: @Override public boolean isDisposed()
focal_class.identifier: isDisposed
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isDisposed()
focal_class.class_method_signature: LambdaSubscriber.request(long n)
focal_class.full_signature: @Override public void request(long n)
focal_class.identifier: request
focal_class.modifiers: @Override public
focal_class.parameters: (long n)
focal_class.return: void
focal_class.signature: void request(long n)
focal_class.class_method_signature: LambdaSubscriber.cancel()
focal_class.full_signature: @Override public void cancel()
focal_class.identifier: cancel
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void cancel()
focal_class.class_method_signature: LambdaSubscriber.hasCustomOnError()
focal_class.full_signature: @Override public boolean hasCustomOnError()
focal_class.identifier: hasCustomOnError
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean hasCustomOnError()
focal_class.superclass: extends AtomicReference<Subscription>
focal_method.body: @Override
      public void onNext(T t) {
          if (!isDisposed()) {
              try {
                  onNext.accept(t);
              } catch (Throwable e) {
                  Exceptions.throwIfFatal(e);
                  get().cancel();
                  onError(e);
              }
          }
      }
focal_method.class_method_signature: LambdaSubscriber.onNext(T t)
focal_method.full_signature: @Override public void onNext(T t)
focal_method.identifier: onNext
focal_method.invocations: isDisposed accept throwIfFatal cancel get onError
focal_method.modifiers: @Override public
focal_method.parameters: (T t)
focal_method.return: void
focal_method.signature: void onNext(T t)