test_class.declarator: xyPlot
test_class.original_string: XYPlot xyPlot;
test_class.type: XYPlot
test_class.var_name: xyPlot
test_class.declarator: canvas
test_class.original_string: Canvas canvas;
test_class.type: Canvas
test_class.var_name: canvas
test_class.declarator: plotArea = new RectF(0, 0, 100, 100)
test_class.original_string: RectF plotArea = new RectF(0, 0, 100, 100);
test_class.type: RectF
test_class.var_name: plotArea
test_class.declarator: renderStack
test_class.modifier: @Mock
test_class.original_string: @Mock
      RenderStack renderStack;
test_class.type: RenderStack
test_class.var_name: renderStack
test_class.file: androidplot-core/src/test/java/com/androidplot/xy/CandlestickRendererTest.java
test_class.identifier: CandlestickRendererTest
test_class.superclass: extends AndroidplotTest
test_case.body: @Test
      public void testOnRender() throws Exception {
          CandlestickFormatter formatter = spy(new CandlestickFormatter());
          CandlestickRenderer renderer = spy((CandlestickRenderer) formatter.doGetRendererInstance(xyPlot));
          doReturn(renderer.getClass()).when(formatter).getRendererClass();
          doReturn(renderer).when(formatter).doGetRendererInstance(any(XYPlot.class));
  
          XYSeries openVals = new SimpleXYSeries(SimpleXYSeries.ArrayFormat.Y_VALS_ONLY, "open", 1, 2, 3, 4);
          XYSeries closeVals = new SimpleXYSeries(SimpleXYSeries.ArrayFormat.Y_VALS_ONLY, "open", 1, 2, 3, 4);
          XYSeries highVals = new SimpleXYSeries(SimpleXYSeries.ArrayFormat.Y_VALS_ONLY, "open", 1, 2, 3, 4);
          XYSeries lowVals = new SimpleXYSeries(SimpleXYSeries.ArrayFormat.Y_VALS_ONLY, "open", 1, 2, 3, 4);
          CandlestickMaker.make(xyPlot, formatter, openVals, closeVals, highVals, lowVals);
  
          renderer.onRender(canvas, plotArea, openVals, formatter, renderStack);
      }
test_case.class_method_signature: CandlestickRendererTest.testOnRender()
test_case.full_signature: @Test public void testOnRender()
test_case.identifier: testOnRender
test_case.invocations: spy spy doGetRendererInstance getRendererClass when doReturn getClass doGetRendererInstance when doReturn any make onRender
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testOnRender()
focal_class.declarator: HIGH_INDEX = 0
focal_class.modifier: protected static final
focal_class.original_string: protected static final int HIGH_INDEX = 0;
focal_class.type: int
focal_class.var_name: HIGH_INDEX
focal_class.declarator: LOW_INDEX = 1
focal_class.modifier: protected static final
focal_class.original_string: protected static final int LOW_INDEX = 1;
focal_class.type: int
focal_class.var_name: LOW_INDEX
focal_class.declarator: OPEN_INDEX = 2
focal_class.modifier: protected static final
focal_class.original_string: protected static final int OPEN_INDEX = 2;
focal_class.type: int
focal_class.var_name: OPEN_INDEX
focal_class.declarator: CLOSE_INDEX = 3
focal_class.modifier: protected static final
focal_class.original_string: protected static final int CLOSE_INDEX = 3;
focal_class.type: int
focal_class.var_name: CLOSE_INDEX
focal_class.file: androidplot-core/src/main/java/com/androidplot/xy/CandlestickRenderer.java
focal_class.identifier: CandlestickRenderer
focal_class.class_method_signature: CandlestickRenderer.CandlestickRenderer(XYPlot plot)
focal_class.full_signature: public  CandlestickRenderer(XYPlot plot)
focal_class.identifier: CandlestickRenderer
focal_class.modifiers: public
focal_class.parameters: (XYPlot plot)
focal_class.signature:  CandlestickRenderer(XYPlot plot)
focal_class.class_method_signature: CandlestickRenderer.onRender(Canvas canvas, RectF plotArea, List<SeriesBundle<XYSeries,
                  ? extends FormatterType>> sfList, int seriesSize,  RenderStack stack)
