| {{/* |
| // Copyright 2018 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| */}} |
| |
| {{- define "Filename:WireTestBase" -}} |
| fidl/{{ .LibraryDots }}/cpp/wire_test_base.h |
| {{- end }} |
| |
| |
| {{- define "File:WireTestBase" -}} |
| {{- UseWire -}} |
| {{- SetTransport "Channel" -}} |
| // WARNING: This file is machine generated by fidlgen. |
| {{ range $experiment := .Experiments }} |
| // fidl_experiment = {{ $experiment }} |
| {{- end }} |
| |
| #pragma once |
| |
| #include <{{ .Library | Filename "WireHeader" }}> |
| |
| #pragma clang diagnostic push |
| #pragma clang diagnostic ignored "-Wshadow" |
| |
| {{ range (call .ProtocolsForTransport "Channel") }} |
| {{ EnsureNamespace "fidl::testing" }} |
| |
| template<> |
| class {{ .TestBase.Name }} : public {{ .WireServer }} { |
| public: |
| virtual ~{{ .TestBase.Name }}() = default; |
| virtual void NotImplemented_(const std::string& name, ::fidl::CompleterBase& completer) = 0; |
| |
| {{- range .Methods }} |
| {{- if .HasRequest }} |
| virtual void {{ .Name }}( |
| {{- if .HasRequestPayload }} |
| {{ .RequestPayload }}* request, |
| {{- end }} |
| {{ .WireCompleterArg }}& completer) override { |
| NotImplemented_("{{ .Name }}", completer); } |
| {{- end }} |
| {{- end }} |
| |
| {{- if .HandlesOneWayUnknownInteractions }} |
| virtual void handle_unknown_method({{ .UnknownMethodMetadata }} metadata, UnknownMethodCompleter::Sync& completer) override { |
| NotImplemented_("handle_unknown_method", completer); |
| } |
| {{- end }} |
| }; |
| |
| template<> |
| class {{ .WireSyncEventHandlerTestBase.Name }} : public {{ .WireSyncEventHandler }} { |
| public: |
| virtual ~{{ .WireSyncEventHandlerTestBase.Name }}() = default; |
| virtual void NotImplemented_(const std::string& name) = 0; |
| |
| {{- range .Events }} |
| void {{ .Name }}({{ if .HasResponsePayload }}{{ .WireEvent }}* event{{ end }}) override { |
| NotImplemented_("{{ .Name }}"); |
| } |
| {{- end }} |
| |
| {{- if .HandlesOneWayUnknownInteractions }} |
| virtual void handle_unknown_event({{ .UnknownEventMetadata }} metadata) override { |
| NotImplemented_("handle_unknown_event"); |
| } |
| {{- end }} |
| }; |
| {{ end -}} |
| |
| #pragma clang diagnostic pop |
| |
| {{ UnsetTransport -}} |
| {{ EndOfFile }} |
| {{ end }} |