Pierre Ossman
ae9b042df1
Change rQslice() to rQpeekBytes()
...
We don't need any full slice functionality, so let's change this to
better march rQpeek8() and rQshiftBytes().
2023-06-04 19:00:33 +02:00
Pierre Ossman
87143b361e
Reduce kept state in JPEG decoder
...
We don't have to keep track of this much data between rects, so
restructure things to make it more simple. This allows the JPEG parsing
code to be a pure function which only depends on the input.
2023-06-04 19:00:33 +02:00
Pierre Ossman
eb0ad829d2
Check that decoders consume all data
...
This is extra important in the tests where we expect no changes to the
display, as otherwise we can't tell the difference between success and a
decoder that is simply waiting for more data.
2023-06-03 15:36:29 +02:00
Pierre Ossman
d33f5ce77f
Make extended clipboard tests independent
...
Let's test the full final result instead of assuming specific internal
calls.
2023-05-30 20:48:26 +02:00
Pierre Ossman
8ae789daf0
Add missing tests for message encodings
...
All of these functions should have units tests, even if they are fairly
minimal.
2023-05-30 20:48:26 +02:00
Pierre Ossman
9e02f4d01d
Return a copy of the data from FakeWebSocket
...
The caller might hang on to the data for multiple calls, so we make sure
the returned buffer might not get overwritten.
2023-05-30 20:48:26 +02:00
Pierre Ossman
9c7576a587
Remove bad Websock mock in tests
...
This small object will not properly fake a Websock in more complex
cases, so let's avoid it and create a real Websock instead.
2023-05-30 20:48:26 +02:00
Pierre Ossman
e07ca6a8e2
Fix Websock send tests
...
Avoid poking around in the internals and instead test what is actually
sent out on the WebSocket.
2023-05-30 20:48:24 +02:00
Pierre Ossman
336ec86997
Remove internal monitoring from Plain tests
...
Tests should avoid poking in to the internals and should only look at
external behaviour.
2023-05-30 20:11:51 +02:00
Pierre Ossman
0c80c68e92
Avoid hooking in to RFB._fail for tests
...
This is an internal function so we should not be examining it in the
tests. Instead use the well defined public APIs to check for correct
behaviour.
2023-05-30 20:11:51 +02:00
Pierre Ossman
13fa6b5908
Fix last rect test
...
Avoid poking in to internals and instead test that the RFB object
responds correctly to new messages.
2023-05-30 20:11:51 +02:00
Pierre Ossman
549ccc7121
Split RSA-AES test data
...
Make the tests more clear what data is expected in the different stages
of the handshake.
2023-05-30 20:11:51 +02:00
Pierre Ossman
42bc251eb4
Make RSA-AES tests more asynchronous
...
The code tested here makes heavy use of promises, so it is easier to
test things also using promise centric code.
2023-05-30 20:11:51 +02:00
Pierre Ossman
afbb1da4d5
Remove custom RSA-AES event
...
We shouldn't add extra, undocumented, API just for the tests. They need
to figure out less invasive way to probe things.
2023-05-30 20:11:51 +02:00
Pierre Ossman
458405e05d
Merge RSA-AES tests in to RFB tests
...
These test the RFB class, so they should be with all other tests for
that class.
2023-05-30 20:11:51 +02:00
Pierre Ossman
0ee0e96f34
Fix ARD authentication test to send real data
...
Stop bypassing the data handling steps in the test as that means those
parts don't get tested.
2023-05-30 20:11:51 +02:00
Pierre Ossman
71bb6f02cd
Fix Plain authentication test checks
...
We should have constants local for the test function when doing
comparisons or we might have false positives because we compare with
buggy values in the code under test.
2023-05-30 20:11:51 +02:00
Pierre Ossman
79f099108f
Split Plain authentication tests to own section
...
VeNCrypt is a multiplexer for many authentication methods, not just
Plain. So let's split it to its own section, just like other types.
2023-05-30 20:11:51 +02:00
Pierre Ossman
0679c8a801
Test credentials using normal API
...
Avoid poking around in the internals and instead test things using the
official methods and events. This should give us more realistic and
robust tests.
2023-05-30 20:11:51 +02:00
Pierre Ossman
29a50620ff
Avoid touching internals in Tight auth tests
...
We should test using only external manipulation so we don't assume a
specific implementation.
2023-05-30 20:11:51 +02:00
Pierre Ossman
c7c293279b
Remove commented out Tight test case
...
This is not something we intend to implement, so remove this never used
test case.
2023-05-30 20:11:51 +02:00
Pierre Ossman
cd231e53ed
Don't overwrite methods with spies
...
Spies should just attach without modifying the real method, or we might
get unwanted side effects.
2023-05-30 20:11:51 +02:00
Pierre Ossman
3ef57d1600
Fix security to authentication state test
...
The "None" authentication will directly progress past authentication, so
it's not a good type for this test.
2023-05-30 20:11:51 +02:00
Pierre Ossman
da75689f4c
Fix data for empty RRE rect test
...
The given data was not a correct RRE rect.
2023-05-30 20:11:51 +02:00
Pierre Ossman
9b115a4485
Send ArrayBuffer, not Uint8Array in tests
...
This matches the true contents of a WebSocket 'message' event, so should
be a more realistic test.
2023-05-30 20:11:51 +02:00
Pierre Ossman
775ccaa74c
Handle immediate responses in RSA-AES authentication
...
The event handlers might provide the needed response right away, before
even existing the event handler. We should be prepared to handle this
case.
2023-05-30 20:11:51 +02:00
Pierre Ossman
0dd9678e64
Harmonise extended clipboard tests
...
Let them all follow the same pattern to make things more clear.
2023-05-30 20:11:51 +02:00
Pierre Ossman
91307951d3
Fix cached JPEG test
...
This test didn't really check anything useful as the end result would be
the same if the second JPEG failed to render.
Fix this by clearing the canvas between the images, so we can tell if
the second image actually rendered or not.
2023-05-30 20:11:51 +02:00
Pierre Ossman
c2d6a06d6d
Merge branch 'master' of https://github.com/lewayotte/noVNC
2023-05-11 12:20:18 +02:00
Pierre Ossman
a565ae559f
Merge branches 'l10n' and 'fragment' of github.com:CendioOssman/noVNC
2023-05-10 13:23:34 +02:00
Pierre Ossman
0374b4c0fc
Handle translation loading in translation class
...
Let's try to keep as much as possible of the translation handling in a
single place for clarity.
2023-05-10 13:11:51 +02:00
Pierre Ossman
cd1a63b737
Restore history state after tests
...
We don't want to mess up anything permanent in each test or the tests
might start affecting each other.
2023-05-10 12:25:46 +02:00
Pierre Ossman
05b6d2ad67
Fix typos in query variable comment
2023-05-10 12:25:46 +02:00
Pierre Ossman
2a21bee245
Revert broken Add support for URL fragment parameters
...
This is a revert of the code changes in commit
f796b05e42
as it served no functional
purpose.
Fragments were already respected for setting parameters, via a different
function. Thus it is unclear what that commit tried to fix. It also
complicated things by mixing the document location with the window
location.
The comment changes are useful, though, so those are kept.
2023-05-10 12:25:46 +02:00
Samuel Mannehed
cbbd9ab069
Merge pull request #1777 from nwtgck/patch-1
...
fix typo
2023-04-30 02:36:05 +02:00
Ryo Ota
2a675b3394
fix typo
2023-04-30 02:04:00 +09:00
Lew Ayotte
b16f19f9ce
Set _rfbVeNCryptState = 4 not == 4
2023-04-06 15:00:21 -05:00
Pierre Ossman
681632bc9f
Avoid running tests on l10n singleton
...
We want tests to be independent, so we cannot have them modify a shared
state, such as the l10n singleton. Make sure each test instantiates its
own object instead.
2023-04-06 11:11:47 +02:00
Pierre Ossman
a4453c9a26
Special case English translation fallback
...
We should not be listing this in LINGUAS as that gives the impression
that English has en explicit translation. Instead, it is a special case
that the code needs to be explicitly aware of.
This reverts 9a06058
in favour of a more robust fix.
2023-04-05 12:46:17 +02:00
Pierre Ossman
747603c0d5
Also re-enable playback on failures
...
Allows easier testing by being able to run the test multiple times.
2023-04-04 17:02:57 +02:00
Pierre Ossman
c1d2449fb8
Fix playback error message for load failure
...
We expect the promise to be rejected with a string for display to the
user.
2023-04-04 17:02:21 +02:00
Samuel Mannehed
46292477c8
Merge pull request #1768 from mathis-marcotte/add-english-to-supported-langs
...
Add english to list of supported languages
2023-04-02 20:16:48 +02:00
Mathis Marcotte
9a06058f66
Added english to list of supported languages
2023-03-27 14:23:09 +00:00
Samuel Mannehed
8decca7353
Use unitless numbers for line-height values
...
Using <length> type values for line-height can give unexpected
inheritance behaviors. If using <length> values, the inherited
line-height on children is calculated using the font-size of the parent.
What we want is for the line-height of children to be calculated using
it's own font-size.
By instead using a unitless number, we get the behavior we want. Note
that this bug has no effects right now since no children to any of the
related elements have different font-sizes.
2023-03-23 11:06:03 +01:00
Samuel Mannehed
4558104196
Properly center the checkbox checkmark
...
Using a flexbox we can easily center the checkmark without using hard
coded positions.
2023-03-23 11:06:03 +01:00
NNN1590
6751cc1236
Update Japanese translation
2023-03-21 13:15:26 +09:00
Pierre Ossman
9985950bfa
Upgrade to latest websockify in snap package
2023-01-26 10:45:26 +01:00
Pierre Ossman
a0e6e7b1d8
Merge branch 'crypto-cleanup-fallback' of https://github.com/pdlan/noVNC
2023-01-20 16:52:32 +01:00
Pierre Ossman
90455eef06
noVNC 1.4.0
2023-01-20 13:58:48 +01:00
Pierre Ossman
51677f5c70
Update json files for new translations
2023-01-20 13:57:20 +01:00