Skip to content

Commit

Permalink
Fix broken tests
Browse files Browse the repository at this point in the history
After usage of ConnectionState it becomes possible to throw away some internal variables and change internal interfaces, so testing approach needed patching too.
  • Loading branch information
Altai-man committed Dec 22, 2017
1 parent ee838dc commit cae4158
Show file tree
Hide file tree
Showing 6 changed files with 17 additions and 17 deletions.
6 changes: 2 additions & 4 deletions lib/Cro/HTTP2/GeneralParser.pm6
Expand Up @@ -18,8 +18,6 @@ my class Stream {
}

role Cro::HTTP2::GeneralParser does Cro::ConnectionState[Cro::HTTP2::ConnectionState] {
has $.ping;
has $.settings;
has $!pseudo-headers;

method transformer(Supply:D $in, Cro::HTTP2::ConnectionState :$connection-state!) {
Expand Down Expand Up @@ -104,7 +102,7 @@ role Cro::HTTP2::GeneralParser does Cro::ConnectionState[Cro::HTTP2::ConnectionS
when Cro::HTTP2::Frame::RstStream {
}
when Cro::HTTP2::Frame::Settings {
$!settings.emit: $_;
$connection-state.settings.emit: $_;
}
when Cro::HTTP2::Frame::PushPromise {
my @headers = $decoder.decode-headers(Buf.new: .headers);
Expand All @@ -127,7 +125,7 @@ role Cro::HTTP2::GeneralParser does Cro::ConnectionState[Cro::HTTP2::ConnectionS
}
}
when Cro::HTTP2::Frame::Ping {
$!ping.emit: $_;
$connection-state.ping.emit: $_;
}
when Cro::HTTP2::Frame::GoAway {
}
Expand Down
2 changes: 1 addition & 1 deletion lib/Cro/HTTP2/RequestParser.pm6
Expand Up @@ -7,7 +7,7 @@ class Cro::HTTP2::RequestParser does Cro::Transform does Cro::HTTP2::GeneralPars
method consumes() { Cro::HTTP2::Frame }
method produces() { Cro::HTTP::Request }

submethod BUILD(:$!settings, :$!ping) {
submethod BUILD() {
$!pseudo-headers = <:method :scheme :authority :path :status>;
}

Expand Down
2 changes: 1 addition & 1 deletion lib/Cro/HTTP2/ResponseParser.pm6
Expand Up @@ -6,7 +6,7 @@ class Cro::HTTP2::ResponseParser does Cro::Transform does Cro::HTTP2::GeneralPar
method consumes() { Cro::HTTP2::Frame }
method produces() { Cro::HTTP::Response }

submethod BUILD(:$!settings, :$!ping) {
submethod BUILD() {
$!pseudo-headers = <:status>;
}

Expand Down
18 changes: 9 additions & 9 deletions t/http2-request-parser.t
Expand Up @@ -8,20 +8,20 @@ my $encoder = HTTP::HPACK::Encoder.new;
my ($buf, @headers);

sub test(@frames, $count, $desc, @checks, :$fail, :$test-supplies) {
my ($ping, $settings);
my $test-completed = Promise.new;
my $connection-state = Cro::HTTP2::ConnectionState.new;
with $test-supplies {
$ping = Supplier.new;
$settings = Supplier.new;
$ping.Supply.tap: -> $ping {
$test-completed.keep;
$test-supplies.keep;
};
my $ping = $connection-state.ping.Supply;
$ping.tap(
-> $_ {
$test-completed.keep;
$test-supplies.keep;
});
}
my $parser = Cro::HTTP2::RequestParser.new(:$ping);
my $parser = Cro::HTTP2::RequestParser.new;
my $fake-in = Supplier.new;
my $counter = 0;
$parser.transformer($fake-in.Supply).tap:
$parser.transformer($fake-in.Supply, :$connection-state).tap:
-> $request {
for @checks[$counter].kv -> $i, $check {
ok $check($request), "check {$i + 1}";
Expand Down
3 changes: 2 additions & 1 deletion t/http2-response-parser.t
Expand Up @@ -12,7 +12,8 @@ sub test(@frames, $count, $desc, @checks, :$fail) {
my $parser = Cro::HTTP2::ResponseParser.new(:$ping);
my $fake-in = Supplier.new;
my $counter = 0;
$parser.transformer($fake-in.Supply).tap:
my $connection-state = Cro::HTTP2::ConnectionState.new;
$parser.transformer($fake-in.Supply, :$connection-state).tap:
-> $response {
for @checks[$counter].kv -> $i, $check {
ok $check($response), "check {$i + 1}";
Expand Down
3 changes: 2 additions & 1 deletion t/http2-response-serializer.t
Expand Up @@ -13,7 +13,8 @@ sub test($response, $count, $desc, *@checks, :$fail) {
my $serializer = Cro::HTTP2::ResponseSerializer.new;
my $fake-in = Supplier.new;
my $counter = 0;
$serializer.transformer($fake-in.Supply).tap:
my $connection-state = Cro::HTTP2::ConnectionState.new;
$serializer.transformer($fake-in.Supply, :$connection-state).tap:
-> $frame {
for @checks[$counter].kv -> $i, $check {
ok $check($frame), "check {$i + 1}";
Expand Down

0 comments on commit cae4158

Please sign in to comment.