use strict;
use warnings;
use Test::More;
use Test::Fake::HTTPD;
use Test::Exception;
use Brownie::Driver::Mechanize;
use Brownie::Node::Mechanize;
my $driver = Brownie::Driver::Mechanize->new;
my $body = <<__HTTPD__;
test title
Heading 1
__HTTPD__
my $httpd = Test::Fake::HTTPD->new(timeout => 30);
$httpd->run(sub { [ 200, [ 'Content-Type' => 'text/html; charset=utf-8' ], [ $body ] ] });
my $base_url = $httpd->endpoint;
subtest 'Accessor' => sub {
$driver->visit($base_url);
my $doc = $driver->find('/html');
subtest 'text element' => sub {
my $elem = $doc->find('h1');
is $elem->tag_name => 'h1';
is $elem->text => 'Heading 1';
is $elem->id => 'title';
is $elem->attr('title') => 'heading';
};
subtest 'control element' => sub {
my $elem = $doc->find('#text');
is $elem->tag_name => 'input';
is $elem->id => 'text';
is $elem->type => 'text';
is $elem->name => 'text';
is $elem->value => 'text value';
};
};
done_testing;