Как проверить, что два свойства в объекте имеют одинаковое значение
Я использую тестовую среду Frisby, и я хочу проверить, что два свойства имеют то же значение, что и в примере ниже, где count должен быть равен total_count. Я искал вокруг, но не было никакого способа проверить, что два свойства имеют одинаковое значение.
Вот код, который я использую для проверки GET. При вызове API перечисляются все пользователи, которые зарегистрированы в системе.
frisby.create('GET Method')
.get(urlMultiNetworkAdminUser)
.expectStatus(200)
.expectJSON({
})
.expectJSONTypes({
rows : Array,
count : String,
total_count : String
})
.expectJSONTypes('rows.*' ,{
id : Number,
setting_group_id: function(val) { expect(val).toBeTypeOrNull(Number); },
login : String,
email : String,
language_code : String,
role : String,
ismultinetworkadmin : Boolean,
real_name : String,
subscribe_to_issues : Boolean,
external_account : Boolean,
href : String
}).toss();
{
"rows":
[
{
"id":109,
"setting_group_id":null,
"login":"Admin",
"email":"dise.server@dise.com",
"language_code":"en",
"role":"user",
"ismultinetworkadmin":false,
"real_name":"Amin",
"subscribe_to_issues":false,
"external_account":false,
"href":"/api/v1/users/109"
},
{
"id":110,
"setting_group_id":null,
"login":"User",
"email":"dise.server@dise.com",
"language_code":"en",
"role":"user",
"ismultinetworkadmin":false,
"real_name":"User",
"subscribe_to_issues":false,
"external_account":false,
"href":"/api/v1/users/110"
}
],
"count":"2",
"total_count":"2"
}
Большое спасибо
1 ответ
Чтобы проверить глубокое равенство - что я думаю, что вы хотите сделать - используйте подчеркивание...
expect(_.isEqual(actual, expected)).toBe(true);
Вы также можете использовать lodash или написать свою собственную функцию для проверки глубокого равенства.