Commit graph

1293 commits

Author SHA1 Message Date
James Allen
37f009c3cd Remove blank test causing race condition 2018-04-17 10:00:06 +01:00
James Allen
d6605610f5 Fix HistoryV2Manager front end tests 2018-04-16 16:31:49 +01:00
James Allen
d1b68ddf7c Fix RestoreManager unit tests 2018-04-16 16:27:24 +01:00
James Allen
9e525702c1 Merge branch 'master' into ja-restore-files 2018-04-16 16:14:31 +01:00
Hayden Faulds
7755a7cc1f add overleaf to projections for project structure updates 2018-04-13 13:45:07 +01:00
Hayden Faulds
3006d018d9 send projectHistoryId with project structure updates 2018-04-13 13:45:03 +01:00
Hayden Faulds
e5f3c472e3 return projectHistoryId in DocumentController.getDoc 2018-04-13 13:45:02 +01:00
Alberto Fernández Capel
1b8f4bff2f Ensure dump folder exists before running LinkedFiles tests
The folder is also created in another test, so it will work the second
time the tests are executed, but it fails the first time.
2018-04-12 10:29:24 -05:00
Hayden Faulds
50686090c8 push doc pathname logic into DocController 2018-04-12 16:16:44 +01:00
Brian Gough
882b555433 create new file on replace 2018-04-09 12:05:08 +01:00
Brian Gough
baec4eb195 move uploads outside the lock 2018-04-09 12:05:07 +01:00
James Allen
2c0bd94fa7 Use mkdirp when restoring a file if the folder doesn't exist 2018-04-06 15:20:51 +01:00
James Allen
1e8439a2c6 Fix restore of docs from old deleted docs 2018-04-06 10:30:13 +01:00
James Allen
b4fa47d664 Add unit tests for RestoreManager 2018-04-06 10:30:13 +01:00
James Allen
0a1c543841 Hook up front end to restore documents 2018-04-06 10:30:13 +01:00
James Allen
3832850be6 Implement restore end point with acceptance tests 2018-04-06 10:30:13 +01:00
James Allen
beee86f1ce First pass at restore end point 2018-04-06 10:30:13 +01:00
Alasdair Smith
e9de83789a Rename tests to match their purpose better 2018-03-23 12:37:47 +00:00
Alasdair Smith
4ad0416f24 Extract cmEditor tests to RT module 2018-03-23 12:37:47 +00:00
Alasdair Smith
74099440f3 Generate webpack entry points including modules 2018-03-23 12:37:16 +00:00
Hayden Faulds
57de597e60 404 when resyncing deleting projects 2018-03-16 15:26:19 +00:00
Hayden Faulds
d22d8324af disable history resync when project-history is not enabled 2018-03-15 16:57:39 +00:00
James Allen
371caa41ca Merge pull request #378 from sharelatex/hof-history-resync
resync project history endpoint
2018-03-13 13:33:08 +00:00
Shane Kilkelly
2ceb7daa97 Merge pull request #361 from sharelatex/ta-record-new-project-event
Record New Project Event
2018-03-12 13:11:20 +00:00
Shane Kilkelly
9dc8600588 Add a unit test for the analytics events sent from project-creation 2018-03-12 10:50:15 +00:00
Hayden Faulds
75f5fbcdbf refactor DocumentUpdaterHandler 2018-03-09 11:15:18 +00:00
Hayden Faulds
5b2e7d981a resyncProject -> resyncProjectHistory 2018-03-09 11:11:06 +00:00
Hayden Faulds
50fdfec6e8 add unit tests for project history resync 2018-03-09 11:11:06 +00:00
Alasdair Smith
9ed4f121b1 Append fixture el to actual DOM 2018-03-07 09:51:54 +00:00
Tim Alby
4b291fab2a Record new project event 2018-03-06 18:13:24 -05:00
Shane Kilkelly
84fff5e9b7 Merge pull request #379 from sharelatex/sk-geolocate-user-sessions
Geolocate user, and pass country-code to editing-sessions
2018-03-06 11:33:50 +00:00
Shane Kilkelly
feee992b43 Reverse an un-necessary re-arrangement of tests 2018-03-06 10:13:39 +00:00
Alasdair Smith
6d9a7e90f5 Add simple fixtures support 2018-03-06 10:11:04 +00:00
Shane Kilkelly
b3f47ea44a Remove obsolete segmentation payload in editing-session request 2018-03-05 11:15:41 +00:00
Shane Kilkelly
f625b22ec5 Move the geolocation out of login, to the editingSession action 2018-03-05 10:46:51 +00:00
James Allen
a99f55891f Use external proxy 2018-03-05 10:37:53 +00:00
James Allen
cae09028ff Fix tests 2018-03-05 10:37:53 +00:00
James Allen
01d84bd983 Handle error cases when downloading URL 2018-03-05 10:37:00 +00:00
James Allen
85f25b810c First pass at URL based linked files 2018-03-05 10:37:00 +00:00
Brian Gough
3bbd49c7eb Merge pull request #377 from sharelatex/bg-add-project-structure-version-number
add project structure version number
2018-03-05 08:41:14 +00:00
Shane Kilkelly
1629f68d5e Geolocate user on login, and pass country-code to editing-sessions 2018-03-02 12:02:45 +00:00
Alasdair Smith
68d85f03c2 Clean up frontend stub 2018-03-02 10:41:58 +00:00
Brian Gough
af494dedf2 check project structure version in unit tests 2018-03-01 12:32:09 +00:00
Brian Gough
e6020e2e9b update acceptance tests to include project structure version
this tests the version sent to the docupdater
2018-03-01 12:32:09 +00:00
Brian Gough
389f2d64ef prepare tests for versioning 2018-03-01 12:32:09 +00:00
Brian Gough
792c0135a0 update acceptance tests helper to include version 2018-03-01 12:32:09 +00:00
Brian Gough
f7e70e8228 add acceptance tests 2018-03-01 12:32:09 +00:00
Brian Gough
67d784a74a increment project version on every structure change 2018-03-01 12:32:08 +00:00
James Allen
becb76d69b Don't allow backslashes in file names 2018-03-01 11:42:44 +00:00
Alasdair Smith
1f450085e9 Fix mocha complaining about returning Promise-like object 2018-02-27 15:57:40 +00:00
Alasdair Smith
f11f208772 Revert "Revert "Upgrade to mocha 5.0.1"" 2018-02-27 15:03:21 +00:00
Alasdair Smith
315587605c Revert "Upgrade to mocha 5.0.1" 2018-02-27 12:25:42 +00:00
Alasdair Smith
2a2eb23c78 Fix bug where tests from new ES code being included in requirejs wrapped code 2018-02-26 16:56:04 +00:00
Alasdair Smith
19cec9451d Switch to using scoped variable instead of variables on context
Changes to mocha mean that a new context is passed to each describe block
instead of it persisting between them.

