1
    2
    3
    4
    5
    6
    7
    8
    9
   10
   11
   12
   13
   14
   15
   16
   17
   18
   19
   20
   21
   22
   23
   24
   25
   26
   27
   28
   29
   30
   31
   32
   33
   34
   35
   36
   37
   38
   39
   40
   41
   42
   43
   44
   45
   46
   47
   48
   49
   50
   51
   52
   53
   54
   55
   56
   57
   58
   59
   60
   61
   62
   63
   64
   65
   66
   67
   68
   69
   70
   71
   72
   73
   74
   75
   76
   77
   78
   79
   80
   81
   82
   83
   84
   85
   86
   87
   88
   89
   90
   91
   92
   93
   94
   95
   96
   97
   98
   99
  100
  101
  102
  103
  104
  105
  106
  107
  108
  109
  110
  111
  112
  113
  114
  115
  116
  117
  118
  119
  120
  121
  122
  123
  124
  125
  126
  127
  128
  129
  130
  131
  132
  133
  134
  135
  136
  137
  138
  139
  140
  141
  142
  143
  144
  145
  146
  147
  148
  149
  150
  151
  152
  153
  154
  155
  156
  157
  158
  159
  160
  161
  162
  163
  164
  165
  166
  167
  168
  169
  170
  171
  172
  173
  174
  175
  176
  177
  178
  179
  180
  181
  182
  183
  184
  185
  186
  187
  188
  189
  190
  191
  192
  193
  194
  195
  196
  197
  198
  199
  200
  201
  202
  203
  204
  205
  206
  207
  208
  209
  210
  211
  212
  213
  214
  215
  216
  217
  218
  219
  220

content / web_test / browser / mojo_optional_numerics_unittest.h [blame]

// Copyright 2023 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef CONTENT_WEB_TEST_BROWSER_MOJO_OPTIONAL_NUMERICS_UNITTEST_H_
#define CONTENT_WEB_TEST_BROWSER_MOJO_OPTIONAL_NUMERICS_UNITTEST_H_

#include "content/web_test/common/mojo_optional_numerics_unittest.mojom.h"

namespace content::optional_numerics_unittest {

class Params : public mojom::Params {
 public:
  static void Bind(mojo::PendingReceiver<mojom::Params> receiver);

  void SendNullBool(std::optional<bool> optional_bool,
                    SendNullBoolCallback callback) override;
  void SendNullUint8(std::optional<uint8_t> optional_uint8,
                     SendNullUint8Callback callback) override;
  void SendNullInt8(std::optional<int8_t> optional_int8,
                    SendNullInt8Callback callback) override;
  void SendNullUint16(std::optional<uint16_t> optional_uint16,
                      SendNullUint16Callback callback) override;
  void SendNullInt16(std::optional<int16_t> optional_int16,
                     SendNullInt16Callback callback) override;
  void SendNullUint32(std::optional<uint32_t> optional_uint32,
                      SendNullUint32Callback callback) override;
  void SendNullInt32(std::optional<int32_t> optional_int32,
                     SendNullInt32Callback callback) override;
  void SendNullUint64(std::optional<uint64_t> optional_uint64,
                      SendNullUint64Callback callback) override;
  void SendNullInt64(std::optional<int64_t> optional_int64,
                     SendNullInt64Callback callback) override;
  void SendNullFloat(std::optional<float> optional_float,
                     SendNullFloatCallback callback) override;
  void SendNullDouble(std::optional<double> optional_double,
                      SendNullDoubleCallback callback) override;
  void SendNullEnum(std::optional<mojom::RegularEnum> optional_enum,
                    SendNullEnumCallback callback) override;

  void SendNullBools(const std::vector<std::optional<bool>>& optional_bools,
                     SendNullBoolsCallback callback) override;
  void SendNullInt16s(
      const std::vector<std::optional<int16_t>>& optional_int16s,
      SendNullInt16sCallback callback) override;
  void SendNullUint32s(
      const std::vector<std::optional<uint32_t>>& optional_uint32s,
      SendNullUint32sCallback callback) override;
  void SendNullDoubles(
      const std::vector<std::optional<double>>& optional_doubles,
      SendNullDoublesCallback callback) override;
  void SendNullEnums(
      const std::vector<std::optional<mojom::RegularEnum>>& optional_enums,
      SendNullEnumsCallback callback) override;