focal_class.full_signature: @Override public void onRender(Canvas canvas, RectF plotArea, List<SeriesBundle<XYSeries,
                  ? extends FormatterType>> sfList, int seriesSize,  RenderStack stack)
focal_class.identifier: onRender
focal_class.modifiers: @Override public
focal_class.parameters: (Canvas canvas, RectF plotArea, List<SeriesBundle<XYSeries,
                  ? extends FormatterType>> sfList, int seriesSize,  RenderStack stack)
focal_class.return: void
focal_class.signature: void onRender(Canvas canvas, RectF plotArea, List<SeriesBundle<XYSeries,
                  ? extends FormatterType>> sfList, int seriesSize,  RenderStack stack)
focal_class.class_method_signature: CandlestickRenderer.drawTextLabel(Canvas canvas, PointF coords, String text, PointLabelFormatter plf)
focal_class.full_signature: protected void drawTextLabel(Canvas canvas, PointF coords, String text, PointLabelFormatter plf)
focal_class.identifier: drawTextLabel
focal_class.modifiers: protected
focal_class.parameters: (Canvas canvas, PointF coords, String text, PointLabelFormatter plf)
focal_class.return: void
focal_class.signature: void drawTextLabel(Canvas canvas, PointF coords, String text, PointLabelFormatter plf)
focal_class.class_method_signature: CandlestickRenderer.drawWick(Canvas canvas, PointF min, PointF max, FormatterType formatter)
focal_class.full_signature: protected void drawWick(Canvas canvas, PointF min, PointF max, FormatterType formatter)
focal_class.identifier: drawWick
focal_class.modifiers: protected
focal_class.parameters: (Canvas canvas, PointF min, PointF max, FormatterType formatter)
focal_class.return: void
focal_class.signature: void drawWick(Canvas canvas, PointF min, PointF max, FormatterType formatter)
focal_class.class_method_signature: CandlestickRenderer.drawBody(Canvas canvas, PointF open, PointF close, FormatterType formatter)
focal_class.full_signature: protected void drawBody(Canvas canvas, PointF open, PointF close, FormatterType formatter)
focal_class.identifier: drawBody
focal_class.modifiers: protected
focal_class.parameters: (Canvas canvas, PointF open, PointF close, FormatterType formatter)
focal_class.return: void
focal_class.signature: void drawBody(Canvas canvas, PointF open, PointF close, FormatterType formatter)
focal_class.class_method_signature: CandlestickRenderer.drawUpperCap(Canvas canvas, PointF val, FormatterType formatter)
focal_class.full_signature: protected void drawUpperCap(Canvas canvas, PointF val, FormatterType formatter)
focal_class.identifier: drawUpperCap
focal_class.modifiers: protected
focal_class.parameters: (Canvas canvas, PointF val, FormatterType formatter)
focal_class.return: void
focal_class.signature: void drawUpperCap(Canvas canvas, PointF val, FormatterType formatter)
focal_class.class_method_signature: CandlestickRenderer.drawLowerCap(Canvas canvas, PointF val, FormatterType formatter)
focal_class.full_signature: protected void drawLowerCap(Canvas canvas, PointF val, FormatterType formatter)
focal_class.identifier: drawLowerCap
focal_class.modifiers: protected
focal_class.parameters: (Canvas canvas, PointF val, FormatterType formatter)
focal_class.return: void
focal_class.signature: void drawLowerCap(Canvas canvas, PointF val, FormatterType formatter)
focal_class.class_method_signature: CandlestickRenderer.doDrawLegendIcon(Canvas canvas, RectF rect, FormatterType formatter)
focal_class.full_signature: @Override protected void doDrawLegendIcon(Canvas canvas, RectF rect, FormatterType formatter)
focal_class.identifier: doDrawLegendIcon
focal_class.modifiers: @Override protected
focal_class.parameters: (Canvas canvas, RectF rect, FormatterType formatter)
focal_class.return: void
focal_class.signature: void doDrawLegendIcon(Canvas canvas, RectF rect, FormatterType formatter)
focal_class.class_method_signature: CandlestickRenderer.drawTriangle(Canvas canvas, RectF rect,
                                  Paint fillPaint, Paint strokePaint)
