# $Id$ PortSystem 1.0 name junit version 4.4 categories java devel platforms darwin maintainers nox description Java framework for repeatable tests long_description \ JUnit is a simple framework to write repeatable tests. \ It is an instance of the xUnit architecture for unit \ testing frameworks. homepage http://www.junit.org/ master_sites sourceforge distname ${name}${version} use_zip yes checksums md5 4755aa0af58a834bedce1f0119dc9514 \ sha1 83be34288bf8e595a6eb5a1de9c6cd96042d8c32 \ rmd160 915d20222030f5678a2d74cf07080a305c0c1407 post-extract { file mkdir ${worksrcpath}/src system "cd ${worksrcpath}/src && jar -xvf ../${name}-${version}-src.jar" eval delete ${worksrcpath}/javadoc ${worksrcpath}/temp.hamcrest.source \ [glob -directory ${worksrcpath} *.jar] fs-traverse {f} ${worksrcpath} { if {[string match *.class ${f}]} { delete ${f} } } } depends_lib port:hamcrest-core use_configure no set docdir ${prefix}/share/doc/${name}-${version} set javadir ${prefix}/share/java set hamcrestpkg ${javadir}/hamcrest-core.jar set junitpkg junit.jar set l [string length ${worksrcpath}/] build { set sources {} fs-traverse {f} ${worksrcpath}/src { if {[string match *.java ${f}]} { lappend sources [string range ${f} ${l} end] } } file mkdir ${worksrcpath}/classes foreach {source} ${sources} { set cmdstring "cd ${worksrcpath} && javac -d classes -cp ${hamcrestpkg} -sourcepath src ${source}" ui_debug ${cmdstring} system ${cmdstring} } set cmdstring "cd ${worksrcpath} && jar -cf ${worksrcpath}/${junitpkg} -C classes ." ui_debug ${cmdstring} system ${cmdstring} } test { set sources {} fs-traverse {f} "${worksrcpath}/junit/tests ${worksrcpath}/org/junit/tests" { if {[string match *.java ${f}]} { lappend sources [string range ${f} ${l} end] } } file mkdir ${worksrcpath}/classes foreach {source} ${sources} { set cmdstring "cd ${worksrcpath} && javac -d classes -cp ${hamcrestpkg}:${junitpkg} -sourcepath . ${source}" ui_debug ${cmdstring} system ${cmdstring} } foreach {p} {junit org.junit} { set class ${p}.tests.AllTests set cmdstring "cd ${worksrcpath} && java -cp classes:${junitpkg}:${hamcrestpkg} org.junit.runner.JUnitCore ${class}" ui_debug ${cmdstring} system ${cmdstring} } } destroot { xinstall -d ${destroot}${javadir} ${destroot}${docdir} xinstall -m 0644 ${worksrcpath}/${junitpkg} ${destroot}${javadir} copy ${worksrcpath}/doc ${destroot}${docdir}/html } variant doc description {Install extra documentation} { post-build { file mkdir ${worksrcpath}/javadoc set cmdstring "cd ${worksrcpath} && javadoc -d javadoc -sourcepath src -subpackages junit:org -classpath .:${hamcrestpkg}" ui_debug ${cmdstring} system ${cmdstring} } post-destroot { file copy ${worksrcpath}/javadoc ${destroot}${docdir}/ } } universal_variant no