@Test
  public void testGetCategory() {
    String columnId = "my_test_column_id";
    LogicalModel logicalModel = mock(LogicalModel.class);

    doReturn(Collections.<Category>emptyList()).when(logicalModel).getCategories();
    Category result = spyMetadataServiceUtil.getCategory(columnId, logicalModel);
    assertNull(result);

    LogicalColumn mockColumn = mock(LogicalColumn.class);
    Category mockCat1 = mock(Category.class);
    Category mockCat2 = mock(Category.class);
    doReturn(null).when(mockCat1).findLogicalColumn(columnId);
    doReturn(mockColumn).when(mockCat2).findLogicalColumn(columnId);
    List<Category> listCategories = new ArrayList<Category>(2);
    listCategories.add(mockCat1);
    listCategories.add(mockCat2);
    doReturn(listCategories).when(logicalModel).getCategories();
    result = spyMetadataServiceUtil.getCategory(columnId, logicalModel);
    assertEquals(mockCat2, result);
  }