chai-json

一個用於驗證 JSON 檔案的 Chai 外掛

使用方式

伺服器端

從 npm 安裝

$ npm install chai-json

讓 Chai 使用 chai-fs 模組

var chai = require('chai');
chai.use(require('chai-json'));

斷言

jsonFile()

斷言檔案是 JSON 格式

expect(testFile).to.be.a.jsonFile();

jsonObj()

斷言給定的 JSON 檔案與 JavaScript 物件相等。

 expect(testFile).to.be.a.jsonFile().and.to.be.jsonObj(jsonObj);

jsonWithProps()

斷言 JSON 檔案包含具有給定屬性的物件


    /* 
    Content of testFile:  
 [{"repoName":"giper","labName":"TelnetClientSniffing_1","state":"STOPPED"},{"repoName":"giper","labName":"ErrorSameSubnet","state":"STOPPED"},
 {"repoName":"giper","labName":"ErrorSamePort","state":"STOPPED"},    
 {"repoName":"giper","labName":"ErrorWrongAction","state":"STOPPED"},{"repoName":"giper","labName":"ErrorNoDefinedAction","state":"NO_NETWORK"},{"repoName":"giper","labName":"ErrorCopyFile","state":"STOPPED"},
 {"repoName":"giper","labName":"TestActionNoArgs","state":"STOPPED"}
 ]
    */ 
    expect(testFile).to.be.a.jsonFile().and.contain.jsonWithProps({ repoName: 'giper' });

貢獻

歡迎貢獻。請遵循程式碼、測試和樣式模式,並保持 Eslint 的正常運作。如需更多資訊,請參考 Airbnb 風格指南。

建置 & 測試

在您的 Git 結帳中安裝開發相依性

$ npm install

執行測試

$ mocha test

許可證

根據 MIT 許可證授權。