[openid-test commit] r36 - in trunk/tester/lib/OpenID: . Tester Tester/Test

3 views
Skip to first unread message

codesite...@google.com

unread,
Jan 21, 2008, 4:53:47 AM1/21/08
to openi...@googlegroups.com
Author: br...@danga.com
Date: Mon Jan 21 01:53:25 2008
New Revision: 36

Modified:
trunk/tester/lib/OpenID/Tester.pm
trunk/tester/lib/OpenID/Tester/Test.pm
trunk/tester/lib/OpenID/Tester/Test/CheckID.pm

Log:
start of actual tests.

Modified: trunk/tester/lib/OpenID/Tester.pm
==============================================================================
--- trunk/tester/lib/OpenID/Tester.pm (original)
+++ trunk/tester/lib/OpenID/Tester.pm Mon Jan 21 01:53:25 2008
@@ -30,6 +30,9 @@

sub ua { $_[0]{ua} }

+sub op_base { $_[0]{op_base} or die "no op_base" }
+sub rp_base { $_[0]{rp_base} or die "no rp_base" }
+
sub op_is_rp {
my $self = shift;
return $self->{op_base} eq $self->{rp_base};

Modified: trunk/tester/lib/OpenID/Tester/Test.pm
==============================================================================
--- trunk/tester/lib/OpenID/Tester/Test.pm (original)
+++ trunk/tester/lib/OpenID/Tester/Test.pm Mon Jan 21 01:53:25 2008
@@ -62,4 +62,29 @@

sub tester { $_[0]{tester} }

+# don't override, helpers:
+
+sub gen_url {
+ my ($self, $base, %opts) = @_;
+ my $ret = $base;
+ foreach my $k (sort keys %opts) {
+ $ret .= ($ret =~ /\?/) ? "&" : "?";
+ $ret .= _eurl($k) . "=" . _eurl($opts{$k});
+ }
+ return $ret;
+}
+
+sub status {
+ my (undef, $status) = @_;
+ $status =~ s/[\n\r]+$//;
+ print STDERR "# $status\n";
+}
+
+sub _eurl {
+ my $a = $_[0];
+ $a =~ s/([^a-zA-Z0-9_\,\-.\/\\\: ])/uc sprintf("%%%02x",ord($1))/eg;
+ $a =~ tr/ /+/;
+ return $a;
+}
+
1;

Modified: trunk/tester/lib/OpenID/Tester/Test/CheckID.pm
==============================================================================
--- trunk/tester/lib/OpenID/Tester/Test/CheckID.pm (original)
+++ trunk/tester/lib/OpenID/Tester/Test/CheckID.pm Mon Jan 21 01:53:25 2008
@@ -18,7 +18,12 @@
my ($class, $tester) = @_;
my @tests;
foreach my $version ("1.1", "2.0", "1.1,2.0") {
- push @tests, $class->new($tester, version => $version);
+ foreach my $assoc_mode ("stateful_new", "stateless") {
+ push @tests, $class->new($tester,
+ version => $version,
+ assoc_mode => $assoc_mode,
+ );
+ }
}
return @tests;
}
@@ -26,6 +31,7 @@
sub init {
my ($self, %args) = @_;
$self->{version} = $args{version};
+ $self->{assoc_mode} = $args{assoc_mode};
}

sub des {
@@ -34,13 +40,24 @@

sub summary {
my $self = shift;
- return "check_id(version=$self->{version})";
+ return "v=$self->{version} assoc=$self->{assoc_mode}";
}

sub run {
my $self = shift;
- my $caps = $self->tester->op_caps;
- die "TODO: implement\n";
+ my $op_base = $self->tester->op_base;
+ my $rp_base = $self->tester->rp_base;
+ my $identity = $op_base . "/$self->{version}/identity/will-sign";
+ my $check_url = $self->gen_url($rp_base . "/$self->{version}/rp",
+ openid_identifier => $identity,
+ assoc_mode => $self->{assoc_mode},
+ );
+ $self->status("Checking URL: $check_url");
+ my $ua = $self->tester->ua;
+ my $res = $ua->get($check_url);
+ die "Response not successful" unless $res->is_success;
+ die "Content is: " . $res->content unless $res->content =~ /^OK\b/;
+ return 1;
}

1;

codesite...@google.com

unread,
Jan 21, 2008, 4:53:47 AM1/21/08
to openi...@googlegroups.com
Reply all
Reply to author
Forward
0 new messages