  void SendNullBoolMap(
      const base::flat_map<int32_t, std::optional<bool>>& values,
      SendNullBoolMapCallback callback) override;
  void SendNullDoubleMap(
      const base::flat_map<int32_t, std::optional<double>>& values,
      SendNullDoubleMapCallback callback) override;
  void SendNullEnumMap(
      const base::flat_map<int32_t, std::optional<mojom::RegularEnum>>& values,
      SendNullEnumMapCallback callback) override;

  void SendOptionalBool(std::optional<bool> optional_bool,
                        SendOptionalBoolCallback callback) override;
  void SendOptionalUint8(std::optional<uint8_t> optional_uint8,
                         SendOptionalUint8Callback callback) override;
  void SendOptionalInt8(std::optional<int8_t> optional_int8,
                        SendOptionalInt8Callback callback) override;
  void SendOptionalUint16(std::optional<uint16_t> optional_uint16,
                          SendOptionalUint16Callback callback) override;
  void SendOptionalInt16(std::optional<int16_t> optional_int16,
                         SendOptionalInt16Callback callback) override;
  void SendOptionalUint32(std::optional<uint32_t> optional_uint32,
                          SendOptionalUint32Callback callback) override;
  void SendOptionalInt32(std::optional<int32_t> optional_int32,
                         SendOptionalInt32Callback callback) override;
  void SendOptionalUint64(std::optional<uint64_t> optional_uint64,
                          SendOptionalUint64Callback callback) override;
  void SendOptionalInt64(std::optional<int64_t> optional_int64,
                         SendOptionalInt64Callback callback) override;
  void SendOptionalFloat(std::optional<float> optional_float,
                         SendOptionalFloatCallback callback) override;
  void SendOptionalDouble(std::optional<double> optional_double,
                          SendOptionalDoubleCallback callback) override;
  void SendOptionalEnum(std::optional<mojom::RegularEnum> optional_enum,
                        SendOptionalEnumCallback callback) override;

  void SendOptionalBools(const std::vector<std::optional<bool>>& optional_bools,
                         SendOptionalBoolsCallback callback) override;
  void SendOptionalInt16s(
      const std::vector<std::optional<int16_t>>& optional_int16s,
      SendOptionalInt16sCallback callback) override;
  void SendOptionalUint32s(
      const std::vector<std::optional<uint32_t>>& optional_uint32s,
      SendOptionalUint32sCallback callback) override;
  void SendOptionalDoubles(
      const std::vector<std::optional<double>>& optional_doubles,
      SendOptionalDoublesCallback callback) override;
  void SendOptionalEnums(
      const std::vector<std::optional<mojom::RegularEnum>>& optional_enums,
      SendOptionalEnumsCallback callback) override;

  void SendOptionalBoolMap(
      const base::flat_map<int32_t, std::optional<bool>>& values,
      SendOptionalBoolMapCallback callback) override;
  void SendOptionalDoubleMap(
      const base::flat_map<int32_t, std::optional<double>>& values,
      SendOptionalDoubleMapCallback callback) override;
  void SendOptionalEnumMap(
      const base::flat_map<int32_t, std::optional<mojom::RegularEnum>>& values,
      SendOptionalEnumMapCallback callback) override;

  void SendNullStructWithOptionalNumerics(
      mojom::OptionalNumericsStructPtr s,
      SendNullStructWithOptionalNumericsCallback callback) override;
  void SendStructWithNullOptionalNumerics(
      mojom::OptionalNumericsStructPtr s,
      SendStructWithNullOptionalNumericsCallback callback) override;
  void SendStructWithOptionalNumerics(
      mojom::OptionalNumericsStructPtr s,
      SendStructWithOptionalNumericsCallback callback) override;
};

class ResponseParams : public mojom::ResponseParams {
 public:
  static void Bind(mojo::PendingReceiver<mojom::ResponseParams> receiver);

  void GetNullBool(GetNullBoolCallback callback) override;

