1

HTML:

<div id="date"> {{date | date : 'EEE MMM d HH:mm'}} </div>

「Tue Sep 30 10:45」に画面に表示されます

テスト:

expect(element(by.id('date')).getText()).toBe("Tue Sept 30 10:45");

次の場合に失敗します。

'Sep 30, 2014 10:45' は 'Tue Sep 30 10:45' になるはずです。

4

2 に答える 2

2

Date文字列ではなくオブジェクトを比較する必要があると思います:

element(by.id('date')).getText().then(function (value) {
    var dateValue = new Date(value);
    var expectedDateValue = new Date(dateValue.getFullYear(), 9, 30, 10, 45, 0);

    expect(dateValue).toBe(expectedDateValue);
});

フォーマットをさらに確認したい場合は、正規表現の素晴らしい世界に飛び込むか、単にmoment.jsライブラリを使用できます。

element(by.id('date')).getText().then(function (value) {
    expect(moment(value, ["EEE MMM d HH:mm"]).isValid()).toBe(true);
}
于 2015-01-07T14:25:51.197 に答える