use strict;
use warnings;
use Test::More tests => 6;
use lib '../lib';
my $ping_content = {
url => 'http://www.burningchrome.com/~cdent/mt/archives/000361.html',
title => 'Why Wiki?',
blog_name => 'Glacial Erratics',
excerpt => 'this is the excerpt',
};
SKIP: {
eval {require Kwiki::Test};
skip 'we need Kwiki::Test to test', 5 if $@;
my $kwiki = Kwiki::Test->new->init([
'Kwiki::Trackback',
]);
my $hub = $kwiki->hub;
my $trackback = $hub->trackback;
my $xml = $trackback->trackback_ping_receive('HomePage', $ping_content);
my $err = $trackback->trackback_ping_receive('HomePageButt', $ping_content);
like($xml, qr{0}, 'correct success response code');
like($err, qr{1}, 'correct error response code');
$hub->pages->current($hub->pages->new_from_name('HomePage'));
my $trackbacks = $trackback->trackbacks;
is(@$trackbacks, 1, 'one trackback result');
is($trackbacks->[0]->{url}, $ping_content->{url}, 'correct url');
is($trackbacks->[0]->{blog_name}, $ping_content->{blog_name},
'correct blog title');
is($trackbacks->[0]->{excerpt}, $ping_content->{excerpt},
'correct excerpt');
$kwiki->cleanup;
}