Home | History | Annotate | Download | only in chrome
      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 "chrome/test/chromedriver/chrome/status.h"
      6 #include "testing/gtest/include/gtest/gtest.h"
      7 
      8 TEST(StatusTest, Ok) {
      9   Status ok(kOk);
     10   ASSERT_TRUE(ok.IsOk());
     11   ASSERT_FALSE(ok.IsError());
     12   ASSERT_EQ(kOk, ok.code());
     13   ASSERT_STREQ("ok", ok.message().c_str());
     14 }
     15 
     16 TEST(StatusTest, Error) {
     17   Status error(kUnknownCommand);
     18   ASSERT_FALSE(error.IsOk());
     19   ASSERT_TRUE(error.IsError());
     20   ASSERT_EQ(kUnknownCommand, error.code());
     21   ASSERT_STREQ("unknown command", error.message().c_str());
     22 }
     23 
     24 TEST(StatusTest, ErrorWithDetails) {
     25   Status error(kUnknownError, "something happened");
     26   ASSERT_FALSE(error.IsOk());
     27   ASSERT_TRUE(error.IsError());
     28   ASSERT_EQ(kUnknownError, error.code());
     29   ASSERT_STREQ("unknown error: something happened", error.message().c_str());
     30 }
     31 
     32 TEST(StatusTest, ErrorWithCause) {
     33   Status error(
     34       kUnknownCommand, "quit",
     35       Status(
     36           kUnknownError, "something happened",
     37           Status(kSessionNotCreatedException)));
     38   ASSERT_FALSE(error.IsOk());
     39   ASSERT_TRUE(error.IsError());
     40   ASSERT_EQ(kUnknownCommand, error.code());
     41   ASSERT_STREQ(
     42       "unknown command: quit\n"
     43       "from unknown error: something happened\n"
     44       "from session not created exception",
     45       error.message().c_str());
     46 }
     47 
     48 TEST(StatusTest, AddDetails) {
     49   Status error(kUnknownError);
     50   error.AddDetails("details");
     51   ASSERT_STREQ("unknown error\n  (details)", error.message().c_str());
     52 }
     53