| 
									
										
										
										
											2019-08-31 20:51:14 -07:00
										 |  |  | import { module, test } from 'qunit'; | 
					
						
							|  |  |  | import { jsonValuesMatch } from '@datahub/utils/validators/json'; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | module('Unit | Utility | validators/json', function() { | 
					
						
							| 
									
										
										
										
											2020-08-26 15:44:50 -07:00
										 |  |  |   test('it returns expected value when testing two json objects', function(assert): void { | 
					
						
							| 
									
										
										
										
											2019-08-31 20:51:14 -07:00
										 |  |  |     assert.expect(2); | 
					
						
							|  |  |  |     const testObjectA = { pikachu: 'raichu', charmander: 'charmeleon' }; | 
					
						
							|  |  |  |     const testObjectB = { pikachu: 'raichu', charmander: 'charmeleon' }; | 
					
						
							|  |  |  |     const testObjectC = { pikachu: 'eevee', charmander: 'charmeleon' }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     const stringifiedTestObjectA = JSON.stringify(testObjectA); | 
					
						
							|  |  |  |     const stringifiedTestObjectB = JSON.stringify(testObjectB); | 
					
						
							|  |  |  |     const stringifiedTestObjectC = JSON.stringify(testObjectC); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     const resultA = jsonValuesMatch([stringifiedTestObjectA], [stringifiedTestObjectB]); | 
					
						
							|  |  |  |     assert.ok(resultA); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     try { | 
					
						
							|  |  |  |       jsonValuesMatch([stringifiedTestObjectA], [stringifiedTestObjectC]); | 
					
						
							|  |  |  |     } catch (e) { | 
					
						
							|  |  |  |       assert.ok(e.message.includes('Expected only'), 'jsonValuesMatch throws an expected error without a match'); | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  |   }); | 
					
						
							|  |  |  | }); |