Commit graph libervia-backend/src/test/helpers.py
Author SHA1 Message Date
Goffi
f12803fa65 backend, frontend: messages refactoring (huge commit, not finished):
/!\ database schema has been modified, do a backup before updating

    message have been refactored, here are the main changes:

    - languages are now handled
    - all messages have an uid (internal to SàT)
    - message updating is anticipated
    - subject is now first class
    - new naming scheme is used newMessage => messageNew, getHistory => historyGet, sendMessage => messageSend
    - minimal compatibility refactoring in quick_frontend/Primitivus, better refactoring should follow
    - threads handling
    - delayed messages are saved into history
    - info messages may also be saved in history (e.g. to keep track of people joining/leaving a room)
    - duplicate messages should be avoided
    - historyGet return messages in right order, no need to sort again
    - plugins have been updated to follow new features, some of them need to be reworked (e.g. OTR)
    - XEP-0203 (Delayed Delivery) is now fully handled in core, the plugin just handle disco and creation of a delay element
    - /!\ jp and Libervia are currently broken, as some features of Primitivus

    It has been put in one huge commit to avoid breaking messaging between changes.
    This is the main part of message refactoring, other commits will follow to take profit of the new features/behaviour.
2016-05-24 22:11:04 +02:00
Goffi
6bbcbaf522 use of /usr/bin/env instead of /usr/bin/python in shebang 2016-04-17 14:45:26 +02:00
souliane
27f74af7b0 test: update some tests 2016-03-11 17:42:56 +01:00
souliane
8bc634d4c2 test: add helpers methods muteLogging and unmuteLogging 2016-03-11 16:41:44 +01:00
Goffi
348be27934 copyright update 2016-01-03 16:28:30 +01:00
Goffi
ad973c6a2c core: fixed launchAction:
- getClient now raise a NotFound error if client is not available
    - errors ConnectedProfileError, NotConnectedProfileError anf ProfileKeyUnknownError renamed for consistency (all profile error must prefixed by Profile)
    - launchAction fixed, the case where client is not available is handled
    - kept actions are actuall1y removed on launchAction
2015-11-18 11:06:24 +01:00
souliane
f34a5b8aaf test: fix the tests 2015-04-17 19:06:39 +02:00
Goffi
fbec02d396 2015 copyright dates update 2015-03-30 10:26:26 +02:00
Goffi
6760c927d3 merged branch frontends_multi_profiles 2015-03-18 10:52:28 +01:00
Goffi
cdfb2c4dc6 core (memory): updateEntityData now accept a "silent" argument to avoid sending signal to frontends when updating an attribute with "signalOnUpdate" flag. 2015-02-09 21:39:51 +01:00
souliane
27cb7fac73 plugin XEP-0313: update (still draft) 2015-01-09 10:51:12 +01:00
souliane
4a4760b80b plugin XEP-0313: first draft:
- you can already test it with d-feet but it will bug unless you apply the changeset 60dfa2f5d61f which is waiting in the branch "frontends_multi_profiles" (actually just one "assert" to comment in plugin_xep_0085.py)
2014-12-19 14:43:42 +01:00
souliane
852106becd test: refactoring:
- rename internal init methods to reinit
    - rename getSentMessage to getSentMessageXml
    - rename getSentMessageRaw to getSentMessage
2014-12-19 11:36:00 +01:00
souliane
d262aff438 test: add tests for plugin_misc_groupblog 2014-12-15 14:05:28 +01:00
souliane
9fbddc69e9 test: fixes FakeSAT for plugin XEP-0033 2014-09-17 10:02:24 +02:00
souliane
dd597a2ead core, memory, bridge, plugin misc_register_account: move registerNewAccount to a new plugin:
- the bridge method has been removed, now a plugin takes care of it with XMLUI callback system
    - TODO: xmpp.RegisteringAuthenticator still needs to be fixed
2014-05-16 00:58:20 +02:00
souliane
561cc93a04 test: fix the tests after the changes of logging system 2014-05-14 13:26:23 +02:00
souliane
f0fa9b699d plugin XEP_0033: fixes the server part and the tests 2014-04-11 11:02:42 +02:00
Goffi
d89044dbbc tests: fixed log init in helpers (log init must be done before any call to a log method) 2014-04-23 12:01:59 +02:00
Goffi
edf5db192f test: configuration/use of new logging system 2014-04-21 20:04:52 +02:00
Goffi
95678d7967 core, plugin XEP-0115: discovery refactoring:
- hashing algorithm of XEP-0115 has been including in core
    - our own hash is still calculated by XEP-0115 and can be regenerated with XEP_0115.recalculateHash
    - old discovery methods have been removed. Now the following methods are used:
        - hasFeature: tell if a feature is available for an entity
        - getDiscoInfos: self explaining
        - getDiscoItems: self explaining
        - findServiceEntities: return all available items of an entity which given (category, type)
        - findFeaturesSet: search for a set of features in entity + entity's items
      all these methods are asynchronous, and manage cache automatically
    - XEP-0115 manage in a better way hashes, and now use a trigger for presence instead of monkey patch
    - new FeatureNotFound exception, when we want to do something which is not available
    - refactored client initialisation sequence, removed client.initialized Deferred
    - added constant APP_URL
    - test_plugin_xep_0033.py has been temporarly deactivated, the time to adapt it
    - lot of cleaning