focal_class.full_signature: protected void drawTriangle(Canvas canvas, RectF rect,
                                  Paint fillPaint, Paint strokePaint)
focal_class.identifier: drawTriangle
focal_class.modifiers: protected
focal_class.parameters: (Canvas canvas, RectF rect,
                                  Paint fillPaint, Paint strokePaint)
focal_class.return: void
focal_class.signature: void drawTriangle(Canvas canvas, RectF rect,
                                  Paint fillPaint, Paint strokePaint)
focal_class.superclass: extends GroupRenderer<FormatterType>
focal_method.body: @Override
      public void onRender(Canvas canvas, RectF plotArea, List<SeriesBundle<XYSeries,
                  ? extends FormatterType>> sfList, int seriesSize,  RenderStack stack) {
  
          final FormatterType formatter = sfList.get(0).getFormatter();
          for(int i = 0; i < seriesSize; i++) {
  
              final XYSeries highSeries = sfList.get(HIGH_INDEX).getSeries();
              final XYSeries lowSeries = sfList.get(LOW_INDEX).getSeries();
              final XYSeries openSeries = sfList.get(OPEN_INDEX).getSeries();
              final XYSeries closeSeries = sfList.get(CLOSE_INDEX).getSeries();
  
              // x-val for all series should be identical so just grab x from the first series:
              Number x = highSeries.getX(i);
  
              Number high = highSeries.getY(i);
              Number low = lowSeries.getY(i);
              Number open = openSeries.getY(i);
              Number close = closeSeries.getY(i);
  
              // draw the candlestick:
              final PointF highPix = getPlot().getBounds().transformScreen(x, high, plotArea);
              final PointF lowPix = getPlot().getBounds().transformScreen(x, low, plotArea);
              final PointF openPix = getPlot().getBounds().transformScreen(x, open, plotArea);
              final PointF closePix = getPlot().getBounds().transformScreen(x, close, plotArea);
  
              drawWick(canvas, highPix, lowPix, formatter);
              drawBody(canvas, openPix, closePix, formatter);
              drawUpperCap(canvas, highPix, formatter);
              drawLowerCap(canvas, lowPix, formatter);
  
              // draw labels, if any:
              final PointLabelFormatter plf = formatter.hasPointLabelFormatter()
                                              ? formatter.getPointLabelFormatter() : null;
              final PointLabeler pointLabeler = formatter.getPointLabeler();
              if(plf != null && pointLabeler != null) {
                  drawTextLabel(canvas, highPix, pointLabeler.getLabel(highSeries, i), plf);
                  drawTextLabel(canvas, lowPix, pointLabeler.getLabel(lowSeries, i), plf);
                  drawTextLabel(canvas, openPix, pointLabeler.getLabel(openSeries, i), plf);
                  drawTextLabel(canvas, closePix, pointLabeler.getLabel(closeSeries, i), plf);
              }
          }
      }
focal_method.class_method_signature: CandlestickRenderer.onRender(Canvas canvas, RectF plotArea, List<SeriesBundle<XYSeries,
                  ? extends FormatterType>> sfList, int seriesSize,  RenderStack stack)
focal_method.full_signature: @Override public void onRender(Canvas canvas, RectF plotArea, List<SeriesBundle<XYSeries,
                  ? extends FormatterType>> sfList, int seriesSize,  RenderStack stack)
focal_method.identifier: onRender
focal_method.invocations: getFormatter get getSeries get getSeries get getSeries get getSeries get getX getY getY getY getY transformScreen getBounds getPlot transformScreen getBounds getPlot transformScreen getBounds getPlot transformScreen getBounds getPlot drawWick drawBody drawUpperCap drawLowerCap hasPointLabelFormatter getPointLabelFormatter getPointLabeler drawTextLabel getLabel drawTextLabel getLabel drawTextLabel getLabel drawTextLabel getLabel
focal_method.modifiers: @Override public
focal_method.parameters: (Canvas canvas, RectF plotArea, List<SeriesBundle<XYSeries,
                  ? extends FormatterType>> sfList, int seriesSize,  RenderStack stack)
focal_method.return: void
focal_method.signature: void onRender(Canvas canvas, RectF plotArea, List<SeriesBundle<XYSeries,
                  ? extends FormatterType>> sfList, int seriesSize,  RenderStack stack)