third_party.pigweed.src/pw_base64/base64_test_c.c
Wyatt Hepler 1e67862f9d pw_build: Build upstream Pigweed code with -Wpedantic
- Enable pedantic warnings for upstream Pigweed builds.
- Use std::array instead of C arrays in pw_protobuf codegen to avoid
  zero-length arrays.
- Cast pointers to void* when using %p in printf-style statements.
- Do not create empty structs in C.
- Do not return void expressions in C.
- Disable pedantic warnings related to features added in newer C++
  standards (designated initializers, empty variadic arguments in
  macros).
- Temporarily disable the nested-anon-types warning until these issues
  are fixed (b/243045403).

Change-Id: I199d4d76949a066f631550848a6ba5dcb23d9b6a
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/107390
Reviewed-by: Scott James Remnant <keybuk@google.com>
Pigweed-Auto-Submit: Wyatt Hepler <hepler@google.com>
Reviewed-by: Keir Mierle <keir@google.com>
Commit-Queue: Wyatt Hepler <hepler@google.com>
2022-08-19 18:49:58 +00:00

39 lines
1.3 KiB
C

// Copyright 2020 The Pigweed Authors
//
// Licensed under the Apache License, Version 2.0 (the "License"); you may not
// use this file except in compliance with the License. You may obtain a copy of
// the License at
//
// https://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
// License for the specific language governing permissions and limitations under
// the License.
// These tests call the pw_base64 module API from C. The return values are
// checked in the main C++ tests.
//
// The encoded / decoded size macros are tested in the main C++ tests.
#include <stddef.h>
#include "pw_base64/base64.h"
void pw_Base64CallEncode(const void* binary_data,
const size_t binary_size_bytes,
char* output) {
pw_Base64Encode(binary_data, binary_size_bytes, output);
}
size_t pw_Base64CallDecode(const char* base64,
size_t base64_size_bytes,
void* output) {
return pw_Base64Decode(base64, base64_size_bytes, output);
}
bool pw_Base64CallIsValid(const char* base64_data, size_t base64_size) {
return pw_Base64IsValid(base64_data, base64_size);
}