From 8e0168fa61c683a77c6cf6e72adc3ca3fdb00e16 Mon Sep 17 00:00:00 2001 From: Bart Jorgensen Date: Thu, 23 Aug 2012 17:46:41 +1200 Subject: [PATCH 6/6] Bug 5327: Unit tests for C4 socialdata --- t/SocialData.t | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 t/SocialData.t diff --git a/t/SocialData.t b/t/SocialData.t new file mode 100644 index 0000000..13b7108 --- /dev/null +++ b/t/SocialData.t @@ -0,0 +1,48 @@ +#!/usr/bin/perl +# +#Testing C4 SocialData + +use strict; +use warnings; +use Test::More tests => 5; +use Test::MockModule; + + + +BEGIN { + use_ok('C4::SocialData'); +} + +my $module = new Test::MockModule('C4::Context'); +$module->mock('_new_dbh', sub { + my $dbh = DBI->connect( 'DBI:Mock:', '', '' ) + || die "Cannot create handle: $DBI::errstr\n"; + return $dbh }); +my $socialdata = [ + ['isbn','num_critics','num_critics_pro','num_quotations','num_videos','score_avg','num_scores'], + ['0-596-52674-1',1,2,3,4,5.2,6], + ['0-596-00289-0',2,3,4,5,6.2,7] + ]; +my $dbh = C4::Context->dbh(); + +$dbh->{mock_add_resultset} = $socialdata; + +my $data = C4::SocialData::get_data(); + +is($data->{'isbn'},'0-596-52674-1', 'First isbn is 0-596-52674-1'); + +my $reportdata = [ + ['biblionumber','isbn'], + [1,'0-596-52674-1'], + [2,'0-596-00289-0'] + ]; + +use Data::Dumper; + +$dbh->{mock_add_resultset} = $reportdata; + +ok (my $report = C4::SocialData::get_report()); + +is ($report->{'without'}->[0]->{'original'},'0-596-52674-1', 'testing get_report gives isbn'); + +is ($report->{'without'}->[0]->{'isbn'},'9780596526740', 'testing get_report'); -- 1.7.9.5