Alien-Selenium

 view release on metacpan or  search on metacpan

Build.PL  view on Meta::CPAN


    {
        mkpath ( my $xpi_installdir =
                 catdir(qw(blib lib Alien Selenium xpi)) );
        my @xpifiles = 'readyState.xpi';
        foreach my $file ( @xpifiles ) {
            my $src = catfile ($srcdir, $file);
            warn "Cannot find $file in $srcdir, skipping", next
                if (! -f $src);
            my $dest = catfile ( $xpi_installdir, $file );
            $self->copy_if_modified( from => $src,
                                     to   => $dest,
                                     verbose => 1,
                                   );
        }
    }
}

=head1 UTILITY METHODS

=cut

=head2 selenium_archive_basename()

Returns the basename of the Selenium zipball with version number,
e.g. C<selenium-0.x> or C<selenium-core-0.x>

=cut

sub selenium_archive_basename {
    my ($self) = @_;
    if ($self->option_value("selenium_version") lt '0.7') {
        return 'selenium-' . $self->option_value("selenium_version");
    } else {
        return 'selenium-core-' . $self->option_value("selenium_version");
    }
}

=head2 selenium_archive()

Returns the full name of the Selenium zipball,
e.g. C<selenium-0.x.zip>

=cut

sub selenium_archive {
    my ($self) = @_;
    return $self->selenium_archive_basename . ".zip";
}

=head2 selenium_url()

Returns the URL that we should attempt to fetch the Selenium tarball
from.

=cut

sub selenium_url {
    my ($self) = @_;
    if ($self->option_value("selenium_version") lt '0.7') {
        return 'http://gforge.public.thoughtworks.org/download.php/51/'
            . $self->selenium_archive;
    } else {
        return sprintf('http://release.openqa.org/selenium-core/%s/%s',
                       $self->option_value("selenium_version"),
                       $self->selenium_archive);
    }
}

=head2 selenium_directory()

Returns the directory in which Selenium is (to be) unpacked.  Grovels
around a bit looking for already existing directories, and returns
L</selenium_archive_basename> if none is found.

=cut

sub selenium_directory {
    my ($self) = @_;
    my $version = $self->option_value("selenium_version");
    foreach my $dir ("selenium-core-$version", "selenium-$version",
                     "selenium-$version-stripped") {
        return $dir if -d $dir;
    }

    return $self->selenium_archive_basename;
}



( run in 0.316 second using v1.01-cache-2.11-cpan-4991d5b9bd9 )