Skip to content

Commit

Permalink
fix use of Mojo::Util::slurp|spurt and Mojo::Home::rel_dir
Browse files Browse the repository at this point in the history
  • Loading branch information
jberger committed Mar 16, 2017
1 parent 0dd725d commit 4820ebf
Show file tree
Hide file tree
Showing 6 changed files with 21 additions and 18 deletions.
2 changes: 1 addition & 1 deletion Build.PL
Expand Up @@ -11,7 +11,7 @@ my $builder = Module::Build->new(

requires => {
'perl' => '5.10.1',
'Mojolicious' => '5.54', # Mojo::JSON booleans
'Mojolicious' => '7.15', # Mojo::File
'Mojolicious::Plugin::Memorize' => 0,
'Mojolicious::Plugin::Humane' => '0.07',
'DBD::SQLite' => 0,
Expand Down
4 changes: 4 additions & 0 deletions Changes
@@ -1,5 +1,9 @@
Revision history for Perl module Galileo

0.042 2017-03-15
- Fix use of deprecated Mojolicous functions
- Bump Mojolicious requirement to 7.15

0.041 2016-08-13
- Bump Mojolicious requirement to 5.54
- Fix compatibility with Mojolicious 7.0
Expand Down
4 changes: 2 additions & 2 deletions lib/Galileo.pm
@@ -1,7 +1,7 @@
package Galileo;
use Mojo::Base 'Mojolicious';

our $VERSION = '0.041';
our $VERSION = '0.042';
$VERSION = eval $VERSION;

use File::Basename 'dirname';
Expand Down Expand Up @@ -118,7 +118,7 @@ sub load_config {
sub _to_abs {
my ($self, $dir) = @_;
unless ( File::Spec->file_name_is_absolute( $dir ) ) {
$dir = $self->home->rel_dir( $dir );
$dir = $self->home->rel_file( $dir );
}
return $dir;
}
Expand Down
11 changes: 6 additions & 5 deletions lib/Galileo/Command/dump.pm
@@ -1,7 +1,7 @@
package Galileo::Command::dump;
use Mojo::Base 'Mojolicious::Command';
use File::Spec;
use Mojo::Util qw/encode spurt/;
use Mojo::File;
use Mojo::Util qw/encode/;
use Getopt::Long qw/GetOptionsFromArray/;

has description => "Dump all stored pages as markdown\n";
Expand Down Expand Up @@ -40,13 +40,14 @@ sub run {

my $pages = $self->app->schema->resultset('Page')->search;
while ( my $page = $pages->next ) {
my $file = $page->name . '.md';
$file = File::Spec->catfile( $dir, $file ) if $dir;
my $file = Mojo::File->new($page->name . '.md');
$file = Mojo::File->new($dir)->child("$file") if $dir;

my $content = sprintf "$title\n", $page->title;
$content .= $page->md;
$content = encode($encoding, $content) if $encoding;
spurt $content, $file;

$file->spurt($content);
}

say "Export Complete";
Expand Down
3 changes: 1 addition & 2 deletions lib/Galileo/Command/setup.pm
Expand Up @@ -5,7 +5,6 @@ use Mojolicious::Command::daemon;

use Mojolicious::Routes;
use Mojo::JSON 'j';
use Mojo::Util 'spurt';

has description => "Configure your Galileo CMS via a web interface\n";

Expand Down Expand Up @@ -43,7 +42,7 @@ sub run {
$params{$key} = j($params{$key});
}

spurt $self->dumper(\%params), $self->app->config_file;
$self->app->config_file->spurt($self->dumper(\%params));

$self->app->load_config;
$self->humane_flash( 'Configuration saved' );
Expand Down
15 changes: 7 additions & 8 deletions t/commands.t
Expand Up @@ -7,10 +7,9 @@ use Test::More;
use Test::Mojo;

use Mojolicious::Commands;
use Mojo::Util qw/ decode encode slurp /;
use File::Spec;
use File::Temp ();
use Mojo::Util qw/decode encode/;
use Mojo::JSON qw/true false/;
use Mojo::File qw/tempdir/;

# dump
subtest 'Dump' => sub {
Expand All @@ -21,7 +20,7 @@ subtest 'Dump' => sub {
like $dump->usage, qr/dump/, 'has usage information';

# ready to test
my $dir = File::Temp->newdir( $ENV{KEEP_TEMP_DIR} ? (CLEANUP => 0) : () );
my $dir = tempdir( $ENV{KEEP_TEMP_DIR} ? (CLEANUP => 0) : () );
my $t = Galileo::DB::Deploy->create_test_object({test => 1});
isa_ok $t->app, 'Galileo';

Expand All @@ -41,9 +40,9 @@ subtest 'Dump' => sub {
},
);
for my $name ( keys %pages ) {
my $file = File::Spec->catfile( $dir, "$name.md" );
my $file = $dir->child("$name.md");
ok -e $file, "sample data: $name - exists";
my $content = decode 'UTF-8', slurp $file;
my $content = decode 'UTF-8', $file->slurp;
like $content, qr/\A<!-- $pages{$name}{title} -->/, "sample data: $name - title";
like $content, $pages{$name}{content}, "sample data: $name - content";
}
Expand Down Expand Up @@ -112,9 +111,9 @@ subtest 'Dump' => sub {
);
for my $name ( keys %pages ) {
my $encoded_name = encode 'UTF-8', $name;
my $file = File::Spec->catfile( $dir, "$name.md" );
my $file = $dir->child("$name.md");
ok -e $file, "sample data: $encoded_name - exists";
my $content = decode 'UTF-8', slurp $file;
my $content = decode 'UTF-8', $file->slurp;
like $content, qr/\A<!-- $pages{$name}{title} -->/, "sample data: $encoded_name - title";
like $content, $pages{$name}{content}, "sample data: $encoded_name - content";
}
Expand Down

0 comments on commit 4820ebf

Please sign in to comment.