assertThat(c, hasItems("one", "two"));
अतिरिक्त आइटम को अनदेखा कर दिया जाएगा, साथ ही पास होगा। और:
assertThat(c, hasItems("three", "two", "one"));
भी पास होगा।
contains
checks:
जांच Iterable
आने वाले एक पास आइटम्स की एक श्रृंखला है, प्रत्येक तार्किक निर्दिष्ट मदों में इसी आइटम के बराबर अर्जित करता है। एक सकारात्मक मैच के लिए, निर्दिष्ट पुनरावृत्त निर्दिष्ट वस्तुओं की संख्या के समान लंबाई के होना चाहिए। ,
assertThat(c, contains("one", "two")); // Fails
यह विफल हो जाएगा बचे हुए के रूप में "three"
मेल नहीं खाता है:
तो यह सुनिश्चित करें कि संग्रह बिल्कुल इन मदों में शामिल है बनाता है।
assertThat(c, contains("three", "two", "one")); // Fails
यह विफल रहता है क्योंकि संबंधित आइटम मेल नहीं खाते हैं।
एक अन्य संबंधित मिलान, containsInAnyOrder
, checks कि वास्तव में उन वस्तुओं मौजूद हैं, लेकिन किसी भी क्रम में:
है कि जब जांच की Iterable
आने वाले एक पास की एक श्रृंखला पैदावार से मेल खाता है Iterables
के लिए एक आदेश नास्तिक मिलान बनाता है आइटम, निर्दिष्ट वस्तुओं में प्रत्येक आइटम को तार्किक रूप से एक आइटम के बराबर।
एक लापता आइटम के साथ एक परीक्षण में विफल रहता है:
assertThat(c, containsInAnyOrder("one", "two")); // Fails
लेकिन एक अलग आदेश में सभी आइटम पारित करेंगे:
assertThat(c, containsInAnyOrder("three", "two", "one"));