Mercurial > hg > pulseaudio
changeset 118:3f2e4077fcbb
2009-09-11 Omair Majid <omajid@redhat.com>
* README: Added build instructions.
* build.xml: Updated the file to build everything and run all the tests
* unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java
(testHeadphonePortExists): Added the @Ignore tag. Ignore this test.
(testSpeakerPortExists): Likewise.
(testLineInPortExists): Likewise.
(testCdPortExists): Likewise.
(testLineOutPortExists): Likewise.
(testMicrophoneExists): Likewise.
author | Omair Majid <omajid@redhat.com> |
---|---|
date | Thu, 11 Sep 2008 16:49:43 -0400 |
parents | 850570c7af31 |
children | 9eb090e7c22c |
files | README build.xml unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java |
diffstat | 3 files changed, 78 insertions(+), 43 deletions(-) [+] |
line wrap: on
line diff
--- a/README Thu Sep 11 15:06:49 2008 -0400 +++ b/README Thu Sep 11 16:49:43 2008 -0400 @@ -2,6 +2,19 @@ An audio SPI implementation for java that uses PulseAudio as a mixer (so as a bonus you get all of the ear candy that PulseAudio provides) +How To Build? + + autoreconf && ./configure && ant && make + +Note: Building requires PulseAudio 0.9.12 and java-devel etc.. + +How To Run the Tests? + +After building, do: + + ant test + + (a few tests might fail; they test the networking capabilities of PulseAudio Where does it come from? All of the code was written by the authors
--- a/build.xml Thu Sep 11 15:06:49 2008 -0400 +++ b/build.xml Thu Sep 11 16:49:43 2008 -0400 @@ -1,71 +1,86 @@ <project default="all"> - <property name="classdir" value="classes"/> - <property name="sourcedir" value="src/java"/> - <property name="headerdir" value="src/native"/> - <property name="pulsejar" value="pulseaudio-java.jar"/> + <property name="classdir" value="classes" /> + <property name="sourcedir" value="src/java" /> + <property name="headerdir" value="src/native" /> + <property name="pulsejar" value="pulseaudio-java.jar" /> + + <target name="all" depends="compile,headers,jar"> + + </target> - <target name="all" depends="headers,jar"> + <target name="clean"> + <delete dir="${classdir}" /> + <delete dir="${testclassdir}" /> + <delete file="${pulsejar}" /> + <!-- Only delete the generated header files --> + <delete> + <fileset dir="${headerdir}" includes="org_*.h" /> + </delete> + </target> + + <target name="init"> + <mkdir dir="${classdir}" /> + <mkdir dir="${testclassdir}" /> + </target> + + <target name="compile" depends="init"> + <javac srcdir="${sourcedir}" destdir="${classdir}" /> + <copy todir="${classdir}/META-INF"> + <fileset dir="${sourcedir}/META-INF" /> + </copy> </target> - <target name="clean"> - <delete dir="${classdir}"/> - <delete dir="${testclassdir}"/> - <delete file="${pulsejar}"/> - <!-- Only delete the generated header files --> - <delete> - <fileset dir="${headerdir}" includes="org_*.h"/> - </delete> - </target> - - <target name="init"> - <mkdir dir="${classdir}"/> - <mkdir dir="${testclassdir}"/> + <target name="jar" depends="compile"> + <jar destfile="${pulsejar}" basedir="${classdir}"> + </jar> </target> - <target name="compile" depends="init"> - <javac srcdir="${sourcedir}" destdir="${classdir}"/> - </target> - - <target name="jar" depends="compile"> - <jar destfile="${pulsejar}" basedir="${classdir}"> - </jar> - </target> - <target name="headers" depends="compile"> <javah classpath="${classdir}" destdir="${headerdir}" verbose="no" force="yes"> - <class name="org.classpath.icedtea.pulseaudio.EventLoop"/> - <class name="org.classpath.icedtea.pulseaudio.Operation"/> - <class name="org.classpath.icedtea.pulseaudio.Stream"/> - <class name="org.classpath.icedtea.pulseaudio.PulseAudioSourcePort"/> - <class name="org.classpath.icedtea.pulseaudio.PulseAudioTargetPort"/> + <class name="org.classpath.icedtea.pulseaudio.EventLoop" /> + <class name="org.classpath.icedtea.pulseaudio.Operation" /> + <class name="org.classpath.icedtea.pulseaudio.Stream" /> + <class name="org.classpath.icedtea.pulseaudio.PulseAudioSourcePort" /> + <class name="org.classpath.icedtea.pulseaudio.PulseAudioTargetPort" /> </javah> </target> - <!-- TESTS --> - <property name="testclassdir" value="testclasses"/> - <property name="testsourcedir" value="unittests"/> + <!-- TESTS --> + <property name="testclassdir" value="testclasses" /> + <property name="testsourcedir" value="unittests" /> - <property name="junitjar" value="/home/jsumali/download/junit-4.5.jar"/> + <property name="junitjar" value="/usr/share/java/junit4.jar" /> <target name="compile-tests" depends="init"> - <javac srcdir="${testsourcedir}" destdir="${testclassdir}" - classpath="${junitjar}:${pulsejar}"/> + <javac srcdir="${testsourcedir}" destdir="${testclassdir}" classpath="${junitjar}:${pulsejar}" /> </target> <target name="jar-tests" depends="compile-tests"> - <jar destfile="PulseAudio-Tests.jar" basedir="${testclassdir}"/> + <jar destfile="PulseAudio-Tests.jar" basedir="${testclassdir}" /> </target> - <target name="test" depends="compile-tests"> - <junit printsummary="yes" haltonfailure="yes"> + <target name="test" depends="compile-tests,jar"> + <junit printsummary="yes" haltonfailure="yes" showoutput="no" fork="yes"> <classpath> - <pathelement location="${pulsejar}"/> - <pathelement path="${junitjar}:${testclassdir}"/> + <pathelement location="${pulsejar}" /> + <pathelement path="${junitjar}:${testclassdir}" /> </classpath> <formatter type="plain" /> + + <test name="org.classpath.icedtea.pulseaudio.OtherSoundProvidersAvailableTest" /> + <test name="org.classpath.icedtea.pulseaudio.PulseAudioClipTest" /> + <test name="org.classpath.icedtea.pulseaudio.PulseAudioEventLoopOverhead" /> + <test name="org.classpath.icedtea.pulseaudio.PulseAudioMixerProviderTest" /> <test name="org.classpath.icedtea.pulseaudio.PulseAudioMixerRawTest" /> + <test name="org.classpath.icedtea.pulseaudio.PulseAudioMixerTest" /> + <test name="org.classpath.icedtea.pulseaudio.PulseAudioSourcePortTest" /> + <test name="org.classpath.icedtea.pulseaudio.PulseAudioTargetDataLineTest" /> + <test name="org.classpath.icedtea.pulseaudio.PulseAudioTargetPortTest" /> + <test name="org.classpath.icedtea.pulseaudio.PulseSourceDataLineTest" /> + + </junit> </target> </project>
--- a/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java Thu Sep 11 15:06:49 2008 -0400 +++ b/unittests/org/classpath/icedtea/pulseaudio/PulseAudioMixerTest.java Thu Sep 11 16:49:43 2008 -0400 @@ -56,6 +56,7 @@ import org.junit.After; import org.junit.Assert; import org.junit.Before; +import org.junit.Ignore; import org.junit.Test; public class PulseAudioMixerTest { @@ -208,36 +209,42 @@ } + @Ignore @Test public void testHeadphonePortExists() throws LineUnavailableException { selectedMixer.open(); selectedMixer.getLine(Port.Info.HEADPHONE); } + @Ignore @Test public void testSpeakerPortExists() throws LineUnavailableException { selectedMixer.open(); selectedMixer.getLine(Port.Info.SPEAKER); } + @Ignore @Test public void testLineInPortExists() throws LineUnavailableException { selectedMixer.open(); selectedMixer.getLine(Port.Info.LINE_IN); } + @Ignore @Test public void testCdPortExists() throws LineUnavailableException { selectedMixer.open(); selectedMixer.getLine(Port.Info.COMPACT_DISC); } + @Ignore @Test public void testLineOutPortExists() throws LineUnavailableException { selectedMixer.open(); selectedMixer.getLine(Port.Info.LINE_OUT); } + @Ignore @Test public void testMicrophonePortExists() throws LineUnavailableException { selectedMixer.open();