Эх сурвалжийг харах

Address SonarLint findings in SystemTime like classes

Patrick-Christopher Mattulat 1 жил өмнө
parent
commit
cb94a68f5f

+ 4 - 2
include/ls-std/time/system-time/SystemTime.hpp

@@ -3,7 +3,7 @@
 * Company:         Lynar Studios
 * E-Mail:          webmaster@lynarstudios.com
 * Created:         2023-03-07
-* Changed:         2023-03-31
+* Changed:         2023-05-18
 *
 * */
 
@@ -17,6 +17,7 @@
 #include <ls-std/time/common/DateParameter.hpp>
 #include <ls-std/time/type/DateParameterTypes.hpp>
 #include <memory>
+#include <string>
 
 namespace ls::std::time
 {
@@ -28,12 +29,13 @@ namespace ls::std::time
       SystemTime();
       ~SystemTime() noexcept override;
 
-      [[nodiscard]] bool set(const ls::std::time::DateParameter &_dateParameter);
+      [[nodiscard]] bool set(const ls::std::time::DateParameter &_dateParameter) const;
 
     private:
 
       ::std::shared_ptr<ls::std::time::SystemTimeParameter> parameter{};
 
+      [[nodiscard]] static ::std::string _fetchClassName();
       void _generateParameter();
   };
 }

+ 2 - 2
include/ls-std/time/system-time/SystemTimeParameter.hpp

@@ -3,7 +3,7 @@
 * Company:         Lynar Studios
 * E-Mail:          webmaster@lynarstudios.com
 * Created:         2023-03-15
-* Changed:         2023-03-31
+* Changed:         2023-05-18
 *
 * */
 
@@ -23,7 +23,7 @@ namespace ls::std::time
       SystemTimeParameter();
       ~SystemTimeParameter();
 
-      [[nodiscard]] ::std::shared_ptr<ls::std::time::IClock> getClock();
+      [[nodiscard]] ::std::shared_ptr<ls::std::time::IClock> getClock() const;
       void setClock(const ::std::shared_ptr<ls::std::time::IClock> &_clock);
 
     private:

+ 11 - 5
source/ls-std/time/system-time/SystemTime.cpp

@@ -3,7 +3,7 @@
 * Company:         Lynar Studios
 * E-Mail:          webmaster@lynarstudios.com
 * Created:         2023-03-15
-* Changed:         2023-04-01
+* Changed:         2023-05-18
 *
 * */
 
@@ -33,25 +33,31 @@ using ls::std::time::WindowsClock;
 using ls::std::time::type::UnixTimestamp;
 using std::make_shared;
 using std::shared_ptr;
+using std::string;
 
-SystemTime::SystemTime(const shared_ptr<SystemTimeParameter> &_parameter) : SystemTime()
+SystemTime::SystemTime(const shared_ptr<SystemTimeParameter> &_parameter) : Class(SystemTime::_fetchClassName()), parameter(_parameter)
 {
   NullPointerArgumentEvaluator{_parameter}.evaluate();
-  this->parameter = _parameter;
 }
 
-SystemTime::SystemTime() : Class("SystemTime")
+SystemTime::SystemTime() : Class(SystemTime::_fetchClassName())
 {
   this->_generateParameter();
 }
 
 SystemTime::~SystemTime() noexcept = default;
 
-bool SystemTime::set(const DateParameter &_dateParameter)
+bool SystemTime::set(const DateParameter &_dateParameter) const
 {
   return this->parameter->getClock()->setTime(_dateParameter);
 }
 
+string SystemTime::_fetchClassName()
+{
+  static const string className = "SystemTime";
+  return className;
+}
+
 void SystemTime::_generateParameter()
 {
   this->parameter = make_shared<SystemTimeParameter>();

+ 2 - 2
source/ls-std/time/system-time/SystemTimeParameter.cpp

@@ -3,7 +3,7 @@
 * Company:         Lynar Studios
 * E-Mail:          webmaster@lynarstudios.com
 * Created:         2023-03-15
-* Changed:         2023-03-31
+* Changed:         2023-05-18
 *
 * */
 
@@ -18,7 +18,7 @@ SystemTimeParameter::SystemTimeParameter() = default;
 
 SystemTimeParameter::~SystemTimeParameter() = default;
 
-shared_ptr<IClock> SystemTimeParameter::getClock()
+shared_ptr<IClock> SystemTimeParameter::getClock() const
 {
   return this->clock;
 }

+ 4 - 4
test/cases/time/system-time/SystemTimeTest.cpp

@@ -3,7 +3,7 @@
 * Company:         Lynar Studios
 * E-Mail:          webmaster@lynarstudios.com
 * Created:         2023-03-15
-* Changed:         2023-04-01
+* Changed:         2023-05-18
 *
 * */
 
@@ -58,10 +58,10 @@ namespace
 
   TEST_F(SystemTimeTest, setTime)
   {
-    shared_ptr<SystemTimeParameter> parameter = make_shared<SystemTimeParameter>();
-    shared_ptr<MockClock> posixClock = make_shared<MockClock>();
+    auto parameter = make_shared<SystemTimeParameter>();
+    auto posixClock = make_shared<MockClock>();
     parameter->setClock(posixClock);
-    DateParameter birthday = DateParameter(1990, 10, 26, 11, 25, 00);
+    auto birthday = DateParameter(1990, 10, 26, 11, 25, 00);
 
     EXPECT_CALL(*posixClock, setTime(birthday)).Times(AtLeast(1));
     ON_CALL(*posixClock, setTime(birthday)).WillByDefault(Return(true));