Refactoring of RefreshManager (introduced interface IRefreshManager).

This commit is contained in:
Janik Schlemminger
2014-03-09 16:56:17 -07:00
parent 43c5d6a4b3
commit 3cda347e37
19 changed files with 287 additions and 86 deletions

View File

@@ -7,18 +7,20 @@
#include <gtest/gtest.h>
#include <gmock/gmock.h>
#include "core/RefreshManager.h"
#include "core/refresh/RefreshManager.h"
using ::testing::_;
using ::testing::AtLeast;
using ::testing::Expectation;
constexpr unsigned int numberOfBanks = 8;
namespace controller {
class MockInternalScheduler: public InternalScheduler
class MockInternalScheduler: public IInternalScheduler
{
public:
MOCK_METHOD1(scheduleCommand, void (ScheduledCommand command));
MOCK_METHOD1(scheduleCommand, void (const ScheduledCommand& command));
};
TEST(RefreshManager, RefreshIsScheduledAfterStartup)
@@ -26,7 +28,8 @@ TEST(RefreshManager, RefreshIsScheduledAfterStartup)
Configuration config;
MockInternalScheduler internalScheduler;
auto init = ScheduledCommand(Command::Refresh, config.Timings.tREF);
tlm::tlm_generic_payload trans;
auto init = ScheduledCommand(trans, Command::Refresh, config.Timings.tREF);
EXPECT_CALL(internalScheduler, scheduleCommand(init));
@@ -43,7 +46,7 @@ TEST(RefreshManager, FinishedRefreshTriggersNewRefresh)
//schedule first refresh in constructor
RefreshManager manager(config, internalScheduler);
//schedule second refresh in callback (end_refresh)
manager.refreshFinished(config.Timings.tREF + config.Timings.tREFA);
manager.cb_refreshFinished(config.Timings.tREF + config.Timings.tREFA);
}
} /* namespace controller */