add stryker, test for timeout valid signature
This commit is contained in:
		
							
								
								
									
										3
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @@ -2,3 +2,6 @@ | ||||
| /dist/ | ||||
| /.nyc_output/ | ||||
| /coverage/ | ||||
|  | ||||
| # stryker temp files | ||||
| .stryker-tmp | ||||
|   | ||||
| @@ -6,6 +6,8 @@ | ||||
|   "license": "MIT", | ||||
|   "devDependencies": { | ||||
|     "@scode/eslint-config": "^1.2.25", | ||||
|     "@stryker-mutator/core": "^2.5.0", | ||||
|     "@stryker-mutator/javascript-mutator": "^2.5.0", | ||||
|     "ava": "^3.5.0", | ||||
|     "eslint": "^6.8.0", | ||||
|     "nyc": "^15.0.0" | ||||
|   | ||||
							
								
								
									
										11
									
								
								stryker.conf.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								stryker.conf.js
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
| module.exports = function(config) { | ||||
|   config.set({ | ||||
|     mutator: "javascript", | ||||
|     packageManager: "yarn", | ||||
|     reporters: ["clear-text"], | ||||
|     testRunner: "command", | ||||
|     transpilers: [], | ||||
|     coverageAnalysis: "all", | ||||
|     mutate: ["index.js"] | ||||
|   }); | ||||
| }; | ||||
| @@ -103,6 +103,16 @@ test ('reject old signatures', async (t) => { | ||||
|   t.is (dec, null); | ||||
| }); | ||||
|  | ||||
| test ('do not reject valid signatures', async (t) => { | ||||
|   const obj = { foo: 'bar' }; | ||||
|   const str = crypto.sign_object (obj, 'baz'); | ||||
|   await new Promise ((res) => { | ||||
|     setTimeout (res, 10); | ||||
|   }); | ||||
|   const dec = crypto.verify_signature (str, 'baz', 100); | ||||
|   t.deepEqual (obj, dec); | ||||
| }); | ||||
|  | ||||
| test ('decode problematic token', (t) => { | ||||
|   // eslint-disable-next-line max-len | ||||
|   const str = 'eyJpYXQiOjE1ODE0NDAwMTIyODgsIm9iaiI6eyJpZCI6MX19.24ZOsWrnfkNe%2FbM0r7DaVJMqE2bfn2aAM%2BZSzWeSf31OCTlXXNWD34RBL2X5v3UliYQ4IIsLNBFbaW9texPHug%3D%3D'; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user