Apache-SWIT

 view release on metacpan or  search on metacpan

t/505_dual.t  view on Meta::CPAN

use strict;
use warnings FATAL => 'all';

use Test::More tests => 28;
use File::Slurp;
use Test::TempDatabase;
use Cwd;
use YAML;
use Apache::SWIT::Test::Utils;
use HTML::Tested::Seal;
use Data::Dumper;

BEGIN { use_ok('Apache::SWIT::Test::ModuleTester'); }

my $cwd = getcwd;

my $mt = Apache::SWIT::Test::ModuleTester->new({ root_class => 'TTT' });
my $td = $mt->root_dir;
chdir $td;
$mt->run_modulemaker_and_chdir;

is(system("$cwd/scripts/swit_init"), 0);
isnt(-f "conf/swit.yaml", undef);
isnt(-f "conf/seal.key", undef) or ASTU_Wait;
unlike(read_file("lib/TTT/UI/Index.pm"), qr/sub ht_root_class/);

`./scripts/swit_app.pl add_page Red`;
is($?, 0);
$mt->replace_in_file("lib/TTT/UI/Red.pm", "swit_render {", <<'ENDS');
swit_render {
	return [ INTERNAL => "../index/r?first=$ENV{APACHE_SWIT_SERVER_URL}" ];
ENDS

write_file('t/dual/030_load.t', <<'ENDS');
use strict;
use warnings FATAL => 'all';

use Test::More tests => 11;
use File::Slurp;

BEGIN { use_ok('T::Test'); };

my $t = T::Test->new;
$t->with_or_without_mech_do(2, sub {
	ok 1;
	write_file("A", "");
	is($ENV{APACHE_SWIT_SERVER_URL}, 'http://'
		. Apache::TestRequest::hostport() . "/");
}, 2, sub {
	ok 1;
	write_file("D", "");
	is($ENV{APACHE_SWIT_SERVER_URL}, 'direct.test');
});
$t->ok_ht_index_r(make_url => 1, ht => { first => '' });
$t->content_like(qr/hrum/);
$t->red_r(make_url => 1);
$t->content_like(qr/hrum/);
$t->with_or_without_mech_do(2, sub {
	like($t->mech->uri, qr#red/r#);
	my $hp = Apache::TestRequest::hostport();
	like($t->mech->content, qr#http://$hp/#);
});
$t->aga_html_r(make_url => 1);
$t->content_like(qr/hrum/);
ENDS
append_file('MANIFEST', "\nt/dual/030_load.t\n");

like(read_file("lib/TTT/UI/Index.pm"), qr/sub swit_startup/);
$mt->replace_in_file("lib/TTT/UI/Index.pm", 'sub swit_startup {', <<ENDS);
use File::Slurp;
sub swit_startup {



( run in 2.852 seconds using v1.01-cache-2.11-cpan-5a3173703d6 )