  void GetNullUint8(GetNullUint8Callback callback) override;
  void GetNullInt8(GetNullInt8Callback callback) override;
  void GetNullUint16(GetNullUint16Callback callback) override;
  void GetNullInt16(GetNullInt16Callback callback) override;
  void GetNullUint32(GetNullUint32Callback callback) override;
  void GetNullInt32(GetNullInt32Callback callback) override;
  void GetNullUint64(GetNullUint64Callback callback) override;
  void GetNullInt64(GetNullInt64Callback callback) override;
  void GetNullFloat(GetNullFloatCallback callback) override;
  void GetNullDouble(GetNullDoubleCallback callback) override;
  void GetNullEnum(GetNullEnumCallback callback) override;

  void GetNullBools(GetNullBoolsCallback callback) override;
  void GetNullInt16s(GetNullInt16sCallback callback) override;
  void GetNullUint32s(GetNullUint32sCallback callback) override;
  void GetNullDoubles(GetNullDoublesCallback callback) override;
  void GetNullEnums(GetNullEnumsCallback callback) override;

  void GetNullBoolMap(GetNullBoolMapCallback callback) override;
  void GetNullInt32Map(GetNullInt32MapCallback callback) override;
  void GetNullEnumMap(GetNullEnumMapCallback callback) override;

  void GetOptionalBool(bool value, GetOptionalBoolCallback callback) override;
  void GetOptionalUint8(uint8_t value,
                        GetOptionalUint8Callback callback) override;
  void GetOptionalInt8(int8_t value, GetOptionalInt8Callback callback) override;
  void GetOptionalUint16(uint16_t value,
                         GetOptionalUint16Callback callback) override;
  void GetOptionalInt16(int16_t value,
                        GetOptionalInt16Callback callback) override;
  void GetOptionalUint32(uint32_t value,
                         GetOptionalUint32Callback callback) override;
  void GetOptionalInt32(int32_t value,
                        GetOptionalInt32Callback callback) override;
  void GetOptionalUint64(uint64_t value,
                         GetOptionalUint64Callback callback) override;
  void GetOptionalInt64(int64_t value,
                        GetOptionalInt64Callback callback) override;
  void GetOptionalFloat(float value,
                        GetOptionalFloatCallback callback) override;
  void GetOptionalDouble(double value,
                         GetOptionalDoubleCallback callback) override;
  void GetOptionalEnum(mojom::RegularEnum value,
                       GetOptionalEnumCallback callback) override;

  void GetOptionalBools(bool value, GetOptionalBoolsCallback callback) override;
  void GetOptionalInt16s(int16_t value,
                         GetOptionalInt16sCallback callback) override;
  void GetOptionalUint32s(uint32_t value,
                          GetOptionalUint32sCallback callback) override;
  void GetOptionalDoubles(double value,
                          GetOptionalDoublesCallback callback) override;
  void GetOptionalEnums(mojom::RegularEnum value,
                        GetOptionalEnumsCallback callback) override;

  void GetOptionalBoolMap(int16_t key,
                          bool value,
                          GetOptionalBoolMapCallback callback) override;
  void GetOptionalFloatMap(int16_t key,
                           float value,
                           GetOptionalFloatMapCallback callback) override;
  void GetOptionalEnumMap(int16_t key,
                          mojom::RegularEnum value,
                          GetOptionalEnumMapCallback callback) override;

  void GetNullStructWithOptionalNumerics(
      GetNullStructWithOptionalNumericsCallback callback) override;
  void GetStructWithNullOptionalNumerics(
      GetStructWithNullOptionalNumericsCallback callback) override;
  void GetStructWithOptionalNumerics(
      bool bool_value,
      uint8_t uint8_value,
      int8_t int8_value,
      uint16_t uint16_value,
      int16_t int16_value,
      uint32_t uint32_value,
      int32_t int32_value,
      uint64_t uint64_value,
      int64_t int64_value,
      float float_value,
      double double_value,
      mojom::RegularEnum enum_value,
      GetStructWithOptionalNumericsCallback callback) override;
};

}  // namespace content::optional_numerics_unittest

#endif  // CONTENT_WEB_TEST_BROWSER_MOJO_OPTIONAL_NUMERICS_UNITTEST_H_