1 #ifndef _TESTS__EXAMPLES__BORIS__MOCKS__HPP_
2 #define _TESTS__EXAMPLES__BORIS__MOCKS__HPP_
6 #include <gtest/gtest.h>
7 #include <gmock/gmock.h>
9 #include "../examples/boris/physics.hpp"
10 #include "../examples/boris/particle_3d.hpp"
45 template <
typename,
typename>
class ParticleT
48 :
public ElectricField<scalar, time, ParticleT>
51 typedef ElectricField<scalar, time, MockParticle>
parent_type;
54 using parent_type::evaluate;
55 MOCK_METHOD3_T(evaluate,
56 typename parent_type::particle_type::acceleration_type(vector<shared_ptr<typename parent_type::particle_type>>,
65 template <
typename,
typename>
class ParticleT
68 :
public MagneticField<scalar, time, MockParticle>
71 typedef MagneticField<scalar, time, MockParticle>
parent_type;
74 using parent_type::evaluate;
75 MOCK_METHOD3_T(evaluate,
76 typename parent_type::particle_type::acceleration_type(vector<shared_ptr<typename parent_type::particle_type>>,
87 :
public EnergyOperator<scalar, time,
94 typedef EnergyOperator<scalar, time,
101 using parent_type::evaluate;
102 MOCK_METHOD2_T(evaluate, scalar(vector<shared_ptr<typename parent_type::particle_type>>,
106 #endif // _TESTS__EXAMPLES__BORIS__MOCKS__HPP_
ElectricField< scalar, time, MockParticle > parent_type
EnergyOperator< scalar, time, MockParticle, MockEField, MockBField > parent_type
Acceleration3DEncapsulation< scalar, time > MockAccelerationEncap
MagneticField< scalar, time, MockParticle > parent_type
Velocity3DEncapsulation< scalar, time > MockVelocityEncap
Particle3DEncapsulation< scalar, time > MockParticle
Position3DEncapsulation< scalar, time > MockPositionEncap