--- /dev/null
+#!/usr/bin/perl -w
+
+use Test::More tests => 7;
+use Test::Exception;
+use Cwd qw/abs_path/;
+use blib;
+use strict;
+
+BEGIN {
+use_ok( 'WebPAC::Output::JSON' );
+}
+
+ok(my $abs_path = abs_path($0), "abs_path");
+$abs_path =~ s#/[^/]*$#/#; #
+diag "abs_path: $abs_path";
+
+ok(my $out = new WebPAC::Output::JSON({
+ path => "$abs_path/out/test.js",
+}), "new");
+
+ok( $out->init, 'init' );
+
+my $ds = {
+ 'Source' => {
+ 'name' => 'Izvor: ',
+ 'tag' => 'Source',
+ 'display' => [ 'foo' ]
+ },
+ 'ID' => {
+ 'name' => 'ID',
+ 'tag' => 'IDths',
+ 'search' => [ 'bar' ],
+ 'lookup_key' => [ 'bar' ]
+ },
+ 'filename' => [ 'out/thes/001.html' ],
+ 'name' => 'filename',
+ 'tag' => 'filename'
+};
+
+throws_ok { $out->add( ) } qr/need id/, 'add without params';
+throws_ok { $out->add( 42 ) } qr/need ds/, 'add without ds';
+
+ok( $out->add( 42, $ds ), 'add' );
+
+