15e8c39c7d328ff0534d040c3219bd6519443128etturney//
25e8c39c7d328ff0534d040c3219bd6519443128etturney//  Copyright (C) 2016 Google, Inc.
35e8c39c7d328ff0534d040c3219bd6519443128etturney//
45e8c39c7d328ff0534d040c3219bd6519443128etturney//  Licensed under the Apache License, Version 2.0 (the "License");
55e8c39c7d328ff0534d040c3219bd6519443128etturney//  you may not use this file except in compliance with the License.
65e8c39c7d328ff0534d040c3219bd6519443128etturney//  You may obtain a copy of the License at:
75e8c39c7d328ff0534d040c3219bd6519443128etturney//
85e8c39c7d328ff0534d040c3219bd6519443128etturney//  http://www.apache.org/licenses/LICENSE-2.0
95e8c39c7d328ff0534d040c3219bd6519443128etturney//
105e8c39c7d328ff0534d040c3219bd6519443128etturney//  Unless required by applicable law or agreed to in writing, software
115e8c39c7d328ff0534d040c3219bd6519443128etturney//  distributed under the License is distributed on an "AS IS" BASIS,
125e8c39c7d328ff0534d040c3219bd6519443128etturney//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
135e8c39c7d328ff0534d040c3219bd6519443128etturney//  See the License for the specific language governing permissions and
145e8c39c7d328ff0534d040c3219bd6519443128etturney//  limitations under the License.
155e8c39c7d328ff0534d040c3219bd6519443128etturney//
165e8c39c7d328ff0534d040c3219bd6519443128etturney
175e8c39c7d328ff0534d040c3219bd6519443128etturney#pragma once
185e8c39c7d328ff0534d040c3219bd6519443128etturney
195e8c39c7d328ff0534d040c3219bd6519443128etturney#include <rapidjson/document.h>
205e8c39c7d328ff0534d040c3219bd6519443128etturney#include <tuple>
215e8c39c7d328ff0534d040c3219bd6519443128etturney
225e8c39c7d328ff0534d040c3219bd6519443128etturneyclass TestFacade {
235e8c39c7d328ff0534d040c3219bd6519443128etturney public:
245e8c39c7d328ff0534d040c3219bd6519443128etturney  TestFacade();
255e8c39c7d328ff0534d040c3219bd6519443128etturney  std::tuple<bool, int> TestBoolTrueReturn();
265e8c39c7d328ff0534d040c3219bd6519443128etturney  std::tuple<bool, int> TestBoolFalseReturn();
275e8c39c7d328ff0534d040c3219bd6519443128etturney  std::tuple<bool, int> TestErrorCodeFail();
285e8c39c7d328ff0534d040c3219bd6519443128etturney  std::tuple<int, int> TestNullReturn();
295e8c39c7d328ff0534d040c3219bd6519443128etturney  std::tuple<std::string, int> TestStringEmptyReturn();
305e8c39c7d328ff0534d040c3219bd6519443128etturney  std::tuple<std::string, int> TestStringMaxReturn(
315e8c39c7d328ff0534d040c3219bd6519443128etturney    std::string max_string);
325e8c39c7d328ff0534d040c3219bd6519443128etturney  std::tuple<bool, int> TestSpecificParamNaming(
335e8c39c7d328ff0534d040c3219bd6519443128etturney    std::string string_test, int int_test);
345e8c39c7d328ff0534d040c3219bd6519443128etturney
355e8c39c7d328ff0534d040c3219bd6519443128etturney};
365e8c39c7d328ff0534d040c3219bd6519443128etturney
37