Example usage for org.eclipse.jface.viewers ViewerRow getTreePath

List of usage examples for org.eclipse.jface.viewers ViewerRow getTreePath

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers ViewerRow getTreePath.

Prototype

public abstract TreePath getTreePath();

Source Link

Document

The tree path used to identify an element by the unique path

Usage

From source file:rabbit.ui.internal.viewers.TreePathDurationLabelProviderTest.java

License:Apache License

private ViewerCell newCell(int columnIndex, Object element) throws Exception {
    final String[] text = new String[1];
    final Color[] background = new Color[1];
    final Color[] foreground = new Color[1];

    ViewerRow row = mock(ViewerRow.class);
    given(row.getBackground(columnIndex)).willAnswer(new Answer<Color>() {
        @Override//from w  w  w .j  a  v a2 s.  co  m
        public Color answer(InvocationOnMock invocation) throws Throwable {
            return background[0];
        }
    });
    given(row.getForeground(columnIndex)).willAnswer(new Answer<Color>() {
        @Override
        public Color answer(InvocationOnMock invocation) throws Throwable {
            return foreground[0];
        }
    });
    given(row.getText(columnIndex)).willAnswer(new Answer<String>() {
        @Override
        public String answer(InvocationOnMock invocation) throws Throwable {
            return text[0];
        }
    });
    given(row.getTreePath()).willReturn(new TreePath(new Object[] { element }));

    doAnswer(new Answer<Void>() {
        @Override
        public Void answer(InvocationOnMock invocation) throws Throwable {
            background[0] = (Color) invocation.getArguments()[1];
            return null;
        }
    }).when(row).setBackground(eq(columnIndex), Mockito.<Color>any());

    doAnswer(new Answer<Void>() {
        @Override
        public Void answer(InvocationOnMock invocation) throws Throwable {
            foreground[0] = (Color) invocation.getArguments()[1];
            return null;
        }
    }).when(row).setForeground(eq(columnIndex), Mockito.<Color>any());

    doAnswer(new Answer<Void>() {
        @Override
        public Void answer(InvocationOnMock invocation) throws Throwable {
            text[0] = (String) invocation.getArguments()[1];
            return null;
        }
    }).when(row).setText(eq(columnIndex), Mockito.anyString());

    Constructor<ViewerCell> constructor = ViewerCell.class.getDeclaredConstructor(ViewerRow.class, int.class,
            Object.class);
    constructor.setAccessible(true);
    return constructor.newInstance(row, columnIndex, element);
}