136124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org//
236124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org// Copyright (c) 2012 The ANGLE Project Authors. All rights reserved.
336124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org// Use of this source code is governed by a BSD-style license that can be
436124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org// found in the LICENSE file.
536124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org//
636124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org
736124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org#ifndef PREPROCESSOR_TESTS_MOCK_DIRECTIVE_HANDLER_H_
836124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org#define PREPROCESSOR_TESTS_MOCK_DIRECTIVE_HANDLER_H_
936124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org
1036124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org#include "gmock/gmock.h"
1157a5493e874c86cacb2619a0a933128edea63902shannon.woods@transgaming.com#include "DirectiveHandlerBase.h"
1236124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org
1336124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.orgclass MockDirectiveHandler : public pp::DirectiveHandler
1436124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org{
1536124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org  public:
1636124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org    MOCK_METHOD2(handleError,
1736124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org        void(const pp::SourceLocation& loc, const std::string& msg));
1836124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org
1936124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org    MOCK_METHOD3(handlePragma,
2036124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org        void(const pp::SourceLocation& loc,
2136124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org             const std::string& name,
2236124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org             const std::string& value));
237c884540ad7607a772b13b2ca7bc8f6b21574946alokp@chromium.org
247c884540ad7607a772b13b2ca7bc8f6b21574946alokp@chromium.org    MOCK_METHOD3(handleExtension,
257c884540ad7607a772b13b2ca7bc8f6b21574946alokp@chromium.org        void(const pp::SourceLocation& loc,
267c884540ad7607a772b13b2ca7bc8f6b21574946alokp@chromium.org             const std::string& name,
277c884540ad7607a772b13b2ca7bc8f6b21574946alokp@chromium.org             const std::string& behavior));
287c884540ad7607a772b13b2ca7bc8f6b21574946alokp@chromium.org
297c884540ad7607a772b13b2ca7bc8f6b21574946alokp@chromium.org    MOCK_METHOD2(handleVersion,
307c884540ad7607a772b13b2ca7bc8f6b21574946alokp@chromium.org        void(const pp::SourceLocation& loc, int version));
3136124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org};
3236124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org
3336124de8ce9855c1cfdfb6529b47822e12123274alokp@chromium.org#endif  // PREPROCESSOR_TESTS_MOCK_DIRECTIVE_HANDLER_H_
34