Home | History | Annotate | Download | only in cookies
      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/cookies/cookie_store_test_callbacks.h"
      6 
      7 #include "base/message_loop/message_loop.h"
      8 #include "base/threading/thread.h"
      9 #include "testing/gtest/include/gtest/gtest.h"
     10 
     11 namespace net {
     12 
     13 CookieCallback::CookieCallback(base::Thread* run_in_thread)
     14     : did_run_(false),
     15       run_in_thread_(run_in_thread),
     16       run_in_loop_(NULL),
     17       parent_loop_(base::MessageLoop::current()),
     18       loop_to_quit_(base::MessageLoop::current()) {}
     19 
     20 CookieCallback::CookieCallback()
     21     : did_run_(false),
     22       run_in_thread_(NULL),
     23       run_in_loop_(base::MessageLoop::current()),
     24       parent_loop_(NULL),
     25       loop_to_quit_(base::MessageLoop::current()) {}
     26 
     27 void CookieCallback::CallbackEpilogue() {
     28   base::MessageLoop* expected_loop = NULL;
     29   if (run_in_thread_) {
     30     DCHECK(!run_in_loop_);
     31     expected_loop = run_in_thread_->message_loop();
     32   } else if (run_in_loop_) {
     33     expected_loop = run_in_loop_;
     34   }
     35   ASSERT_TRUE(expected_loop != NULL);
     36 
     37   did_run_ = true;
     38   EXPECT_EQ(expected_loop, base::MessageLoop::current());
     39   loop_to_quit_->PostTask(FROM_HERE, base::MessageLoop::QuitClosure());
     40 }
     41 
     42 StringResultCookieCallback::StringResultCookieCallback() {}
     43 StringResultCookieCallback::StringResultCookieCallback(
     44     base::Thread* run_in_thread)
     45     : CookieCallback(run_in_thread) {}
     46 
     47 NoResultCookieCallback::NoResultCookieCallback() {}
     48 NoResultCookieCallback::NoResultCookieCallback(base::Thread* run_in_thread)
     49     : CookieCallback(run_in_thread) {}
     50 
     51 }  // namespace net
     52