[vlc-devel] commit: jvlc: abstract test class added to not-internal tests too ( Filippo Carone )
git version control
git at videolan.org
Sun Jul 20 17:35:54 CEST 2008
vlc | branch: master | Filippo Carone <littlejohn at videolan.org> | Sun Jul 20 17:38:13 2008 +0200| [a602c01e2e1b69dd1e7241d9d98686e25842ea41]
jvlc: abstract test class added to not-internal tests too
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a602c01e2e1b69dd1e7241d9d98686e25842ea41
---
.../java/org/videolan/jvlc/AbstractJVLCTest.java | 112 ++++++++++++++++++++
.../src/test/java/org/videolan/jvlc/JVLCTest.java | 4 +-
.../test/java/org/videolan/jvlc/LoggerTest.java | 13 +--
.../test/java/org/videolan/jvlc/MediaListTest.java | 13 +--
.../src/test/java/org/videolan/jvlc/VLMTest.java | 36 +------
.../jvlc/internal/AbstractVLCInternalTest.java | 1 -
6 files changed, 120 insertions(+), 59 deletions(-)
diff --git a/bindings/java/core/src/test/java/org/videolan/jvlc/AbstractJVLCTest.java b/bindings/java/core/src/test/java/org/videolan/jvlc/AbstractJVLCTest.java
new file mode 100644
index 0000000..6bd9cff
--- /dev/null
+++ b/bindings/java/core/src/test/java/org/videolan/jvlc/AbstractJVLCTest.java
@@ -0,0 +1,112 @@
+/*****************************************************************************
+ * AbstractJVLCTest.java: VLC Java Bindings
+ *****************************************************************************
+ * Copyright (C) 1998-2008 the VideoLAN team
+ *
+ * Authors: Filippo Carone <filippo at carone.org>
+ *
+ *
+ * $Id $
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.
+ *****************************************************************************/
+
+package org.videolan.jvlc;
+
+import java.io.BufferedOutputStream;
+import java.io.FileOutputStream;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.net.URL;
+import java.net.URLConnection;
+
+import org.apache.commons.io.IOUtils;
+import org.junit.After;
+import org.junit.Before;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.videolan.jvlc.internal.AbstractVLCInternalTest;
+
+
+public abstract class AbstractJVLCTest
+{
+
+ protected JVLC jvlc;
+
+ protected String mrl;
+
+ private String address = "http://streams.videolan.org/streams-videolan/reference/avi/Hero-Div3.avi";
+
+ /**
+ * Logger.
+ */
+ private Logger log = LoggerFactory.getLogger(AbstractVLCInternalTest.class);
+
+ @Before
+ public void testSetup()
+ {
+ jvlc = new JVLC("-vvv --ignore-config --no-media-library -I dummy --aout=dummy --vout=dummy");
+ downloadSample();
+ }
+
+ @After
+ public void tearDown()
+ {
+ jvlc.release();
+ }
+
+ private void downloadSample()
+ {
+ OutputStream out = null;
+ URLConnection conn = null;
+ InputStream in = null;
+ URL sampleResource = this.getClass().getResource("/sample.avi");
+ if (sampleResource != null)
+ {
+ log.debug("Sample file already downloaded");
+ mrl = sampleResource.getPath();
+ return;
+ }
+ try
+ {
+ log.info("Downloading sample: {}", address);
+ String testResoucesPath = this.getClass().getResource("/sample").getPath();
+ URL url = new URL(address);
+ out = new BufferedOutputStream(new FileOutputStream(testResoucesPath + ".avi"));
+ conn = url.openConnection();
+ in = conn.getInputStream();
+ byte[] buffer = new byte[1024];
+ int numRead;
+ long numWritten = 0;
+ while ((numRead = in.read(buffer)) != -1)
+ {
+ out.write(buffer, 0, numRead);
+ numWritten += numRead;
+ }
+ log.info("Sample downloaded.");
+ mrl = testResoucesPath + ".avi";
+ }
+ catch (Exception e)
+ {
+ log.error("{}", e);
+ }
+ finally
+ {
+ IOUtils.closeQuietly(in);
+ IOUtils.closeQuietly(out);
+ }
+ }
+
+}
diff --git a/bindings/java/core/src/test/java/org/videolan/jvlc/JVLCTest.java b/bindings/java/core/src/test/java/org/videolan/jvlc/JVLCTest.java
index 451ae8c..23a3c99 100644
--- a/bindings/java/core/src/test/java/org/videolan/jvlc/JVLCTest.java
+++ b/bindings/java/core/src/test/java/org/videolan/jvlc/JVLCTest.java
@@ -30,7 +30,7 @@ import junit.framework.Assert;
import org.junit.Test;
-public class JVLCTest
+public class JVLCTest extends AbstractJVLCTest
{
String mrl = getClass().getResource("/raffa_voice.ogg").getFile();
@@ -45,7 +45,6 @@ public class JVLCTest
@Test
public void jvlcPlay()
{
- JVLC jvlc = new JVLC();
MediaPlayer instance = jvlc.play(mrl);
Assert.assertNotNull(instance);
}
@@ -55,7 +54,6 @@ public class JVLCTest
{
JVLC jvlc = new JVLC();
jvlc.release();
- jvlc.release();
}
diff --git a/bindings/java/core/src/test/java/org/videolan/jvlc/LoggerTest.java b/bindings/java/core/src/test/java/org/videolan/jvlc/LoggerTest.java
index 552607e..ce8acf5 100644
--- a/bindings/java/core/src/test/java/org/videolan/jvlc/LoggerTest.java
+++ b/bindings/java/core/src/test/java/org/videolan/jvlc/LoggerTest.java
@@ -29,22 +29,11 @@ import java.util.Iterator;
import junit.framework.Assert;
-import org.junit.Before;
import org.junit.Test;
-public class LoggerTest
+public class LoggerTest extends AbstractJVLCTest
{
-
- private JVLC jvlc;
-
- private String mrl = getClass().getResource("/raffa_voice.ogg").getFile();
-
- @Before
- public void setup()
- {
- jvlc = new JVLC("-I dummy --aout=dummy --vout=dummy");
- }
@Test
public void testLogDebug()
diff --git a/bindings/java/core/src/test/java/org/videolan/jvlc/MediaListTest.java b/bindings/java/core/src/test/java/org/videolan/jvlc/MediaListTest.java
index e73e528..3bc24ec 100644
--- a/bindings/java/core/src/test/java/org/videolan/jvlc/MediaListTest.java
+++ b/bindings/java/core/src/test/java/org/videolan/jvlc/MediaListTest.java
@@ -26,23 +26,12 @@
package org.videolan.jvlc;
import org.junit.Assert;
-import org.junit.Before;
import org.junit.Test;
-public class MediaListTest
+public class MediaListTest extends AbstractJVLCTest
{
- private JVLC jvlc;
-
- private String mrl = getClass().getResource("/raffa_voice.ogg").getFile();
-
- @Before
- public void setup()
- {
- jvlc = new JVLC("-vvv --ignore-config --no-media-library -I dummy --aout=dummy --vout=dummy");
- }
-
@Test
public void mediaListAddMedia()
{
diff --git a/bindings/java/core/src/test/java/org/videolan/jvlc/VLMTest.java b/bindings/java/core/src/test/java/org/videolan/jvlc/VLMTest.java
index a2d140a..6f97709 100644
--- a/bindings/java/core/src/test/java/org/videolan/jvlc/VLMTest.java
+++ b/bindings/java/core/src/test/java/org/videolan/jvlc/VLMTest.java
@@ -27,32 +27,13 @@ package org.videolan.jvlc;
import junit.framework.Assert;
-import org.junit.After;
-import org.junit.Before;
import org.junit.Test;
-public class VLMTest
+public class VLMTest extends AbstractJVLCTest
{
- private JVLC jvlc;
-
- private String mrl = getClass().getResource("/raffa_voice.ogg").getFile();
-
private String mediaName = "test";
- @Before
- public void setup()
- {
- jvlc = new JVLC("--ignore-config --no-media-library -I dummy --aout=dummy --vout=dummy");
- jvlc.setLogVerbosity(LoggerVerbosityLevel.DEBUG);
- }
-
- @After
- public void tearDown()
- {
- jvlc.release();
- }
-
@Test
public void testVLMInit()
{
@@ -82,14 +63,7 @@ public class VLMTest
vlm.addBroadcast(mediaName, "file://" + mrl, "", null, true, false);
vlm.disableMedia(mediaName);
}
-
- @Test
- public void testPlayMedia()
- {
- VLM vlm = jvlc.getVLM();
- vlm.addBroadcast(mediaName, mrl, "", null, true, false);
- vlm.playMedia(mediaName);
- }
+
@Test
public void testPauseMedia()
@@ -98,17 +72,16 @@ public class VLMTest
vlm.addBroadcast(mediaName, "file://" + mrl, "", null, true, false);
vlm.playMedia(mediaName);
vlm.pauseMedia(mediaName);
+ vlm.stopMedia(mediaName);
}
@Test
- public void testStopMedia() throws Exception
+ public void testStopMedia()
{
VLM vlm = jvlc.getVLM();
vlm.addBroadcast(mediaName, "file://" + mrl, "", null, true, false);
vlm.playMedia(mediaName);
- Thread.sleep(2000);
vlm.stopMedia(mediaName);
- jvlc.release();
}
@Test
@@ -118,6 +91,7 @@ public class VLMTest
vlm.addBroadcast(mediaName, "file://" + mrl, "", null, true, false);
vlm.playMedia(mediaName);
vlm.seekMedia(mediaName, 0.3f);
+ vlm.stopMedia(mediaName);
}
@Test
diff --git a/bindings/java/core/src/test/java/org/videolan/jvlc/internal/AbstractVLCInternalTest.java b/bindings/java/core/src/test/java/org/videolan/jvlc/internal/AbstractVLCInternalTest.java
index 03f1587..e7c540c 100644
--- a/bindings/java/core/src/test/java/org/videolan/jvlc/internal/AbstractVLCInternalTest.java
+++ b/bindings/java/core/src/test/java/org/videolan/jvlc/internal/AbstractVLCInternalTest.java
@@ -27,7 +27,6 @@ package org.videolan.jvlc.internal;
import java.io.BufferedOutputStream;
import java.io.FileOutputStream;
-import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URL;
More information about the vlc-devel
mailing list