Проверьте значение в массиве JSON, используя Chai / Mocha - PullRequest
0 голосов
/ 26 апреля 2018

У меня есть функция js, которая возвращает массив JSON

[
    {
        "coordinates": {
            "lat": 1,
            "lng": 2
        },
        "name": "33301 - Fort Lauderdale, Florida"
    },
    {
        "coordinates": {
            "lat": 3,
            "lng": 4
        },
        "name": "33301 - Atlanta, Georgia"
    }
]

Как написать оператор ожидания Chai для проверки значения имени ...

В общем, я хочу посмотреть, содержит ли параметр имени результата "33301 - Атланта, Джорджия"

Спасибо за вашу помощь

1 Ответ

0 голосов
/ 26 апреля 2018

Взгляните на официальную документацию для утверждения:

// Target object deeply (but not strictly) includes `x: {a: 1}`
expect({x: {a: 1}}).to.deep.include({x: {a: 1}});
expect({x: {a: 1}}).to.not.include({x: {a: 1}});


// Target object deeply (but not strictly) has property `x: {a: 1}`
expect({x: {a: 1}}).to.have.deep.property('x', {a: 1});
expect({x: {a: 1}}).to.not.have.property('x', {a: 1});


// Target array deeply (but not strictly) has member `{a: 1}`
expect([{a: 1}]).to.have.deep.members([{a: 1}]);
expect([{a: 1}]).to.not.have.members([{a: 1}]);

http://www.chaijs.com/api/bdd/

Также есть плагин chai-json для тестирования файлов json, как показано ниже:

expect(testFile).to.be.a.jsonFile().and.contain.jsonWithProps({ repoName: 'giper' });

Узнайте больше о том, как делать утверждения: http://www.chaijs.com/plugins/chai-json/

...