2014-03-28 18:07:22 +01:00
Goffi
a6897c76e0 core, plugins: host.getClient now raise an exception instead of returning None when no profile is found, plugins have been adapted consequently and a bit cleaned 2014-03-28 18:07:02 +01:00
souliane
7a9fb7f505 plugin XEP-0277: fix pubsub entry parsing using lxml instead of feed.atom 2014-02-23 13:54:41 +01:00
souliane
7c29b8c566 plugin room_game, radiocol: RoomGame.send returns a Deferred. 2014-02-18 17:49:33 +01:00
souliane
7ea4dca1b0 memory: bug fix to not register twice frontends parameters + added some tests for param update 2014-02-07 17:10:24 +01:00
souliane
cf8f9330b4 test: improvements for the helpers classes:
- simplification for retrieving the sent messages
- an expected bridge call which is already set can no more be
  overwritten with new arguments for the same method name. The
  new arguments are stored in a FIFO list instead, and each call
  of the method also registers the arguments for the next call.
2014-01-15 23:22:07 +01:00
Goffi
2ca6efd8cc dates update 2014-02-04 18:32:49 +01:00
souliane
ddcfdd99ac test: make FakeClient profile dependent and add some tools to test MUC 2014-01-10 18:15:02 +01:00
souliane
db832c1f6b test: define the constants JIDs and profiles as lists 2014-01-09 11:18:33 +01:00
souliane
6be767ae3b test: use the SatTestCase methods instead of builtin "assert" in tests for memory, plugin xep-0033 2014-01-07 09:27:53 +01:00
souliane
96b1d58eb7 test: FakeMemory inherits from Memory + more helpers basic support + cleaning 2014-01-05 13:04:54 +01:00
souliane
6007937962 test: added some tests for Memory 2014-01-04 17:16:40 +01:00
souliane
8307896c4f test: added support of basic memory stuff in helpers.py 2014-01-04 15:46:30 +01:00
souliane
a21e3c2783 test: store the constants in constants.py + better PEP8 compliance 2014-01-04 15:45:08 +01:00
Goffi
5a00dc9503 core: i18n refactoring:
- _() is no more installed in __builtin__
    - instead, there is a new sat.core.i18n module
    - added D_() method for deferred translation
    - languageSwitch method allow to dynamically change translation language
    - import gettext is tested against ImportError, and dummy methods are used when not available (mainly useful for Libervia)
2013-12-29 17:06:01 +01:00
Goffi
5eee7729c3 test: better ignore_blank in helpers's assertEqualXML 2013-11-12 16:56:34 +01:00
Goffi
6b9e9b7a79 tests: plugin text syntaxes sanitisation tests 2013-11-12 14:16:11 +01:00
Goffi
96695b6d59 tests: added XML comparaison method to helpers 2013-11-12 14:16:11 +01:00
Goffi
8624c3c547 core, bridge: extra parameter is saved in history:
- added extra data in getHistory return value
    - extra data is saved in database
    /!\ WARNING: DATABASE SCHEMA HAS CHANGED /!\
to update sqlite database: ALTER TABLE history ADD COLUMN extra BLOB;
2013-11-07 15:29:39 +01:00
Goffi
1eee4a779c tests: helpers improvments:
- FakeParent renamed FakeClient
    - added FakeRoster class, and an instance of it in FakeClient (FakeClient.roster)
    - b2s function to convert boolean value to strings used in bridge
    - some fake methods (FakeClient.send, FakeSat.delContact) to avoid exceptions
2013-09-29 16:29:36 +02:00
Goffi
0f22c904bc tests: Use of FailTest for DifferentArgsException instead of Exception, so the test fail instead of raising en error. 2013-09-26 17:32:24 +02:00
Goffi
1cd98e8dea fixed licences in docstrings (they are now in comments) 2013-03-08 00:36:22 +01:00
Emmanuel Gil Peyrot
5b54be83bd Fix pep8 support in src/test. 2013-01-18 17:55:35 +01:00
Emmanuel Gil Peyrot
27b3592e16 Remove trailing whitespaces. 2013-01-18 17:55:34 +01:00
Goffi
def79e44cd dates update 2013-01-07 23:30:13 +01:00
Goffi
fef2b1a620 core, bridge, quick_frontend: MUC private messages history management:
- history now store message type
    - sqlite3 storage: fixed resource management in getHistory
    - bridge: added message type in getHistory return value
    - quick_chats: (ugly) hacks to manage private history filtering/nickname printing
2012-10-17 00:35:48 +02:00
Goffi
8f622601c6 core: presence status + last resource refactored and kept in entitiesCache in memory.py, profile cache is purged on disconnection 2012-08-15 15:50:46 +02:00
Goffi
c5a930b627 Licence modification: the full project is now under AGPL v3+ instead of GPL v3+ 2012-08-01 22:53:02 +02:00
Goffi
21dbb4473a copyleft date update 2012-03-06 09:07:24 +01:00
Goffi
f1966d9692 backend, bridge: asynchronous history
quick_frontend: use of asynchronous history
2011-11-08 01:08:11 +01:00