[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