LCOV - code coverage report
Current view: top level - unit_tests - mocks.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 17 43 39.5 %
Date: 2024-04-27 16:02:35 Functions: 31 57 54.4 %

          Line data    Source code
       1             : #pragma once
       2             : 
       3             : #include "electronic_throttle.h"
       4             : #include "dc_motor.h"
       5             : #include "table_helper.h"
       6             : #include "pwm_generator_logic.h"
       7             : #include "airmass.h"
       8             : #include "injector_model.h"
       9             : #include "stepper.h"
      10             : #include "tunerstudio_io.h"
      11             : #include "idle_thread.h"
      12             : #include "global_execution_queue.h"
      13             : 
      14             : #include "gmock/gmock.h"
      15             : 
      16             : class MockEtb : public IEtbController {
      17             : public:
      18             :         MockEtb();
      19             :         virtual ~MockEtb();
      20             : 
      21             :         // IEtbController mocks
      22           0 :         MOCK_METHOD(void, reset, (), (override));
      23          10 :         MOCK_METHOD(bool, isEtbMode, (), (override));
      24           0 :         MOCK_METHOD(void, update, (), (override));
      25          19 :         MOCK_METHOD(bool, init, (dc_function_e function, DcMotor* motor, pid_s* pidParameters, const ValueProvider3D* pedalMap, bool initializeThrottles), (override));
      26           4 :         MOCK_METHOD(void, setIdlePosition, (percent_t pos), (override));
      27           2 :         MOCK_METHOD(void, setWastegatePosition, (percent_t pos), (override));
      28           0 :         MOCK_METHOD(void, autoCalibrateTps, (), (override));
      29           0 :         MOCK_METHOD(const pid_state_s&, getPidState, (), (const, override));
      30           0 :         MOCK_METHOD(void, setLuaAdjustment, (percent_t adjustment), (override));
      31             : 
      32             : 
      33             :         // ClosedLoopController mocks
      34           0 :         MOCK_METHOD(expected<percent_t>, getSetpoint, (), (override));
      35           0 :         MOCK_METHOD(expected<percent_t>, observePlant, (), (override));
      36           0 :         MOCK_METHOD(expected<percent_t>, getOpenLoop, (percent_t setpoint), (override));
      37           0 :         MOCK_METHOD(expected<percent_t>, getClosedLoop, (percent_t setpoint, percent_t observation), (override));
      38           0 :         MOCK_METHOD(void, setOutput, (expected<percent_t> outputValue), (override));
      39             : };
      40             : 
      41             : class MockMotor : public DcMotor {
      42             : public:
      43             :         MockMotor();
      44             :         virtual ~MockMotor();
      45             : 
      46           8 :         MOCK_METHOD(bool, set, (float duty), (override));
      47           0 :         MOCK_METHOD(float, get, (), (const, override));
      48           8 :         MOCK_METHOD(void, enable, (), (override));
      49           6 :         MOCK_METHOD(void, disable, (const char *msg), (override));
      50           0 :         MOCK_METHOD(bool, isOpenDirection, (), (const, override));
      51             : };
      52             : 
      53             : class MockVp3d : public ValueProvider3D {
      54             : public:
      55             :         MockVp3d();
      56             :         virtual ~MockVp3d();
      57             : 
      58          72 :         MOCK_METHOD(float, getValue, (float xColumn, float yRow), (const, override));
      59             : };
      60             : 
      61             : class MockPwm : public IPwm {
      62             : public:
      63             :         MockPwm();
      64             :         virtual ~MockPwm();
      65             : 
      66          34 :         MOCK_METHOD(void, setSimplePwmDutyCycle, (float dutyCycle), (override));
      67             : };
      68             : 
      69             : class MockOutputPin : public OutputPin {
      70             : public:
      71             :         MockOutputPin();
      72             :         virtual ~MockOutputPin();
      73             : 
      74          37 :         MOCK_METHOD(void, setValue, (int value, bool isForce), (override));
      75             : };
      76             : 
      77             : class MockExecutor : public TestExecutor {
      78             : public:
      79             :         MockExecutor();
      80             :         virtual ~MockExecutor();
      81             : 
      82           0 :         MOCK_METHOD(void, scheduleByTimestamp, (const char *msg, scheduling_s *scheduling, efitimeus_t timeUs, action_s action), (override));
      83          24 :         MOCK_METHOD(void, scheduleByTimestampNt, (const char *msg, scheduling_s *scheduling, efitick_t timeNt, action_s action), (override));
      84           0 :         MOCK_METHOD(void, scheduleForLater, (const char *msg, scheduling_s *scheduling, int delayUs, action_s action), (override));
      85           3 :         MOCK_METHOD(void, cancel, (scheduling_s*), (override));
      86             : };
      87             : 
      88             : class MockAirmass : public AirmassVeModelBase {
      89             : public:
      90             :         MockAirmass();
      91             :         virtual ~MockAirmass();
      92             : 
      93             :         MockVp3d veTable;
      94             : 
      95         247 :         MOCK_METHOD(AirmassResult, getAirmass, (int rpm, bool postState), (override));
      96             : };
      97             : 
      98             : class MockInjectorModel2 : public IInjectorModel {
      99             : public:
     100             :         MockInjectorModel2();
     101             :         virtual ~MockInjectorModel2();
     102             : 
     103           1 :         MOCK_METHOD(void, prepare, (), (override));
     104          66 :         MOCK_METHOD(floatms_t, getInjectionDuration, (float fuelMassGram), (const, override));
     105           1 :         MOCK_METHOD(float, getFuelMassForDuration, (floatms_t duration), (const, override));
     106           0 :         MOCK_METHOD(floatms_t, getDeadtime, (), (const, override));
     107             : };
     108             : 
     109             : class MockStepperHardware : public StepperHw {
     110             : public:
     111             :         MockStepperHardware();
     112             :         virtual ~MockStepperHardware();
     113             : 
     114           0 :         MOCK_METHOD(bool, step, (bool positive), (override));
     115             : };
     116             : 
     117             : class MockTsChannel : public TsChannelBase {
     118             : public:
     119             :         MockTsChannel();
     120             :         virtual ~MockTsChannel();
     121             : 
     122           1 :         MOCK_METHOD(void, write, (const uint8_t* buffer, size_t size, bool isEndOfPacket), (override));
     123           0 :         MOCK_METHOD(size_t, readTimeout, (uint8_t* buffer, size_t size, int timeout), (override));
     124             : };
     125             : 
     126             : class MockIdleController : public IIdleController {
     127           0 :         MOCK_METHOD(IIdleController::Phase, determinePhase, (int rpm, int targetRpm, SensorResult tps, float vss, float crankingTaperFraction), (override));
     128           0 :         MOCK_METHOD(int, getTargetRpm, (float clt), (override));
     129           0 :         MOCK_METHOD(float, getCrankingOpenLoop, (float clt), (const, override));
     130           0 :         MOCK_METHOD(float, getRunningOpenLoop, (IIdleController::Phase phase, float rpm, float clt, SensorResult tps), (override));
     131           0 :         MOCK_METHOD(float, getOpenLoop, (IIdleController::Phase phase, float rpm, float clt, SensorResult tps, float crankingTaperFraction), (override));
     132           0 :         MOCK_METHOD(float, getClosedLoop, (IIdleController::Phase phase, float tps, int rpm, int target), (override));
     133           0 :         MOCK_METHOD(float, getCrankingTaperFraction, (), (const, override));
     134           0 :         MOCK_METHOD(bool, isIdlingOrTaper, (), (const, override));
     135           0 :         MOCK_METHOD(float, getIdleTimingAdjustment, (int rpm), (override));
     136             : };

Generated by: LCOV version 1.14