[Jifty-commit] r3735 - in jifty/trunk: . t/TestApp-Plugin-Chart
t/TestApp-Plugin-Chart/bin t/TestApp-Plugin-Chart/doc
t/TestApp-Plugin-Chart/etc t/TestApp-Plugin-Chart/lib
t/TestApp-Plugin-Chart/lib/TestApp
t/TestApp-Plugin-Chart/lib/TestApp/Plugin
t/TestApp-Plugin-Chart/lib/TestApp/Plugin/Chart
t/TestApp-Plugin-Chart/lib/TestApp/Plugin/Chart/Action
t/TestApp-Plugin-Chart/lib/TestApp/Plugin/Chart/Model
t/TestApp-Plugin-Chart/log t/TestApp-Plugin-Chart/share
t/TestApp-Plugin-Chart/share/po t/TestApp-Plugin-Chart/share/web
t/TestApp-Plugin-Chart/share/web/static
t/TestApp-Plugin-Chart/share/web/templates
t/TestApp-Plugin-Chart/t t/TestApp-Plugin-Chart/var
t/TestApp-Plugin-Chart/var/mason
t/TestApp-Plugin-Chart/var/mason/obj
jifty-commit at lists.jifty.org
jifty-commit at lists.jifty.org
Sun Jul 29 22:16:24 EDT 2007
Author: sterling
Date: Sun Jul 29 22:16:24 2007
New Revision: 3735
Added:
jifty/trunk/t/TestApp-Plugin-Chart/
jifty/trunk/t/TestApp-Plugin-Chart/Makefile.PL
jifty/trunk/t/TestApp-Plugin-Chart/bin/
jifty/trunk/t/TestApp-Plugin-Chart/bin/jifty (contents, props changed)
jifty/trunk/t/TestApp-Plugin-Chart/doc/
jifty/trunk/t/TestApp-Plugin-Chart/etc/
jifty/trunk/t/TestApp-Plugin-Chart/etc/config.yml
jifty/trunk/t/TestApp-Plugin-Chart/lib/
jifty/trunk/t/TestApp-Plugin-Chart/lib/TestApp/
jifty/trunk/t/TestApp-Plugin-Chart/lib/TestApp/Plugin/
jifty/trunk/t/TestApp-Plugin-Chart/lib/TestApp/Plugin/Chart/
jifty/trunk/t/TestApp-Plugin-Chart/lib/TestApp/Plugin/Chart/Action/
jifty/trunk/t/TestApp-Plugin-Chart/lib/TestApp/Plugin/Chart/Model/
jifty/trunk/t/TestApp-Plugin-Chart/lib/TestApp/Plugin/Chart/View.pm
jifty/trunk/t/TestApp-Plugin-Chart/log/
jifty/trunk/t/TestApp-Plugin-Chart/share/
jifty/trunk/t/TestApp-Plugin-Chart/share/po/
jifty/trunk/t/TestApp-Plugin-Chart/share/web/
jifty/trunk/t/TestApp-Plugin-Chart/share/web/static/
jifty/trunk/t/TestApp-Plugin-Chart/share/web/templates/
jifty/trunk/t/TestApp-Plugin-Chart/t/
jifty/trunk/t/TestApp-Plugin-Chart/t/chart.t
jifty/trunk/t/TestApp-Plugin-Chart/var/
jifty/trunk/t/TestApp-Plugin-Chart/var/mason/
jifty/trunk/t/TestApp-Plugin-Chart/var/mason/cache/
jifty/trunk/t/TestApp-Plugin-Chart/var/mason/obj/
Modified:
jifty/trunk/ (props changed)
Log:
r8203 at dynpc145: andrew | 2007-07-29 21:13:01 -0500
Adding a test suite for Jifty::Plugin::Chart, but it is having weird troubles loading Chart::* because that seems to disconnect the server output or something.
Added: jifty/trunk/t/TestApp-Plugin-Chart/Makefile.PL
==============================================================================
--- (empty file)
+++ jifty/trunk/t/TestApp-Plugin-Chart/Makefile.PL Sun Jul 29 22:16:24 2007
@@ -0,0 +1,7 @@
+use inc::Module::Install;
+
+name 'TestApp::Plugin::Chart';
+version '0.01';
+requires 'Jifty' => '0.70129';
+
+WriteAll;
Added: jifty/trunk/t/TestApp-Plugin-Chart/bin/jifty
==============================================================================
--- (empty file)
+++ jifty/trunk/t/TestApp-Plugin-Chart/bin/jifty Sun Jul 29 22:16:24 2007
@@ -0,0 +1,11 @@
+#!/usr/bin/env perl
+use warnings;
+use strict;
+use File::Basename qw(dirname);
+use UNIVERSAL::require;
+
+use Jifty;
+use Jifty::Script;
+
+local $SIG{INT} = sub { warn "Stopped\n"; exit; };
+Jifty::Script->dispatch();
Added: jifty/trunk/t/TestApp-Plugin-Chart/etc/config.yml
==============================================================================
--- (empty file)
+++ jifty/trunk/t/TestApp-Plugin-Chart/etc/config.yml Sun Jul 29 22:16:24 2007
@@ -0,0 +1,54 @@
+---
+framework:
+ AdminMode: 1
+ ApplicationClass: TestApp::Plugin::Chart
+ ApplicationName: TestApp-Plugin-Chart
+ ApplicationUUID: D16D885C-3E10-11DC-ABE9-A583E6FF98E1
+ ConfigFileVersion: 2
+ Database:
+ CheckSchema: 1
+ Database: testapp_plugin_chart
+ Driver: SQLite
+ Host: localhost
+ Password: ''
+ RecordBaseClass: Jifty::DBI::Record::Cachable
+ RecordUUIDs: active
+ User: ''
+ Version: 0.0.1
+ DevelMode: 1
+ L10N:
+ PoDir: share/po
+ LogLevel: INFO
+ Mailer: Sendmail
+ MailerArgs: []
+
+ Plugins:
+ - LetMe: {}
+ - SkeletonApp: {}
+ - REST: {}
+ - Halo: {}
+ - ErrorTemplates: {}
+ - OnlineDocs: {}
+ - CompressedCSSandJS: {}
+ - AdminUI: {}
+ - Chart: {}
+
+ PubSub:
+ Backend: Memcached
+ Enable: ~
+ SkipAccessControl: 0
+ TemplateClass: TestApp::Plugin::Chart::View
+ Web:
+ BaseURL: http://localhost
+ DataDir: var/mason
+ Globals: []
+
+ MasonConfig:
+ autoflush: 0
+ default_escape_flags: h
+ error_format: text
+ error_mode: fatal
+ Port: 8888
+ ServeStaticFiles: 1
+ StaticRoot: share/web/static
+ TemplateRoot: share/web/templates
Added: jifty/trunk/t/TestApp-Plugin-Chart/lib/TestApp/Plugin/Chart/View.pm
==============================================================================
--- (empty file)
+++ jifty/trunk/t/TestApp-Plugin-Chart/lib/TestApp/Plugin/Chart/View.pm Sun Jul 29 22:16:24 2007
@@ -0,0 +1,21 @@
+use strict;
+use warnings;
+
+package TestApp::Plugin::Chart::View;
+use Jifty::View::Declare -base;
+
+template '/graphit' => page {
+ Jifty->web->chart(
+ type => 'Pie',
+ width => 400,
+ height => 300,
+ data => sub {
+ [
+ [ 2004, 2005, 2006, 2007 ],
+ [ 26, 37, 12, 42 ]
+ ];
+ },
+ );
+};
+
+1;
Added: jifty/trunk/t/TestApp-Plugin-Chart/t/chart.t
==============================================================================
--- (empty file)
+++ jifty/trunk/t/TestApp-Plugin-Chart/t/chart.t Sun Jul 29 22:16:24 2007
@@ -0,0 +1,45 @@
+#!/usr/bin/env perl
+use strict;
+use warnings;
+
+use lib 't/lib';
+
+use Jifty::SubTest;
+use Jifty::Test tests => 9;
+use Jifty::Test::WWW::Mechanize;
+
+my $server = Jifty::Test->make_server;
+ok($server, 'got a server');
+
+my $url = $server->started_ok;
+
+my $mech = Jifty::Test::WWW::Mechanize->new;
+
+$mech->get_ok($url . '/graphit', 'try getting /graphit');
+my $img_match = qr{<img src="(/chart/S\d+)" width="400" height="300"/>};
+$mech->content_like($img_match, 'has an img tag');
+my ($chart_path) = $mech->content =~ $img_match;
+
+TODO: {
+local $TODO = "Always fail because eval 'use Chart::*' breaks file handles?";
+
+$mech->get_ok($url . $chart_path, 'try getting ' . $chart_path);
+
+my $response = $mech->response;
+is($response->header('Content-type'), 'image/png', 'content type set to png');
+
+SKIP: {
+ eval "use Image::Info qw/ image_info /";
+ skip "Image::Info is not installed", 3 if $@;
+
+ my $imgdata = $mech->content;
+ my $info = image_info(\$imgdata);
+
+ diag($info->{error}) if $info->{error};
+
+ is($info->{file_ext}, 'png', 'it is a png file');
+ is($info->{width}, 400, 'it is 400 pixels wide');
+ is($info->{height}, 300, 'it is 300 pixels tall');
+};
+
+};
More information about the Jifty-commit
mailing list