- make addFriend a virtual (pure) function of the abstract p3LinkMgr class. Useful for testing.

- updated test notes.
- patched netsetup_test and upnpforward to run correctly.


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@6051 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
csoler 2012-12-27 21:18:16 +00:00
parent b2214fcd46
commit 24a40fc665
4 changed files with 41 additions and 26 deletions

View File

@ -171,7 +171,8 @@ virtual bool getFriendNetStatus(const std::string &id, peerConnectState &state)
virtual void setTunnelConnection(bool b) = 0; // ONLY used by p3peermgr.cc & p3peers.cc MOVE => p3PeerMgr virtual void setTunnelConnection(bool b) = 0; // ONLY used by p3peermgr.cc & p3peers.cc MOVE => p3PeerMgr
virtual bool getTunnelConnection() = 0; // ONLY used by p3peermgr.cc & p3peers.cc MOVE => p3PeerMgr virtual bool getTunnelConnection() = 0; // ONLY used by p3peermgr.cc & p3peers.cc MOVE => p3PeerMgr
/************* DEPRECIATED FUNCTIONS (TO REMOVE) ********/
virtual int addFriend(const std::string &ssl_id, bool isVisible) = 0;
/******* overloaded from pqiConnectCb *************/ /******* overloaded from pqiConnectCb *************/
// THESE MUSTn't BE specfied HERE - as overloaded from pqiConnectCb. // THESE MUSTn't BE specfied HERE - as overloaded from pqiConnectCb.
//virtual void peerStatus(std::string id, const pqiIpAddrSet &addrs, //virtual void peerStatus(std::string id, const pqiIpAddrSet &addrs,
@ -247,7 +248,7 @@ void tick();
void setFriendVisibility(const std::string &id, bool isVisible); void setFriendVisibility(const std::string &id, bool isVisible);
/* add/remove friends */ /* add/remove friends */
int addFriend(const std::string &ssl_id, bool isVisible); virtual int addFriend(const std::string &ssl_id, bool isVisible);
int removeFriend(const std::string &ssl_id); int removeFriend(const std::string &ssl_id);
void printPeerLists(std::ostream &out); void printPeerLists(std::ostream &out);

View File

@ -1,28 +1,39 @@
This file documents the high-level status of the regression cases. This file documents the high-level status of the regression cases.
------------------------------------------------------------------------------------ -----------+----------------------+-------------------------------------------------
DIRECTORY STATUS TODO DIRECTORY | STATUS | TODO
------------------------------------------------------------------------------------ -----------+----------------------+-------------------------------------------------
services : NO TESTS write test framework for services. services | NO TESTS | write test framework for services.
turtle : NO TESTS write tests turtle | NO TESTS | write tests
rsserver : NO TESTS write tests rsserver | NO TESTS | write tests
upnp : NO TESTS write tests. upnp | automatic tests | [--S]
util : limited manual tests complete tests, convert to automatic pgp | automatic tests | [---]
dbase : limited manual tests complete tests, convert to automatic util | automatic tests | [---]
pqi : limited manual tests complete tests, convert to automatic dbase | automatic tests | [--S]
ft : manual tests complete tests, convert to automatic pqi | automatic tests | [C--]
tcponudp : manual tests convert to automatic ft | automatic tests | [-FS] (ftcontrollertest, ftserver2test, fttransfermoduletest)
dht : manual tests ignore - old code - to be replaced soon. tcponudp | automatic tests | [-F-] Takes 15 mins. test_tou,bidir_tou,stacks_tou fail
serialiser : automatic tests complete tests, update tests. dht | NO TESTS | write tests
serialiser | automatic tests | [-F-] (tlvrandom_test)
-----------+----------------------+-------------------------------------------------
Suggestion to automate all tests Legend:
================================ [---] : nothing to do. All work perfectly.
[ S] : needs scripts
* each directory contains multiple executables. [ F ] : some tests fail
- by default, each executable should perform an automatic test [C ] : some tests don't compile
- each executable should return 0 when passed, !=0 otherwise [E ] : some test execution fail
- each directory has a script "perform_auto_tests.sh" that calls all programs in the directory
Commands:
- to launch tests in a directory:
> \rm *.tstout
> make regress
- to use parameters:
* create a script [testname].sh where [testname] is the name of the
executable test. It will be used automatically by the above command.
* in the script, use a single command, or if necessary put all commands
on one line using &&.

View File

@ -3,7 +3,7 @@
//#include "pqi/p3authmgr.h" //#include "pqi/p3authmgr.h"
#include "util/utest.h" #include "util/utest.h"
#include "upnp/upnphandler.h" #include "upnp/upnphandler_linux.h"
#include "dht/opendhtmgr.h" #include "dht/opendhtmgr.h"
#include "tcponudp/tou.h" #include "tcponudp/tou.h"

View File

@ -31,9 +31,11 @@
#include "util/rswin.h" #include "util/rswin.h"
#endif #endif
//#include "util/rsdebug.h" #include "util/utest.h"
#include "upnp/upnphandler_linux.h" #include "upnp/upnphandler_linux.h"
INITTEST() ;
#include <sstream> #include <sstream>
void usage(char *name) void usage(char *name)
@ -104,7 +106,8 @@ int main(int argc, char **argv)
/* give it a chance to work its magic. */ /* give it a chance to work its magic. */
sleep(30); sleep(30);
return 1; FINALREPORT("upnpforward") ;
return TESTRESULT();
} }