Thanks to visit codestin.com
Credit goes to github.com

Skip to content
This repository was archived by the owner on Dec 15, 2022. It is now read-only.

atom/jasmine-json

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Atom and all repositories under Atom will be archived on December 15, 2022. Learn more in our official announcement

Jasmine JSON matcher

Comparing large objects with jasmine works great until you get an error, when it dumps the entire object to the console in a completely human unreadable format.

This package adds a toEqualJson matcher to jasmine that will generate nice diffs on error. It will tell you which keys differ, and why.

# In your spec helper
require 'jasmine-json'

# In your specs

describe "something", ->
  it "tests json", ->
    someObject =
      one: 1
      two:
        three: 5
        four: 4

    expect(someObject).toEqualJson
      one: 1
      two:
        three: 3
        four: 4
        five: 5

It will give you the path of the failure:

JSON is not equal:
two:
  actual:   has keys ["four","three"]
  expected: has keys ["five","four","three"]

If there are several errors, it will report all of them:

it "tests json", ->
    someObject =
      two:
        three:
          four:
            five: 4
            six: 5
            seven: 6

    expect(someObject).toEqualJson
      two:
        three:
          four:
            five: 5
            six: 6
            seven: 7

Reports:

JSON is not equal:
two.three.four.five:
  actual:   4
  expected: 5
two.three.four.six:
  actual:   5
  expected: 6
two.three.four.seven:
  actual:   6
  expected: 7

About

Match objects in jasmine with legit error output

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •