libextractor

GNU libextractor
Log | Files | Refs | Submodules | README | LICENSE

commit dc0861ada7e0bdd8754b86bcb0dc533ca1df02d2
parent 3a962e87f5ba3f4e87ad6e621ff779f72a92e1d0
Author: Christian Grothoff <christian@grothoff.org>
Date:   Tue, 14 Aug 2012 22:09:23 +0000

nsf testcase

Diffstat:
Msrc/plugins/Makefile.am | 9++++++++-
Asrc/plugins/test_nsf.c | 117+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Asrc/plugins/testdata/nsf_arkanoid.nsf | 0
3 files changed, 125 insertions(+), 1 deletion(-)

diff --git a/src/plugins/Makefile.am b/src/plugins/Makefile.am @@ -32,7 +32,8 @@ EXTRA_DIST = template_extractor.c \ testdata/ole2_excel.xls \ testdata/png_image.png \ testdata/odf_cg.odt \ - testdata/deb_bzip2.deb + testdata/deb_bzip2.deb \ + testdata/nsf_arkanoid.nsf if HAVE_VORBISFILE PLUGIN_OGG=libextractor_ogg.la @@ -117,6 +118,7 @@ check_PROGRAMS = \ test_png \ test_odf \ test_zip \ + test_nsf \ $(TEST_ZLIB) \ $(TEST_OGG) \ $(TEST_MIME) \ @@ -164,6 +166,11 @@ libextractor_nsf_la_SOURCES = \ libextractor_nsf_la_LDFLAGS = \ $(PLUGINFLAGS) +test_nsf_SOURCES = \ + test_nsf.c +test_nsf_LDADD = \ + $(top_builddir)/src/plugins/libtest.la + libextractor_nsfe_la_SOURCES = \ nsfe_extractor.c diff --git a/src/plugins/test_nsf.c b/src/plugins/test_nsf.c @@ -0,0 +1,117 @@ +/* + This file is part of libextractor. + (C) 2012 Vidyut Samanta and Christian Grothoff + + libextractor 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 3, or (at your + option) any later version. + + libextractor 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 libextractor; see the file COPYING. If not, write to the + Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. +*/ +/** + * @file plugins/test_nsf.c + * @brief testcase for nsf plugin + * @author Christian Grothoff + */ +#include "platform.h" +#include "test_lib.h" + + + +/** + * Main function for the NSF testcase. + * + * @param argc number of arguments (ignored) + * @param argv arguments (ignored) + * @return 0 on success + */ +int +main (int argc, char *argv[]) +{ + struct SolutionData nsf_arkanoid_sol[] = + { + { + EXTRACTOR_METATYPE_MIMETYPE, + EXTRACTOR_METAFORMAT_UTF8, + "text/plain", + "audio/x-nsf", + strlen ("audio/x-nsf") + 1, + 0 + }, + { + EXTRACTOR_METATYPE_FORMAT_VERSION, + EXTRACTOR_METAFORMAT_UTF8, + "text/plain", + "1", + strlen ("1") + 1, + 0 + }, + { + EXTRACTOR_METATYPE_SONG_COUNT, + EXTRACTOR_METAFORMAT_UTF8, + "text/plain", + "26", + strlen ("26") + 1, + 0 + }, + { + EXTRACTOR_METATYPE_STARTING_SONG, + EXTRACTOR_METAFORMAT_UTF8, + "text/plain", + "1", + strlen ("1") + 1, + 0 + }, + { + EXTRACTOR_METATYPE_ALBUM, + EXTRACTOR_METAFORMAT_UTF8, + "text/plain", + "Arkanoid II - Revenge of Doh", + strlen ("Arkanoid II - Revenge of Doh") + 1, + 0 + }, + { + EXTRACTOR_METATYPE_ARTIST, + EXTRACTOR_METAFORMAT_UTF8, + "text/plain", + "<?>", + strlen ("<?>") + 1, + 0 + }, + { + EXTRACTOR_METATYPE_COPYRIGHT, + EXTRACTOR_METAFORMAT_UTF8, + "text/plain", + "1988 Taito", + strlen ("1988 Taito") + 1, + 0 + }, + { + EXTRACTOR_METATYPE_BROADCAST_TELEVISION_SYSTEM, + EXTRACTOR_METAFORMAT_UTF8, + "text/plain", + "NTSC", + strlen ("NTSC") + 1, + 0 + }, + { 0, 0, NULL, NULL, 0, -1 } + }; + struct ProblemSet ps[] = + { + { "testdata/nsf_arkanoid.nsf", + nsf_arkanoid_sol }, + { NULL, NULL } + }; + return ET_main ("nsf", ps); +} + +/* end of test_nsf.c */ diff --git a/src/plugins/testdata/nsf_arkanoid.nsf b/src/plugins/testdata/nsf_arkanoid.nsf Binary files differ.