001/*
002 * The contents of this file are subject to the license and copyright
003 * detailed in the LICENSE and NOTICE files at the root of the source
004 * tree.
005 */
006package org.fcrepo.http.commons;
007
008import static org.fcrepo.http.commons.test.util.TestHelpers.setField;
009import static org.junit.Assert.assertEquals;
010import static org.mockito.MockitoAnnotations.initMocks;
011
012import java.util.function.Supplier;
013
014import javax.ws.rs.core.HttpHeaders;
015import javax.ws.rs.core.UriInfo;
016
017import org.junit.Before;
018import org.junit.Test;
019import org.mockito.Mock;
020
021/**
022 * <p>AbstractResourceTest class.</p>
023 *
024 * @author awoods
025 */
026public class AbstractResourceTest {
027
028    private AbstractResource testObj;
029
030    @Mock
031    private Supplier<String> mockPids;
032
033    @Mock
034    private UriInfo mockUris;
035
036    @Mock
037    private HttpHeaders mockHeaders;
038
039    @Before
040    public void setUp() {
041        initMocks(this);
042        testObj = new AbstractResource() {/**/};
043    }
044
045    @Test
046    public void testSetPidMinter() {
047        setField(testObj, "pidMinter", mockPids);
048        assertEquals(mockPids, testObj.pidMinter);
049    }
050
051    @Test
052    public void testSetUriInfo() {
053        setField(testObj, "uriInfo", mockUris);
054        assertEquals(mockUris, testObj.uriInfo);
055    }
056
057    @Test
058    public void testSetHeaders() {
059        setField(testObj, "headers", mockHeaders);
060        assertEquals(mockHeaders, testObj.headers);
061    }
062
063}