| /* | |
| * Copyright (c) 2021 The WebRTC project authors. All Rights Reserved. | |
| * | |
| * Use of this source code is governed by a BSD-style license | |
| * that can be found in the LICENSE file in the root of the source | |
| * tree. An additional intellectual property rights grant can be found | |
| * in the file PATENTS. All contributing project authors may | |
| * be found in the AUTHORS file in the root of the source tree. | |
| */ | |
| #ifndef NET_DCSCTP_COMMON_HANDOVER_TESTING_H_ | |
| #define NET_DCSCTP_COMMON_HANDOVER_TESTING_H_ | |
| #include "net/dcsctp/public/dcsctp_handover_state.h" | |
| namespace dcsctp { | |
| // This global function is to facilitate testing of the socket handover state | |
| // (`DcSctpSocketHandoverState`) serialization. dcSCTP library users have to | |
| // implement state serialization if it's needed. To test the serialization one | |
| // can set a custom `g_handover_state_transformer_for_test` at startup, link to | |
| // the dcSCTP tests and run the resulting binary. Custom function can serialize | |
| // and deserialize the passed state. All dcSCTP handover tests call | |
| // `g_handover_state_transformer_for_test`. If some part of the state is | |
| // serialized incorrectly or is forgotten, high chance that it will fail the | |
| // tests. | |
| extern void (*g_handover_state_transformer_for_test)( | |
| DcSctpSocketHandoverState*); | |
| } // namespace dcsctp | |
| #endif // NET_DCSCTP_COMMON_HANDOVER_TESTING_H_ |