Select Git revision
callbackshandler.cpp
-
Sébastien Blin authored
And be prepared to sha256 Change-Id: Ib2338034ba9e362f9b129d09728929a3fd85c703
Sébastien Blin authoredAnd be prepared to sha256 Change-Id: Ib2338034ba9e362f9b129d09728929a3fd85c703
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
instantmessagingtest.cpp 3.41 KiB
/*
* Copyright (C) 2004, 2005, 2006, 2009, 2008, 2009, 2010 Savoir-Faire Linux Inc.
* Author: Emmanuel Milou <emmanuel.milou@savoirfairelinux.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
* Additional permission under GNU GPL version 3 section 7:
*
* If you modify this program, or any covered work, by linking or
* combining it with the OpenSSL project's OpenSSL library (or a
* modified version of that library), containing parts covered by the
* terms of the OpenSSL or SSLeay licenses, Savoir-Faire Linux Inc.
* grants you additional permission to convey the resulting work.
* Corresponding Source for a non-source form of such a combination
* shall include the source code for the parts of OpenSSL used as well
* as that of the covered work.
*/
#include <stdio.h>
#include <iostream>
#include <fstream>
#include "instantmessagingtest.h"
using std::cout;
using std::endl;
void InstantMessagingTest::setUp() {
_im = new sfl::InstantMessaging ();
_im->init ();
}
void InstantMessagingTest::testSaveSingleMessage () {
_debug ("-------------------- InstantMessagingTest::testSaveSingleMessage --------------------\n");
std::string input, tmp;
std::string callID = "testfile1.txt";
// Open a file stream and try to write in it
CPPUNIT_ASSERT (_im->saveMessage ("Bonjour, c'est un test d'archivage de message", "Manu", callID, std::ios::out) == true);
// Read it to check it has been successfully written
std::ifstream testfile (callID.c_str (), std::ios::in);
CPPUNIT_ASSERT (testfile.is_open () == true);
while (!testfile.eof ()) {
std::getline (testfile, tmp);
input.append (tmp);
}
testfile.close ();
CPPUNIT_ASSERT (input == "[Manu] Bonjour, c'est un test d'archivage de message");
}
void InstantMessagingTest::testSaveMultipleMessage () {
_debug ("-------------------- InstantMessagingTest::testSaveMultipleMessage --------------------\n");
std::string input, tmp;
std::string callID = "testfile2.txt";
// Open a file stream and try to write in it
CPPUNIT_ASSERT (_im->saveMessage ("Bonjour, c'est un test d'archivage de message", "Manu", callID, std::ios::out) == true);
CPPUNIT_ASSERT (_im->saveMessage ("Cool", "Alex", callID, std::ios::out || std::ios::app) == true);
// Read it to check it has been successfully written
std::ifstream testfile (callID.c_str (), std::ios::in);
CPPUNIT_ASSERT (testfile.is_open () == true);
while (!testfile.eof ()) {
std::getline (testfile, tmp);
input.append (tmp);
}
testfile.close ();
printf ("%s\n", input.c_str());
CPPUNIT_ASSERT (input == "[Manu] Bonjour, c'est un test d'archivage de message[Alex] Cool");
}
void InstantMessagingTest::tearDown() {
delete _im;
_im = 0;
}