/* * Copyright 2015 Nokia Solutions and Networks * Licensed under the Apache License, Version 2.0, * see license.txt file for details. */ package org.robotframework.ide.eclipse.main.plugin.navigator.filters; import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; import org.eclipse.core.resources.IFile; import org.eclipse.core.resources.IFolder; import org.eclipse.core.resources.IProject; import org.junit.Test; import org.robotframework.ide.eclipse.main.plugin.mockeclipse.WrappedResource; public class LibspecDirectoryFilterTest { private final LibspecDirectoryFilter filter = new LibspecDirectoryFilter(); @Test public void whenFileIsGiven_itPassesThroughFilter() { final boolean result = filter.select(null, null, mock(IFile.class)); assertThat(result).isTrue(); } @Test public void whenProjectIsGiven_itPassesThroughFilter() { final boolean result = filter.select(null, null, mock(IProject.class)); assertThat(result).isTrue(); } @Test public void whenOrdinaryFolderIsGiven_itPassesThroughFilter() { final IFolder mock = mock(IFolder.class); when(mock.getName()).thenReturn("some_folder"); final boolean result = filter.select(null, null, mock); assertThat(result).isTrue(); } @Test public void whenLibspecNestedFolderIsGiven_itPassesThroughFilter() { final IFolder mock = mock(IFolder.class); when(mock.getName()).thenReturn("libspecs"); when(mock.getParent()).thenReturn(mock(IFolder.class)); final boolean result = filter.select(null, null, mock); assertThat(result).isTrue(); } @Test public void whenLibspecFolderOnTopLevelIsGiven_itDoesNotPassThroughFilter() { final IFolder mock = mock(IFolder.class); when(mock.getName()).thenReturn("libspecs"); when(mock.getParent()).thenReturn(mock(IProject.class)); final boolean result = filter.select(null, null, mock); assertThat(result).isFalse(); } @Test public void whenWrappedAdaptableLibspecFolderOnTopLevelIsGiven_itDoesNotPassThroughFilter() { final IFolder mock = mock(IFolder.class); when(mock.getName()).thenReturn("libspecs"); when(mock.getParent()).thenReturn(mock(IProject.class)); final boolean result = filter.select(null, null, new WrappedResource(mock)); assertThat(result).isFalse(); } }