< SoK | 2018/StatusReport Contents 1 Write test and improve protocols supports for the Kopete 2 Current Status of the Project 3 Implementation 4 What I learned during the SoK 5 Work Reports 6 Contact Write test and improve protocols supports for the Kopete Project title: Write test and improve protocols support for the Kopete Mentor: Vijay Krishnavanshi ([email protected]) A Brief Description: Kopete is the application for the instant messaging that has a modular architecture and supports many messaging services like Skype, Jabber, ICQ, MeanWhile, Bonjour, QQ, etc with lots of useful plugins like history, highlights, bookmarks, translator, text effects, contact notes and many others which are very useful for chatting. Project Goals: Write unit test for remaining part of Kopete's libraries i.e. libkopete, protocol, plugins, etc. Work on the improving the protocols support Removing the bugs. Result: Passed Current Status of the Project I had only able to worked on the unit testings part of the project. I had written the four unit test for the Kopete which are open on the phabricator and need to be the review (their link is given below) and merge into the Kopete git repository. The unit tests follow: QQCryptTest: The unit test is testing the class Crypt which is encrypting and decrypting the message in the QQ Protocol. JabberProtocolTest: The unit test is testing the JabberProtocol class which is the main class for Jabber protocol library. KopetePluginTest: The Unit test is testing the base class of kopete plugins in the libkopete library. KopetePictureTest: The Unit test is testing the class Picture in the libkopete library of the Kopete. Implementation The main hug task during this season of KDE is to build the kopete application on my PC I will take near about fifteen days to build the kopete after that I starts with the reading of previous unit tests in the Kopete in the libkopete library. I read the test kopeteblacklistertest.cpp and learn QtTesting from it. After that I go through the codebase of the QQ protocol, my first patch is on a unit test of the crypt class of QQ protocol, In this class Encrypting the data and Decrypting data, I test it by using the data-driven test. The patch of the test is here After completing my first patch I move toward Jabber Protocol, read its codebase. I Started writing the unit test of class JabberProtocol, I tested the changing of the online status from JabberProtocol to Kopete OnlineStatus, it reverses and creating the new account on the Jabber protocol, the patch of this test, here. During the writing JabberProtocolTest, also I was exploring the libkopete library of the kopete, The third unit test I wrote from this library of class Kopete::Plugins, this was the base class for the kopete plugins, here I test the many functions like showCloseWindowMessage, shouldExitOnclose, aboutToUnload, pluginId, displayName, addAddressBookField, AddressBookFieldMode, etc. The patch is here. And the next unit test I wrote for the class Kopete::Picture, this class is all about the picture handling in the kopete, the patch is here What I learned during the SoK It was a nice experience for me. I learned a lot of things. Some are following: XMPP protocols(Jabber Protocol) C++ Git CMAKE Object-Oriented Programming Qt QtTest The most important thing is how to work in the open source community. I always am thankful for the KDE community and Especially my mentor Vijay Krishnavashi for his support in the project. Work Reports Link to profile https://phabricator.kde.org/p/himanshuvishwakarma Link to the proposal: here Link to the Weekly Status Reports(progress): here Link to patches: QQCryptTest, JabberProtocolTest, KopetePluginTest, KopetePictureTest Link to the blog: here Link to the Kopete repository: here To see my work and run the tests are follows: Clone the kopete repository by $ git clone https://anongit.kde.org/kopete.git Build the Kopete on your system. Download the diff from the phabricator for the test QQCryptTest https://phabricator.kde.org/D10160 JabberProtocolTest https://phabricator.kde.org/D10556 KopetePluginTest https://phabricator.kde.org/D10612 KopetePictureTest https://phabricator.kde.org/D10730 Run the command to the terminal. $ git apply /path..to..the..diff/Kopete..Test.diff Move to the build directory $ cd /path..to..kopete..build..directory..of..kopete/build $ make && make test Contact Email: [email protected] IRC: himvish997/himvish997_ Kopete IRC Channel: #kopete Kopete mailing list: [email protected] Retrieved from "https://community.kde.org/index.php?title=SoK/2018/StatusReport/HimanshuVishwakarma&oldid=79884" This page was last edited on 28 March 2018, at 10:40. Content is available under Creative Commons License SA 4.0 unless otherwise noted.