diff options
author | Hubert Chathi <hubert@uhoreg.ca> | 2019-01-21 23:21:41 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-01-21 23:21:41 -0500 |
commit | 94f664e7256215f33639dbbad6aaf87ada082a9f (patch) | |
tree | fb9906c60b40b1ad79dbf7acd1713a250bb5d902 /javascript/test | |
parent | ec2695b9c945fa577c6fc4501d65a186208ecfed (diff) |
initial implementation of short authentication string generation
Diffstat (limited to 'javascript/test')
-rw-r--r-- | javascript/test/sas.spec.js | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/javascript/test/sas.spec.js b/javascript/test/sas.spec.js new file mode 100644 index 0000000..af7ea65 --- /dev/null +++ b/javascript/test/sas.spec.js @@ -0,0 +1,53 @@ +/* +Copyright 2018 New Vector Ltd + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +var Olm = require('../olm'); + +describe("sas", function() { + var alice, bob; + + beforeEach(async function(done) { + Olm.init().then(function() { + alice = new Olm.SAS(); + bob = new Olm.SAS(); + + done(); + }); + }); + + afterEach(function () { + if (alice !== undefined) { + alice.free(); + alice = undefined; + } + if (bob !== undefined) { + bob.free(); + bob = undefined; + } + }); + + it('should create matching SAS bytes', function () { + alice.set_their_key(bob.get_pubkey()); + bob.set_their_key(alice.get_pubkey()); + expect(alice.generate_bytes("SAS", 5).toString()).toEqual(bob.generate_bytes("SAS", 5).toString()); + }); + + it('should create matching MACs', function () { + alice.set_their_key(bob.get_pubkey()); + bob.set_their_key(alice.get_pubkey()); + expect(alice.calculate_mac("test", "MAC").toString()).toEqual(bob.calculate_mac("test", "MAC").toString()); + }); +}); |