package nicobrowser;
import java.io.IOException;
+import java.io.InputStream;
+import java.net.URISyntaxException;
import java.net.URL;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.persistence.EntityManagerFactory;
import javax.persistence.EntityTransaction;
import javax.persistence.Persistence;
+import nicobrowser.entity.NicoContent.Status;
+import org.apache.http.HttpException;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
static final String OK_MAIL = "niconico.senyou@live.jp";
static final String OK_PASS = "piyopiyo";
- static final String OK_LIST_NO = "4315046";
+ static final String OK_LIST_NO = "3693055";
public NicoHttpClientTest() {
}
* Test of login method, of class NicoHttpClient.
*/
@Test
- public void login() {
+ public void login() throws HttpException, URISyntaxException, InterruptedException {
System.out.println("login");
NicoHttpClient instance = NicoHttpClient.getInstance();
}
@Test
- public void logout() {
+ public void logout() throws URISyntaxException, HttpException, InterruptedException {
System.out.println("logout");
boolean result;
}
@Test
- public void loadMyList() {
+ public void loadMyList() throws URISyntaxException, HttpException, InterruptedException {
System.out.println("loadMyList");
NicoHttpClient instance = NicoHttpClient.getInstance();
}
@Test
- public void loadMyListDaily() {
+ public void loadMyListDaily() throws URISyntaxException, HttpException, InterruptedException {
System.out.println("loadMyListDaily");
NicoHttpClient instance = NicoHttpClient.getInstance();
List<NicoContent> list = instance.loadMyListDaily();
}
@Test
- public void getFlvUrl() {
+ public void getFlvUrl() throws URISyntaxException, HttpException, InterruptedException, IOException {
System.out.println("getFlv");
NicoHttpClient instance = NicoHttpClient.getInstance();
instance.login(OK_MAIL, OK_PASS);
try {
- URL str = instance.getFlvUrl("sm9");
+ URL str = instance.getFlvUrl("sm1359820");
System.out.println(str);
} catch (IOException ex) {
fail();
}
@Test
- public void downLoad() {
+ public void downLoad() throws URISyntaxException, IOException, HttpException, InterruptedException {
System.out.println("downLoad");
NicoHttpClient instance = NicoHttpClient.getInstance();
instance.login(OK_MAIL, OK_PASS);
try {
- instance.getFlvFile("sm9");
+ instance.getFlvFile("sm183036", "sm183036", NicoContent.Status.GET_INFO, false);
} catch (IOException ex) {
Logger.getLogger(NicoHttpClientTest.class.getName()).log(Level.SEVERE, null, ex);
fail();
}
}
+
+ /**
+ * Test of getFlvFile method, of class NicoHttpClient.
+ */
+ @Test
+ public void getFlvFile_String() throws HttpException, InterruptedException, URISyntaxException {
+ System.out.println("getFlvFile");
+ String videoID = "sm1097445";
+ NicoHttpClient instance = NicoHttpClient.getInstance();
+ instance.login(OK_MAIL, OK_PASS);
+ Status result;
+ try {
+ result = instance.getFlvFile(videoID);
+ System.out.println(result);
+ assertNotSame(Status.GET_INFO, result);
+ } catch (Exception ex) {
+ Logger.getLogger(NicoHttpClientTest.class.getName()).log(Level.SEVERE, null, ex);
+ fail();
+ }
+
+ // 権限が無い動画?の取得
+ // http://www.nicovideo.jp/watch/1231042440
+ // 【亡き王女の為のセプテット・ツェペシュの幼き末裔】Priere -プリエール-
+ try {
+ result = instance.getFlvFile("1231042440");
+ fail("権限が無い動画を取得しようとした場合は例外が送出される");
+ } catch (IOException ex) {
+ Logger.getLogger(NicoHttpClientTest.class.getName()).log(Level.SEVERE, null, ex);
+ }
+ }
+
+ @Test
+ public void search() throws URISyntaxException, InterruptedException, HttpException, IOException {
+ System.out.println("search");
+ NicoHttpClient instance = NicoHttpClient.getInstance();
+ instance.login(OK_MAIL, OK_PASS);
+
+ List<NicoContent> conts = instance.search("初音ミク");
+ System.out.println("検索結果件数: " + conts.size());
+ assertTrue(conts.size() > 0);
+ assertTrue(conts.size() > 100);
+
+ }
+
+ @Test
+ public void loadMyMovie() throws URISyntaxException, InterruptedException, HttpException, IOException {
+ System.out.println("search");
+ NicoHttpClient instance = NicoHttpClient.getInstance();
+ instance.login(OK_MAIL, OK_PASS);
+
+ NicoContent cont;
+
+ // 通常の動画
+ cont = instance.loadMyMovie("sm9");
+ assertNotNull(cont);
+ assertEquals("sm9", cont.getNicoId());
+
+ // チャンネル動画はnull(statusがfailなので)
+ cont = instance.loadMyMovie("1228201771");
+ assertNull(cont);
+
+ // 削除済み
+ cont = instance.loadMyMovie("sm1");
+ assertNull(cont);
+
+ // 存在しない
+ cont = instance.loadMyMovie("xxx");
+ assertNull(cont);
+
+
+ }
}