summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-09-13[#778] Handling case of failed key uploadTulio Casagrande
If we get any problem with the upload of the user's public key, we are deleting the key pair from the local database and denying login. That way, a new login will have a chance to regenerate the key and upload it properly.
2016-09-13[#778] Isolated and fixed keymanager testsTulio Casagrande
We covered a lot of missing cases on the keymanager tests. We also isolated these tests, that caused some other tests to break, so we fixed them.
2016-09-13[#778] Renaming get_key to be consistent with keymanagerTulio Casagrande
2016-09-12[#698] Add default user to the integration test clientTulio Casagrande
The functional tests depend on a pre-existing default user. As it uses the integration test client, we added this default user to the client setup.
2016-09-12multi_user_client now accounts for the login processBruno Wagner
The login resource was being totally mocked out of the integration tests, I adapted the test client to touch the actual login code and fixed the multi_user_client to use the same checker the single user one was using. With that change we now have tests that cover the change of authenticating with bonafide
2016-09-12Implements bonafide to replace leap.authBruno Wagner
This still uses the SRPSession object to hold the credentials so we don't have to adapt the rest of the user agent code
2016-09-12Added a small sleep before each login checkBruno Wagner
To ensure we don't overload the server with requests, we'll sleep a little bit before each request to check if the inbox is already loaded
2016-09-09Adapted the concurrent_logins.rb to measure the loading pageBruno Wagner
It now requests using the same session that it logs in until the user arrives at the inbox (denoted by the compose-trigger showing up on the html in this case)
2016-09-08concurrent_logins script now measure HTTP request timeBruno Wagner
2016-09-08Logging out a logged out user was breaking the UABruno Wagner
In case a user was being logged out and there's a soledad invalid auth token error, there might be an inconsistent state where the user session doesn't exist when this second logout is tried. This was breaking the login for that user until the next UA restart, I adapted the code to make logging out an user idempotent to prevent this corner case
2016-09-08Fixed test to correctly mock the mail_fetcherBruno Wagner
2016-09-08[#778][Test] Don't send an existing public keyTulio Casagrande
I added a new test to check that an existing public key is not being sent to leap on every login
2016-09-08Update mock library to 2.0.0Tulio Casagrande
We were using an old version of the python's mock library, which lacks new features such as assert_called() and assert_not_called() that I found handy to test #778
2016-09-08Only send public key if a new key was generatedBruno Wagner
We were always sending the public key to nicknym, even if it was already there. The send_key method purpose is to update the public key in case a new pair is created and shouldn't be done at every login
2016-09-05Adapted register after latest changesBruno Wagner
Register was trying to use LeapConfig and breaking when trying to register users
2016-08-31Reading interstitial on class initBruno Wagner
The interstitial was being read at every login request, that was a blocking read on the main loop for every user. That file was also being opened and not closed at every request, that would aggravate the 'too many open files' problem
2016-08-31Improves help function.Denis Costa
2016-08-31Adds request total time to load test script.Denis Costa
2016-08-30Adds total time of request to script. #771Denis Costa
2016-08-30[#765] Move combined certificates to the leap folderTulio Casagrande
Since we are creating the combined certificates at the beginning of the UA and using it for multiple users, it makes more sense to create it in the leap folder instead of on a temporary file This bundle will be updated on every UA start
2016-08-30Finish login load test script. #771Denis Costa
2016-08-30#761 added script to loadtest parallel attachment uploadNavaL
2016-08-29Fixes script to run login several timesDenis Costa
2016-08-29[#765] Move combined_ca_bundle to UA initializationTulio Casagrande
With this change we don't have to create the combined_ca_bundle for every user at every login. To support this change, we started migrating away from the LeapCertificate class that was making the LeapProvider setup more brittle
2016-08-29Adds script to automate load test.Thais Siqueira
2016-08-26Normalized the output of the patchBruno Wagner
We had different outputs for inlineCallbacks and traditional callbacks and the output was kinda confusing. We normalized the output to <time> <type>: function <name> (<file>:<line>) in thread <thread_id> We also changed the earlier type from deferred to callback (because that is what's being measured) so now we have two possible types: callback and inlineCallbacks
2016-08-26Corrected the patch to measure returnValue on inlineCallbacksThais Siqueira
The inlineCallback returnValue has a different logic using exceptions, the way we measured before, we were getting the time of the whole deferred chain (including all the callbacks) instead of exclusively the timing of the last yield up to the returnValue call.
2016-08-26Revert "fixing twisted patch"Thais Siqueira
This reverts commit 480e7d3bd48f2a7c23a76843750daaa03f2b12b3.
2016-08-26Revert "showing the full path of inlineCallback method being called"Thais Siqueira
This reverts commit 8ef8acf8e853fe097c379eed4d65e67f409531d1.
2016-08-26[Denis/Tulio][#769] Fix activist mode initializationTulio Casagrande
2016-08-26showing the full path of inlineCallback method being calledNavaL
2016-08-26fixing twisted patchNavaL
2016-08-25Adapted the twisted patch to measure inlineCallbacks #768Bruno Wagner
We did two changes to the twisted patch to be able to measure the inlineCallbacks correctly: - Filtered the traditional callbacks timing so that it doesn't print inlineCallback timings - Added a measurement for the g.send() method inside the inlineCallback, to measure the actual execution time of the call on the main thread, between the inlineCallback yields
2016-08-25[Denis/Tulio][#761] Change attachment file size to 5MBDenis Costa
2016-08-25if we use a bigger attachment, we should check for a bigger sizeChristoph Kluenter
2016-08-25test if bigger attachments also workChristoph Kluenter
See #761
2016-08-24[#762] Remove smtp-service download from session creationTulio Casagrande
SMTP json is a blocking HTTP request that was taking ~1 sec of the session creation. We moved it to the UA initialization
2016-08-24Merge branch '5mb_attachment'Christoph Kluenter
2016-08-23Changed the concurrent login script to start at the user loadtest1Bruno Wagner
2016-08-23Fixed leap home default home to use expand_pathBruno Wagner
In some cases, the default home was not expanding the user part of the path and was causing errors, now we make sure the path is expanded when setting the default value
2016-08-23Changes soledad json download orderBruno Wagner
Soledad json must only be downloaded after we fetch the api provider certificate, we can't make the request for it before having this cert
2016-08-23Fix misspelled attachment nameDenis Costa
See: #761
2016-08-23Added the script that pre-creates users for testsThais Siqueira
2016-08-23Removed stray line from the concurrent_login scriptThais Siqueira
2016-08-23Adds the script that login users concurrently.Thais Siqueira
2016-08-23accept uploads to up to 5MBChristoph Kluenter
2016-08-23fix pep8Christoph Kluenter
2016-08-22Added clock support functionThais Siqueira
Now we can clock how long a piece of code takes to execute without being constrained by whole method like we were with the decorator
2016-08-22Adds a patch to measure function running in twistedThais Siqueira
The README explains how to apply the patch so you can get information about long running methods (longer than 100ms) on the main thread
2016-08-19Started deferring leap session creation #759Bruno Wagner
Started adapting get_leap_session to deferreds Soledad and keymanager setup calls will now happen in deferreds and leap session creation itself is a deferred with callbacks This is a start in breaking the big blocking calls we were doing on the main thread, this was done without changing code inside the leap libraries yet so things can be further optimized This breaks the ~4 seconds get_leap_session piece into smaller 1 seconds one, that can be further optimized and deferred to even smaller calls There are requests calls happening on the main thread that should get this number even further down Also moved some pieces from bitmask libraries to our bootstrap, because they are not bitmask libraries anymore and that was causing confusion