2016-05-03 4 views
0

私のテストにはchai expectライブラリを使用しています。私はテストデータであるオブジェクトの配列を持っています。各オブジェクトには2つのプロパティnameprofessionがあります。私はこれらをテーブルに注入する。私はすべてのレコードを取得するときに同じ配列を取得しますが、配列のすべてのオブジェクトには自動生成されたidフィールドが追加されています。取得したデータとテストデータを照合する必要があります。取得されたデータを繰り返し処理することなく、チャイでこれを行うという簡略な方法はありますか?オブジェクトの配列内のすべてのオブジェクトにいくつかのキーがあるかどうかを確認する方法

答えて

2

あなたは結果にフィールドを排除するためにwithoutを使用することができます:あなたは簡単にそれに対して主張することができ、そのよう

r.table('test').without('id') 

例コード:

var chai = require('chai') 
var assert = chai.assert 

var r  = require('rethinkdb') 

r.connect({ 
    host: 'localhost', 
     port: 28015, 
    }) 
    .then(function(conn) { 
    return conn 
    }) 
    .then(function(conn) { 
    return r.table('table').without('id').run(conn) 
    }) 
    .then(function(cursor) { 
    return cursor.toArray() 
    }) 
    .then(function(data) { 
    assert.deepEqual([ 
    {name: 'foo', profession: 'bar'}, 
    {name: 'foo2', profession: 'bar2'}, 
    ], data) 
    }) 
関連する問題