spdy_http_utils_unittest.cc revision 2a99a7e74a7f215066514fe81d2bfa6639d9eddd
1// Copyright (c) 2012 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "net/spdy/spdy_http_utils.h"
6
7#include "base/basictypes.h"
8#include "testing/gtest/include/gtest/gtest.h"
9
10namespace net {
11
12namespace {
13
14TEST(SpdyHttpUtilsTest, ConvertRequestPriorityToSpdy2Priority) {
15  EXPECT_EQ(0, ConvertRequestPriorityToSpdyPriority(HIGHEST, 2));
16  EXPECT_EQ(1, ConvertRequestPriorityToSpdyPriority(MEDIUM, 2));
17  EXPECT_EQ(2, ConvertRequestPriorityToSpdyPriority(LOW, 2));
18  EXPECT_EQ(2, ConvertRequestPriorityToSpdyPriority(LOWEST, 2));
19  EXPECT_EQ(3, ConvertRequestPriorityToSpdyPriority(IDLE, 2));
20}
21
22TEST(SpdyHttpUtilsTest, ConvertRequestPriorityToSpdy3Priority) {
23  EXPECT_EQ(0, ConvertRequestPriorityToSpdyPriority(HIGHEST, 3));
24  EXPECT_EQ(1, ConvertRequestPriorityToSpdyPriority(MEDIUM, 3));
25  EXPECT_EQ(2, ConvertRequestPriorityToSpdyPriority(LOW, 3));
26  EXPECT_EQ(3, ConvertRequestPriorityToSpdyPriority(LOWEST, 3));
27  EXPECT_EQ(4, ConvertRequestPriorityToSpdyPriority(IDLE, 3));
28}
29
30TEST(SpdyHttpUtilsTest, ConvertSpdy2PriorityToRequestPriority) {
31  EXPECT_EQ(HIGHEST, ConvertSpdyPriorityToRequestPriority(0, 2));
32  EXPECT_EQ(MEDIUM, ConvertSpdyPriorityToRequestPriority(1, 2));
33  EXPECT_EQ(LOW, ConvertSpdyPriorityToRequestPriority(2, 2));
34  EXPECT_EQ(IDLE, ConvertSpdyPriorityToRequestPriority(3, 2));
35  // These are invalid values, but we should still handle them
36  // gracefully.
37  for (int i = 4; i < kuint8max; ++i) {
38    EXPECT_EQ(IDLE, ConvertSpdyPriorityToRequestPriority(i, 2));
39  }
40}
41
42TEST(SpdyHttpUtilsTest, ConvertSpdy3PriorityToRequestPriority) {
43  EXPECT_EQ(HIGHEST, ConvertSpdyPriorityToRequestPriority(0, 3));
44  EXPECT_EQ(MEDIUM, ConvertSpdyPriorityToRequestPriority(1, 3));
45  EXPECT_EQ(LOW, ConvertSpdyPriorityToRequestPriority(2, 3));
46  EXPECT_EQ(LOWEST, ConvertSpdyPriorityToRequestPriority(3, 3));
47  EXPECT_EQ(IDLE, ConvertSpdyPriorityToRequestPriority(4, 3));
48  // These are invalid values, but we should still handle them
49  // gracefully.
50  for (int i = 5; i < kuint8max; ++i) {
51    EXPECT_EQ(IDLE, ConvertSpdyPriorityToRequestPriority(i, 3));
52  }
53}
54
55TEST(SpdyHttpUtilsTest, ShowHttpHeaderValue){
56#if defined(SPDY_PROXY_AUTH_ORIGIN)
57  EXPECT_FALSE(ShouldShowHttpHeaderValue("proxy-authorization"));
58  EXPECT_TRUE(ShouldShowHttpHeaderValue("accept-encoding"));
59#else
60  EXPECT_TRUE(ShouldShowHttpHeaderValue("proxy-authorization"));
61  EXPECT_TRUE(ShouldShowHttpHeaderValue("accept-encoding"));
62#endif
63}
64
65}  // namespace
66
67}  // namespace net
68