Commit Graph

221 Commits

Author SHA1 Message Date
Asher e8443e2602
Fix helpers not working in e2e tests
It errors that jest is not defined so put it behind a function instead
of immediately creating the mock (this is probably a better pattern
anyway).

The constant tests had to be reworked a little. Since the logger mock is
hoisted it runs before createLoggerMock is imported. I moved it into a
beforeAll which means the require call also needed to be moved
there (since we need to mock the logger before requiring the constants
or it'll pull the non-mocked logger).

This means getPackageJson needs to be a let and assigned afterward. To
avoid having to define a type for getPackageJson I just added a let var
set to the type of the imported constants file and modified the other
areas to use the same paradigm.

I also replaced some hardcoded strings with the mocked package.json
object.
2021-05-06 15:01:35 -05:00
Asher ad4a70c684
Use warn log level for integration tests
Just to limit all the noise from code-server's startup output.
2021-05-06 14:27:16 -05:00
Asher 4925e97080
Add static route tests 2021-05-06 14:27:11 -05:00
Asher 1789cd1bcb
Move temp test dirs under a `tests` sub-directory
This is to match the other tests that create temp directories. It also
lets you clean up test temp directories all at once separately from
other non-test temporary directories.
2021-05-06 14:25:51 -05:00
Asher 52cf2fcf29
Move tmpdir test helper to test helpers file 2021-05-06 14:25:50 -05:00
Asher 0e4672f6b9
Move health route tests to routes directory 2021-05-06 14:25:49 -05:00
Joe Previte cb5ab48d48
fix: coveragePathIgnorePatterns to /out
We were accidentally ignoring `node/routes` because we had "out"
instead of "/out" in `coveragePathIgnorePatterns` which caused
us to not collect coverage for those files. Now we do.
2021-05-06 11:53:17 -07:00
Joe Previte 027106a5e1
feat(testing): add test for constants "version" and commit 2021-05-05 15:34:48 -07:00
Asher a882be5748
Refactor integration tests to use main entry point 2021-05-05 12:24:41 -05:00
Asher 083400b50a
Add flag to enable permessage-deflate 2021-05-05 12:24:34 -05:00
Asher 8b2c78c4a4
Re-enable update tests 2021-05-04 13:29:42 -05:00
Asher 10babb4a0c
Replace console with logger in sw register 2021-05-04 13:29:41 -05:00
Asher a48ac5080b
Share common util code with VS Code
This lets us re-use the normalized base path so when we expire/clear the
cookie we use the same base path.
2021-05-04 13:29:40 -05:00
Joe Previte 8e6c10e7ff
Merge pull request #3263 from cdr/jsjoeio/fix-e2e-test
fix(testing): reduce flakiness of terminal.test.ts and use 1 worker for e2e tests
2021-04-30 15:38:32 -07:00
Joe Previte cde30579c4
refactor: change to reloadUntilEditorIsReady 2021-04-30 13:44:16 -07:00
Joe Previte 2cb499385a
feat: add isConnected method to CodeServer model 2021-04-30 13:36:46 -07:00
Joe Previte 7309ea9d10
fix(e2e): use one worker to reduce flakiness 2021-04-29 16:27:19 -07:00
Joe Previte 17f4c4c330
fix(e2e): remove quotes from terminal type command 2021-04-29 16:22:21 -07:00
Joe Previte d07317ad01
docs: add maintaining.md with workflow 2021-04-28 11:25:25 -07:00
Joe Previte 449c6da77c
refactor: add timeout to terminal.test.ts 2021-04-27 14:35:31 -07:00
Joe Previte 8c727d96d6
refactor: make CodeServer methods more stable 2021-04-27 14:35:09 -07:00
Joe Previte 07d682392e
Merge pull request #3169 from cdr/jsjoeio/add-terminal-e2e-test
feat(testing): add e2e tests for code-server and terminal
2021-04-26 15:16:06 -07:00
Joe Previte 83746c8a1f
refactor: remove null check in register.ts options.base
Inside registerServiceWorker, we were originally using the nullash coalescing
operator to check if options.base was null or undefined. However, I realized
this check is not necessary.

If you look at getOptions' return value, we return an object with a key "base"
which is of type "string". We get that value by calling resolveBase which always
returns a string.

As a result, we didn't need to check if options.base was null or undefined
because it never can be.
2021-04-23 17:09:03 -07:00
Joe Previte 7bfdd13cb3
refactor: tmpdir and add to test utils 2021-04-23 16:40:39 -07:00
Joe Previte 6f2709bcaa
feat: add tests for registerServiceWorker 2021-04-23 16:31:56 -07:00
Joe Previte b0ecff338f
refactor: globalSetup to use CodeServer model 2021-04-23 14:35:33 -07:00
Joe Previte cb65590b98
refactor: move tmpdir into src/node/constants 2021-04-23 14:35:32 -07:00
Joe Previte cc99fddf24
feat: add test for terminal echo to file 2021-04-23 14:35:32 -07:00
Joe Previte 2bf0a0e76e
refactor: fix tests to check visibility correctly 2021-04-23 14:35:31 -07:00
Joe Previte 2665a4f61b
feat: add CodeServer page object for e2e tests 2021-04-23 14:35:31 -07:00
Joe Previte f80d5c3764
refactor: rateLimiter.canTry logic to check >= 1 2021-04-19 13:14:19 -07:00
Joe Previte 958f01262b
refactor: check errorMessage in login e2e test 2021-04-19 11:11:52 -07:00
Joe Previte a3f18d6158
refactor: change limiter.Try() to .removeToken() 2021-04-19 10:57:50 -07:00
Joe Previte 7928dc2bff
feat: add test for limiter.canTry() 2021-04-19 10:41:00 -07:00
Joe Previte a8719e1f79
refactor: change config to save all e2e videos 2021-04-19 10:40:59 -07:00
Joe Previte 1e6f4f2a14
feat(testing): add test for rate limiter 2021-04-19 10:40:59 -07:00
Joe Previte 83cfbf82cf
feat: increase timeout for playwright tests 2021-04-19 10:40:59 -07:00
Joe Previte faaa0a9e60
feat(testing): add e2e tests for password 2021-04-19 10:40:59 -07:00
Joe Previte ebbabc6e04
refactor(testing): combine loginPage with login 2021-04-19 10:40:58 -07:00
Joe Previte 58e17c5e50
feat(testing): add tests for RateLimiter 2021-04-19 10:40:58 -07:00
Joe Previte 450fcd5ba7
refactor: pass all args to test-e2e script 2021-04-15 11:46:45 -07:00
Joe Previte d6f0725399
fix: update path for e2e videos 2021-04-15 11:46:45 -07:00
Joe Previte c9fa931a0b
fix: add retry 2 for failing e2e tests 2021-04-15 11:46:44 -07:00
Joe Previte 92b7c1e9a8
refactor: test-e2e.sh script 2021-04-15 11:46:44 -07:00
Joe Previte 6c3bb101cd
chore(deps): add resolution for newest playwright 2021-04-15 11:46:44 -07:00
Joe Previte 7ea6d22b3e
refactor: add login to config.js for e2e tests 2021-04-15 11:46:44 -07:00
Joe Previte 52586706c4
refactor: use playwright-test syntax for e2e tests 2021-04-15 11:46:43 -07:00
Joe Previte 08cd2d8191
refactor: add new e2e config 2021-04-15 11:46:43 -07:00
Joe Previte 0a090bf12b
chore(deps): add @playwright/test 2021-04-15 11:46:43 -07:00
Joe Previte ad0f12e664
refactor: check for editor consistently in tests 2021-04-06 15:46:58 -07:00