diff options
author | aqua <aqua@iserlohn-fortress.net> | 2024-08-07 17:36:57 +0300 |
---|---|---|
committer | aqua <aqua@iserlohn-fortress.net> | 2024-08-07 17:36:57 +0300 |
commit | dcd2f898af9d4efcb22417c19fa1b3abc8c548c5 (patch) | |
tree | 3ef0eaa4b9595bf90c733e8f196edd1c3f72c472 /tools/interface_generator/templates/interface_mock.hpp.mako | |
parent | Added interface_generator (diff) | |
download | kernel-dcd2f898af9d4efcb22417c19fa1b3abc8c548c5.tar.xz |
Added bazel rule for interface_generator
Diffstat (limited to 'tools/interface_generator/templates/interface_mock.hpp.mako')
-rw-r--r-- | tools/interface_generator/templates/interface_mock.hpp.mako | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/tools/interface_generator/templates/interface_mock.hpp.mako b/tools/interface_generator/templates/interface_mock.hpp.mako new file mode 100644 index 0000000..e33d50e --- /dev/null +++ b/tools/interface_generator/templates/interface_mock.hpp.mako @@ -0,0 +1,26 @@ +<%include file="__header.mako" /> +#ifndef ${ name.upper() }_MOCK +#define ${ name.upper() }_MOCK + +extern "C" { +#include "${ name }.h" +} + +#include <gtest/gtest.h> +#include <gmock/gmock.h> + +class I${name}_mock +{ +public: + I${name}_mock(); + ~I${name}_mock(); + + /* Functions */ +% for fn in functions: + MOCK_METHOD(${fn['return']}, ${fn['name']}, (${ ", ".join(fn['arguments']) })); +% endfor +}; + +using ${name}_mock = ::testing::NiceMock<I${name}_mock>; + +#endif /* ${ name.upper() }_MOCK */ |