chai-bytes
が公開された chai-bytes のフォークでは、入力タイプが緩和されたESMとして公開されています。
チャイアサーションにはバイト配列の等式があります
Chai-bytes は equalBytes
関数によって チャイ を拡張します。これにより、バイト配列の等式(すなわち、Uint8Array
インスタンス)をテストできます。
基本的な使い方
const { expect, assert } = require('chai')
.use(require('chai-bytes'));
const buffer = new Uint8Array([ 1, 2, 3, 4, 5 ]);
expect(buffer).to.equalBytes('0102030405');
// `assert` style works, too
assert.equalBytes(buffer, [1, 2, 3, 4, 5], 'error message');
equalBytes
に渡される想定値は次のとおりです。
- 16進数文字列(例:
'c0ffee'
) - 配列(例:
[1, 2, 3]
) - 配列に似たオブジェクト(すなわち、
length
プロパティを持つオブジェクト、および整数プロパティによってアクセスできるアイテム)。とりわけ、Uint8Array
インスタンスが含まれます。
渡される値がこれらのカテゴリのいずれにも当てはまらない場合、TypeError
がスローされます。
開発者メモ
Chai-bytes は、テストされたブラウザ環境(FirefoxとPhantomJS)から、結合コードカバレッジを使用します。その理由は、PhantomJSはUint8Array
に問題がある可能性のある典型的な古い環境であることです(たとえば、重要なメソッドの一部がありません)。
ライセンス
Chai-bytes は Apache-2.0ライセンス で利用できます。