This means that this test cannot be parallelised, however this was the case
beforehand (subsequent tests are dependent on earlier tests).
2018-02-26 15:31:41 +00:00
Alasdair Smith
3217a3fbf0 Fix mocha complaining about returning Promise-like object 2018-02-26 15:31:34 +00:00
Alasdair Smith
46ac74a160 Fix incorrectly scoped variable 2018-02-26 14:26:04 +00:00
Alasdair Smith
2247e4d465 Fix scoping issues where stubs were defined in wrong describe blocks 2018-02-26 14:21:14 +00:00
Alasdair Smith
abf53625fe Fix scope not being applied through callback 2018-02-26 14:02:08 +00:00
Alasdair Smith
136fd84810 Fix module stub in incorrect scope 2018-02-26 13:52:58 +00:00
Alasdair Smith
be6fa346d5 Fix bug where incorrect variable was used 2018-02-26 13:37:17 +00:00
Alasdair Smith
ec7237b7e8 Fix callback stub being defined in wrong scope 2018-02-26 12:33:48 +00:00
Alasdair Smith
2529ed756a Fix callback being defined in wrong describe block 2018-02-26 12:27:54 +00:00
Alasdair Smith
fd8c61985f Fix bug where stubs were attached to undefined variables 2018-02-26 12:19:56 +00:00
Alasdair Smith
5d017beac5 Fix stub incorrectly overriding top level beforeEach 2018-02-26 11:46:06 +00:00
Alasdair Smith
cfc9dbdbb3 Fix bad scoping of user agent 2018-02-26 11:34:08 +00:00
Alasdair Smith
34b53726d4 Fix error not being defined in wrong describe block 2018-02-26 11:19:52 +00:00
Alasdair Smith
192eb8b44f Fix error not being defined in wrong describe block 2018-02-26 11:16:04 +00:00
Alasdair Smith
d79e226a20 Fix callback defined in wrong describe block scope 2018-02-26 10:58:20 +00:00
Alasdair Smith
29410b7aab Fix applyAsync from not evaluating expression in tests
See https://github.com/angular/angular.js/issues/10788#issuecomment-70376834
which explains that applyAsync is scheduled to evaluate in the next tick, but
this is managed by $browser. Therefore we can manually flush the trigger
2018-02-22 13:28:16 +00:00
Alasdair Smith
791c126df6 Fix test to match implementation 2018-02-22 12:09:51 +00:00
Alasdair Smith
eae8b5a592 Merge pull request #330 from sharelatex/as-karma-tests
Karma tests
2018-02-22 11:06:56 +00:00
Hayden Faulds
adc90b68e7 use gauge not inc 2018-02-21 13:25:25 +00:00
Alasdair Smith
00f1450b94 Rename test files to match source directory and name 2018-02-20 14:01:50 +00:00
Alasdair Smith
c7957b8ad4 Convert existing frontend tests to run in karma 2018-02-20 14:01:50 +00:00
Alasdair Smith
3faa0556e8 Add test for cmEditor directive 2018-02-20 14:01:50 +00:00
Alasdair Smith
89c9475d29 Configure karma to load angular, requirejs and test/source files
Use test-main.js file to configure requirejs so that AMD loader can be
used
2018-02-20 14:01:02 +00:00
Alasdair Smith
0b77e97df2 Added angular mocks for testing and stub out globals 2018-02-20 14:01:02 +00:00
Hayden Faulds
d924dbd1ed improve metrics 2018-02-20 13:58:09 +00:00
Hayden Faulds
e50c3837bc add extra metrics around locking 2018-02-19 12:15:02 +00:00
Hayden Faulds
23c7ab0529 add locking tests 2018-02-16 16:57:12 +00:00
Hayden Faulds
dd582d1b2e type-check ProjectGetter.getProject and getProjectWithoutLock arguments 2018-02-16 14:44:21 +00:00
Hayden Faulds
693c8e8c60 move where lock keys are defined 2018-02-16 14:44:21 +00:00
Hayden Faulds
66cd5cd24b use ProjectGetter.getProject in other ProjectGetter methods 2018-02-16 14:44:21 +00:00
Hayden Faulds
95b82a3c9d use ProjectGetter in ProjectLocator.findElementByPath 2018-02-16 14:44:21 +00:00
Hayden Faulds
cbc6fb232d add mongo transaction lock when getting or updating projects 2018-02-16 14:44:21 +00:00
Brian Gough
fc1e94b14a Merge pull request #343 from sharelatex/bg-block-javascript-property-names
block javascript property names being used as file names
2018-02-16 14:07:12 +00:00
Hayden Faulds
eb198cd8c3 make getSafePathname a method in CompileController rather than Project 2018-02-16 13:10:48 +00:00
Brian Gough
8a10e98b56 block javascript property names being used as file names 2018-02-16 10:31:47 +00:00
Hayden Faulds
304a6bc332 use ProjectGetter rather than Project directly 2018-02-16 08:55:09 +00:00
Hayden Faulds
aa89b7e70b Merge pull request #327 from sharelatex/hof-entity-refactoring
Refactor ProjectEntityHandler
2018-02-14 13:28:41 +00:00
Hayden Faulds
e9b218fe5f allow the updating of doc lines for deleted docs 2018-02-13 14:39:38 +00:00
Shane Kilkelly
9c83ff5353 Merge pull request #316 from sharelatex/afc-fix-typo-in-path
Update analytics manager to use new path
2018-02-13 09:39:09 +00:00
Hayden Faulds
458bbc7cfd refactor ProjectEntityHandler
- moves project locking into ProjectEntityHandler
- splits ProjectEntityHandler into ProjectEntityHandler,
  ProjectEntityUpdateHandler and ProjectEntityMongoUpdateHandler
