blob: 09a2403993a67d8f19687ac8192dca865d8dcf0b [file] [log] [blame]
/******************************************************************************
* Copyright (c) 2012 GitHub Inc.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Kevin Sawicki (GitHub Inc.) - initial API and implementation
*****************************************************************************/
package org.eclipse.egit.github.core.tests;
import static org.eclipse.egit.github.core.client.IGitHubConstants.CHARSET_UTF8;
import static org.eclipse.egit.github.core.service.MarkdownService.MODE_MARKDOWN;
import static org.junit.Assert.assertEquals;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.doReturn;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import org.eclipse.egit.github.core.RepositoryId;
import org.eclipse.egit.github.core.client.GitHubClient;
import org.eclipse.egit.github.core.service.MarkdownService;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
/**
* Unit tests of {@link MarkdownService}
*/
@RunWith(MockitoJUnitRunner.class)
public class MarkdownServiceTest {
@Mock
private GitHubClient client;
private MarkdownService service;
private RepositoryId repo;
private String content;
/**
* Test case set up
*
* @throws IOException
*/
@Before
public void before() throws IOException {
content = "<p>content</p>";
ByteArrayInputStream stream = new ByteArrayInputStream(
content.getBytes(CHARSET_UTF8));
doReturn(stream).when(client).postStream(any(String.class),
any(Object.class));
service = new MarkdownService(client);
repo = new RepositoryId("o", "n");
}
/**
* Get repository HTML
*
* @throws Exception
*/
@Test
public void getRepositoryHtml() throws Exception {
assertEquals(content, service.getRepositoryHtml(repo, "input"));
}
/**
* Get repository HTML
*
* @throws Exception
*/
@Test(expected = IllegalArgumentException.class)
public void getRepositoryHtmlNullRepository() throws Exception {
service.getRepositoryHtml(null, "input");
}
/**
* Get HTML
*
* @throws Exception
*/
@Test
public void getHtml() throws Exception {
assertEquals(content, service.getHtml("input", MODE_MARKDOWN));
}
}