small refactor 39/137939/2
authorMariusz Wachowicz <m.wachowicz@partner.samsung.com>
Mon, 10 Jul 2017 10:09:04 +0000 (12:09 +0200)
committerMariusz Wachowicz <m.wachowicz@partner.samsung.com>
Mon, 10 Jul 2017 10:13:08 +0000 (10:13 +0000)
replicated function in UIActivity removed
vector in SwitchManaged changed to stack for better understanding

Change-Id: If5a12e511279de5a81101031ec3b93b97070d458

src/SwitchManager.cpp
src/SwitchManager.hpp
src/UIActivity.cpp
src/UIActivity.hpp
tests/ActivityProcessingTests.cpp
tests/ConfigurationTests.hpp

index 08afff6..031d52d 100644 (file)
@@ -89,7 +89,7 @@ void SwitchManager::setActivityFactory(const std::shared_ptr<ActivityFactory> &f
 void SwitchManager::changeActivity(const std::shared_ptr<ActivityChangeRequest> &request)
 {
        ASSERT(request, "request is not initialized");
-       if (activities.empty() || (activities.back() && activities.back()->getType() != request->getActivityType())) {
+       if (activities.empty() || (activities.top() && activities.top()->getType() != request->getActivityType())) {
                auto activity = activityFactory->createActivity(request->getActivityType());
                if (!activity) {
                        ERROR("Activity stack size: %d, unhandled activity type name: %s", activities.size(), request->getActivityType().c_str());
@@ -101,18 +101,18 @@ void SwitchManager::changeActivity(const std::shared_ptr<ActivityChangeRequest>
                auto uiActivity = dynamic_cast<UIActivity *>(activity.get());
 
                if (uiActivity)
-                       uiActivity->setUIElement(request->getUIElement());
+                       uiActivity->update(request->getUIElement());
 
-               activities.push_back(activity);
+               activities.push(activity);
        }
 
        bool completed = false;
        if (activities.empty())
                ERROR("No activity provided.");
        else
-               completed = activities.back()->process();
+               completed = activities.top()->process();
 
        if (completed)
-               activities.pop_back();
+               activities.pop();
        //TODO: check if activity change request observers are properly detached from activity object removed from activity stack
 }
index ee1dd88..57004a6 100644 (file)
@@ -11,6 +11,7 @@
 #include "ActivityChangeRequestObserver.hpp"
 
 #include <memory>
+#include <stack>
 
 class SwitchManager : public SwitchConfigurationItemObserver, public SwitchObserver, public std::enable_shared_from_this<SwitchManager>, public ActivityChangeRequestObserver
 {
@@ -44,7 +45,7 @@ protected:
        std::shared_ptr<Configuration> configuration;
        std::shared_ptr<ActivityFactory> activityFactory;
 
-       std::vector<std::shared_ptr<Activity>> activities;
+       std::stack<std::shared_ptr<Activity>> activities;
 
 private:
        void changeActivity(const std::shared_ptr<ActivityChangeRequest> &request);
index ae9c680..8013464 100644 (file)
@@ -24,8 +24,3 @@ void UIActivity::update(const std::shared_ptr<UIElement> &elem)
 {
        uiElement = elem;
 }
-
-void UIActivity::setUIElement(const std::shared_ptr<UIElement> &uiElement)
-{
-       this->uiElement = uiElement;
-}
index e4ae107..9a7dc04 100644 (file)
@@ -17,8 +17,6 @@ public:
 
        void update(const std::shared_ptr<UIElement> &elem) override;
 
-       void setUIElement(const std::shared_ptr<UIElement> &uiElement);
-
 private:
        std::shared_ptr<UIElement> uiElement;
 };
index 6445c28..419c2dc 100644 (file)
@@ -19,7 +19,7 @@ TEST_F(ActivityProcessingFixture, FactoryWorks)
 TEST_F(ActivityProcessingFixture, ActivityNotFullyProcessed)
 {
        initialEnvironmentExpect();
-       auto activity = switchManager_->getActivities().back();
+       auto activity = switchManager_->getActivities().top();
        ASSERT_NE(activity, nullptr);
        EXPECT_EQ(activity->getType(), "TWO_STEP_PROCESS_ACTIVITY");
 }
@@ -31,7 +31,7 @@ TEST_F(ActivityProcessingFixture, ActivityNotFullyProcessed)
 TEST_F(ActivityProcessingFixture, ActivityReady)
 {
        initialEnvironmentExpect();
-       auto activity = switchManager_->getActivities().back();
+       auto activity = switchManager_->getActivities().top();
        ASSERT_NE(activity, nullptr);
        EXPECT_EQ(activity->getType(), "TWO_STEP_PROCESS_ACTIVITY");
 
@@ -47,25 +47,25 @@ TEST_F(ActivityProcessingFixture, ActivityReady)
 TEST_F(ActivityProcessingFixture, ActivityAbandoned)
 {
        initialEnvironmentExpect();
-       auto activity = switchManager_->getActivities().back();
+       auto activity = switchManager_->getActivities().top();
        ASSERT_NE(activity, nullptr);
        EXPECT_EQ(activity->getType(), "TWO_STEP_PROCESS_ACTIVITY");
 
        simulateKeyDown(keyMappedToThreeStepProcessActivity_);
        EXPECT_EQ(switchManager_->getActivities().size(), 2u);
-       activity = switchManager_->getActivities().back();
+       activity = switchManager_->getActivities().top();
        ASSERT_NE(activity, nullptr);
        EXPECT_EQ(activity->getType(), "THREE_STEP_PROCESS_ACTIVITY");
 
        simulateKeyDown(keyMappedToThreeStepProcessActivity_);
        EXPECT_EQ(switchManager_->getActivities().size(), 2u);
-       activity = switchManager_->getActivities().back();
+       activity = switchManager_->getActivities().top();
        ASSERT_NE(activity, nullptr);
        EXPECT_EQ(activity->getType(), "THREE_STEP_PROCESS_ACTIVITY");
 
        simulateKeyDown(keyMappedToThreeStepProcessActivity_);
        EXPECT_EQ(switchManager_->getActivities().size(), 1u);
-       activity = switchManager_->getActivities().back();
+       activity = switchManager_->getActivities().top();
        ASSERT_NE(activity, nullptr);
        EXPECT_EQ(activity->getType(), "TWO_STEP_PROCESS_ACTIVITY");
 }
index f623621..ef0739a 100644 (file)
@@ -93,7 +93,7 @@ public:
                ++updatedWithSwitch;
        }
 
-       std::vector<std::shared_ptr<Activity>> getActivities()
+       std::stack<std::shared_ptr<Activity>> getActivities()
        {
                return activities;
        }