- adds upsertDoc/upsertFile and upsertDocWithPath/upsertFileWithPath to
  EditorController and ProjectEntiyUpdateHandler
2018-02-12 13:33:59 +00:00
Brian Gough
ecea3dd1be add an extra test for invalid element names 2018-02-09 15:13:58 +00:00
Brian Gough
2c2b6e5f36 fix filename length check 2018-02-09 15:05:52 +00:00
Brian Gough
cba4a391a9 Merge pull request #314 from sharelatex/bg-validate-filenames-server
server side check for valid filenames
2018-02-08 09:16:31 +00:00
Brian Gough
c6f74d24f1 add missing SafePath.clean function 2018-02-07 15:21:04 +00:00
Alberto Fernández Capel
413e81f29a Update analytics manager to use new path
It fixes a typo in the path.

Related to https://github.com/sharelatex/analytics-sharelatex/pull/43
2018-02-07 09:39:00 +00:00
Brian Gough
7f727d434e server side check for valid filenames 2018-02-06 10:44:58 +00:00
Michael Walker
5987d6d79c Add unit tests for failing history API 2018-02-02 10:12:57 +00:00
Michael Walker
217940d76f Fix failing unit tests 2018-02-02 10:12:57 +00:00
Hayden Faulds
9955fd570c Merge pull request #299 from sharelatex/hof-tpds-locking
Project Locking: TPDS locking
2018-02-02 09:20:07 +00:00
Shane Kilkelly
19c97cb15b Merge pull request #289 from sharelatex/afc-track-edit-sessions
Send editing session heartbeat to the analytics service
2018-02-01 12:31:38 +00:00
Hayden Faulds
a9be50ebcd stream request to file outside of project lock 2018-02-01 10:44:53 +00:00
Hayden Faulds
9496480a29 test project lock is taken 2018-02-01 10:44:53 +00:00
Hayden Faulds
22737e8bd6 group together tests 2018-02-01 10:44:53 +00:00
Hayden Faulds
a6666bee62 group together private in UpdateMerger tests 2018-02-01 10:44:53 +00:00
Hayden Faulds
44d4a1dbe2 replace mocks with stubs in UpdateMerger tests 2018-02-01 10:44:52 +00:00
Hayden Faulds
e214347ede add locking around project structure updates in TPDS 2018-02-01 10:44:52 +00:00
Brian Gough
b7b40faefe fix unit test 2018-01-31 13:28:11 +00:00
Brian Gough
c19acd82a4 Merge pull request #291 from sharelatex/bg-fix-project-get-exclusion
fix typo in project getter exclusions
2018-01-31 11:51:01 +00:00
Brian Gough
5e52ade1ff Merge pull request #286 from sharelatex/bg-prevent-duplicate-filenames
prevent duplicate filenames
2018-01-31 11:50:45 +00:00
Brian Gough
21c1ea6687 remove comment in test 2018-01-31 10:26:06 +00:00
Brian Gough
2f52e6c4b4 remove comments 2018-01-29 10:38:25 +00:00
Brian Gough
cd2688a740 added tests for rename/move 2018-01-26 17:00:33 +00:00
Brian Gough
69bed6dbb2 fix MockFileStoreApi to record uploaded files 2018-01-25 17:09:31 +00:00
Brian Gough
68ac597a93 initial acceptance tests 2018-01-25 17:09:31 +00:00
Brian Gough
ea9976994a update unit tests for duplicate checks 2018-01-25 17:09:31 +00:00
James Allen
626f652c77 Update User acceptance test helper to expose methods for modules 2018-01-24 16:56:31 +00:00
Brian Gough
77adb60a8a fix typo in project getter exclusions 2018-01-24 10:06:53 +00:00
Alberto Fernández Capel
8dbb89c09e Add test for the updateEditingSession endpoint 2018-01-23 10:29:11 +00:00
James Allen
d79d6b4ede Fix call of UpdateMerger.deleteUpdate in TpdsController.deleteProjectContents 2018-01-22 16:25:11 +00:00
James Allen
6d04eeaa03 Merge pull request #256 from sharelatex/ja-display-v2-history-users
Inject v2 user details into project-history updates and diffs
2018-01-15 14:21:14 +00:00
Hayden Faulds
e781779c24 use LockManager.runWithLock in EditorController 2018-01-12 10:53:36 +00:00
Hayden Faulds
76c7dff33a rename EditorController.replaceFile -> replaceFileWithoutLock 2018-01-12 10:06:18 +00:00
Hayden Faulds
a8818a4149 add locking for EditorController.renameEntity 2018-01-12 10:06:18 +00:00
Alberto Fernández-Capel
4dce9e36c3 Merge pull request #251 from sharelatex/fix-group-member-subscription-page
Fix subscription page for members of a group
2018-01-11 14:41:31 +00:00
Alberto Fernández-Capel
feaa7c6d3f Merge pull request #242 from sharelatex/rename-entity-bugfix
Ensure the dirname is not affected when we rename an entity
2018-01-11 14:41:21 +00:00
James Allen
17a5dfa5a5 Inject v2 user details into project-history updates and diffs 2018-01-11 11:32:16 +00:00
James Allen
945ef25ef5 Merge pull request #244 from sharelatex/hof-lock-file-upload
Project Locking: ProjectUploadController
2018-01-11 08:42:36 +00:00
Timothée Alby
859e03cd4f Merge pull request #234 from sharelatex/hof-remove-unused-method
remove unused EditorController.getListOfDocPaths
2018-01-10 15:26:02 +02:00
Alberto Fernández Capel
0200fd66cd Mock LimitationsManager as well 2018-01-10 10:26:16 +00:00
Alberto Fernández Capel
a81b56556f Add test for SubscriptionViewModelBuilder 2018-01-09 17:00:56 +00:00
Hayden Faulds
817840840a use LockManger.runWithLock 2018-01-09 16:37:34 +00:00
James Allen
bbfcff30fb Enable project history for new projects if enabled in settings 2018-01-03 16:55:33 +00:00
James Allen
ada76e820a Merge pull request #238 from sharelatex/as-ol-emails
v2 themed emails
2018-01-03 11:30:28 +00:00
James Allen
2dcc17ad09 Merge pull request #235 from sharelatex/ja-show-deleted-files-in-v2-history
Handle deleted and renamed files better in v2 history UI; Fixes #226
2018-01-03 11:29:59 +00:00
Hayden Faulds
fe62db05a0 lock project when uploading a file 2018-01-02 12:43:41 +00:00
Alberto Fernández Capel
bf324b5e04 Ensure the dirname is not affected when we rename an entity
Fixes https://github.com/sharelatex/web-sharelatex-internal/issues/93
2017-12-22 14:24:00 +00:00
Alasdair Smith
562534034f Stub out brandPrefix for email tests 2017-12-21 17:18:10 +00:00
James Allen
d0fee7e76c Show a file tree of changed paths, so we can work with renamed and deleted files 2017-12-20 16:22:32 +00:00
Hayden Faulds
8663dba37c remove unused EditorController.getListOfDocPaths 2017-12-20 15:14:56 +00:00
Shane Kilkelly
18ae27fd66 Merge branch 'sk-account-sync' 2017-12-20 14:02:45 +00:00
James Allen
339b7ec14f Merge branch 'ja-allow-importing-without-history' 2017-12-19 15:06:17 +00:00
James Allen
1d89a535a1 Merge pull request #208 from sharelatex/ja-front-end-history
Add in web front end that supports v2 history; Fixes #168
2017-12-19 15:00:34 +00:00
James Allen
5463b608ad Add add{File|Doc}WithoutUpdatingHistory methods to allow importing OL projects with existing history 2017-12-19 13:59:06 +00:00
James Allen
ffa2e231fd Fix up tests 2017-12-19 13:58:47 +00:00
James Allen
810b5e0e9a Fix front end tests 2017-12-19 13:58:47 +00:00
James Allen
8a3fadbfc1 Style the edit/add/rename options 2017-12-19 13:58:47 +00:00
James Allen
50b12e88a2 Add HistoryV2Manager alongside existing HistoryManager 2017-12-19 13:58:47 +00:00