diff --git a/src/CopyrighFixer/CopyrighFixer/owner.cpp b/src/CopyrighFixer/CopyrighFixer/owner.cpp
index fe1e153..b19980b 100644
--- a/src/CopyrighFixer/CopyrighFixer/owner.cpp
+++ b/src/CopyrighFixer/CopyrighFixer/owner.cpp
@@ -28,13 +28,12 @@ int Owner::getTimePoint() const {
     return _timePoint;
 }
 
-void Owner::fromjson(const QJsonObject &objJs) {
+void Owner::fromJson(const QJsonObject &objJs) {
     _name = objJs.value("name").toString();
-
     _timePoint = objJs.value("timePoint").toInt();
 }
 
-void Owner::toJson(QJsonObject &objJs) const {
+const QJsonObject &Owner::toJson(QJsonObject &objJs) const {
 
     objJs["name"] = _name;
     objJs["timePoint"] = _timePoint;
@@ -50,4 +49,9 @@ bool Owner::isValid() const {
     return _name.size() && _timePoint > 0 && _timePoint <= time(0);
 }
 
+bool operator== (const Owner &o1, const Owner &o2) {
+    return (o1._name == o2._name &&
+            o1._timePoint == o2._timePoint);
+}
+
 };
diff --git a/src/CopyrighFixer/CopyrighFixer/owner.h b/src/CopyrighFixer/CopyrighFixer/owner.h
index 45f19cf..49af6c9 100644
--- a/src/CopyrighFixer/CopyrighFixer/owner.h
+++ b/src/CopyrighFixer/CopyrighFixer/owner.h
@@ -49,7 +49,7 @@ public:
      * @brief fromjson Reads data from json file.
      * @param objJs It's object json that contains information about the owner.
      */
-    void fromjson(const QJsonObject &objJs);
+    void fromJson(const QJsonObject &objJs);
 
     /**
      * @brief toJson This method that converts object Owner to json object.
@@ -64,6 +64,14 @@ public:
      */
     bool isValid() const;
 
+    /**
+     * @brief operator == Comparison operator overloading method
+     * @param o1 Left value.
+     * @param o2 Right value.
+     * @return Returns true if they are equal.
+     */
+    friend bool operator== (const Owner &o1, const Owner &o2);
+
 private:
     QString _name = "";
     int _timePoint = 1;
diff --git a/src/CopyrighFixer/CopyrighFixer/sign.cpp b/src/CopyrighFixer/CopyrighFixer/sign.cpp
index bbb10b3..ceb24fd 100644
--- a/src/CopyrighFixer/CopyrighFixer/sign.cpp
+++ b/src/CopyrighFixer/CopyrighFixer/sign.cpp
@@ -76,8 +76,8 @@ bool Signature::fromJson(const QString &pathToFile) {
         Owner ownObj;
         QJsonArray ownLst(jsObj.value("ownersList").toArray());
         for (auto itemLst = ownLst.cbegin(); itemLst != ownLst.cend(); ++itemLst) {
-            ownObj.fromjson(itemLst->toObject());
-            _ownersMap.insert(ownObj.value("timePoint").toInt(), ownObj);
+            ownObj.fromJson(itemLst->toObject());
+            _ownersMap.insert(ownObj.getTimePoint(), ownObj);
         }
 
         _licenseTitle = jsObj.value("license").toString();
@@ -91,7 +91,7 @@ bool Signature::fromJson(const QString &pathToFile) {
 
 }
 
-bool Signature::toJson(const QString &pathToFile) const {
+bool Signature::toJson(QString &pathToFile) const {
 
     QFile file(pathToFile);
     if (file.exists()) {
@@ -142,4 +142,10 @@ bool Signature::isValid() const {
     return true;
 }
 
+bool operator== (const Signature &c1, const Signature &c2) {
+    return (c1._customMessage == c2._customMessage &&
+            c1._licenseTitle == c2._licenseTitle &&
+            c1._ownersMap == c2._ownersMap);
+}
+
 }
diff --git a/src/CopyrighFixer/CopyrighFixer/sign.h b/src/CopyrighFixer/CopyrighFixer/sign.h
index 92ef0a2..4f6e188 100644
--- a/src/CopyrighFixer/CopyrighFixer/sign.h
+++ b/src/CopyrighFixer/CopyrighFixer/sign.h
@@ -76,6 +76,14 @@ public:
      */
     bool isValid() const;
 
+    /**
+     * @brief operator == Comparison operator overloading method
+     * @param c1 Left value.
+     * @param c2 Right value.
+     * @return Returns true if they are equal.
+     */
+    friend bool operator== (const Signature &c1, const Signature &c2);
+
 private:
     QMap<int, Owner> _ownersMap;
     QString _licenseTitle = "";
diff --git a/tests/units/signtest.cpp b/tests/units/signtest.cpp
index c2230ae..22917e3 100644
--- a/tests/units/signtest.cpp
+++ b/tests/units/signtest.cpp
@@ -5,6 +5,7 @@
 //# of this license document, but changing it is not allowed.
 //#
 
+#include <time.h>
 #include "CopyrighFixer/sign.h"
 #include "signtest.h"
 
@@ -20,19 +21,36 @@ void SignTest::test() {
     testJsonObj();
 }
 
+CopyrighFixer::Signature SignTest::generateRandomSign(QString& filename) const {
+
+    int unixTime = time(0);
+
+    CopyrighFixer::Owner ownerObj;
+    ownerObj.setName("QuasarApp");
+    ownerObj.setTimePoint(unixTime);
+
+    QMap<int, CopyrighFixer::Owner> OwnerMap;
+    OwnerMap.insert(ownerObj.getTimePoint(), ownerObj);
+
+    CopyrighFixer::Signature sign_toJson;
+    sign_toJson.setLicenseTitle("Copyright (C) 2020-2021 QuasarApp.");
+    sign_toJson.setMessage("Distributed under the lgplv3 software license, see the accompany.");
+    sign_toJson.setMapOwners(OwnerMap);
+    sign_toJson.toJson(filename);
+
+    return sign_toJson;
+}
+
 void SignTest::testJsonObj() {
     QString filename = "signature.json";
 
-    CopyrighFixer::Sign baseSign = generateRandomSign();
-    
+    CopyrighFixer::Signature baseSign = generateRandomSign(filename);
     QVERIFY(baseSign.toJson(filename));
-    
     QVERIFY(baseSign.isValid());
     
-    CopyrighFixer::Sign signFromFile;
+    CopyrighFixer::Signature signFromFile;
     QVERIFY(signFromFile.fromJson(filename));
-    
+
     QVERIFY(signFromFile == baseSign);
 
-
 }
diff --git a/tests/units/signtest.h b/tests/units/signtest.h
index 9251c31..c11d6cf 100644
--- a/tests/units/signtest.h
+++ b/tests/units/signtest.h
@@ -9,6 +9,7 @@
 #define SIGNTEST_H
 #include "test.h"
 #include "testutils.h"
+#include "CopyrighFixer/sign.h"
 
 #include <QTest>
 
@@ -18,6 +19,7 @@ public:
     ~SignTest();
 
     void test();
+    CopyrighFixer::Signature generateRandomSign(QString& filename) const;
     void testJsonObj();
 };