assertj / assertj/assertj

[Feature request] Allow element navigation for Arrays (as available for Lists)

Open
#2,511 3 comments 1 reaction 0 assignees View on GitHub
status: team discussion
Dominant language
Java
Stars
2.8k
Forks
788
Avg merge
14h 57m
Merged PRs (30d)
36

Description

#### Summary

For assertions on Lists, there are pretty nice methods to chain assertions on individual list elements as defined in `AbstractIterableAssert`, such as `element(int index)`, `first()`, `last()` and so on.

It would be awesome to be able to have such methods available for Arrays as well.

#### Example

Currently one needs to do two assertion commands for things like this:

```java
String[] testObj = new ClassUnderTest().getResultArray();

assertThat(testObject).isNotNull().isExactlyInstanceOf(String[].class);
assertThat(String[0]).isEqualTo("expectedValue");
```

It would be nice be able to do:

```java
String[] testObj = new ClassUnderTest().getResultArray();

assertThat(testObject).isNotNull().isExactlyInstanceOf(String[].class)
.element(0).isEqualTo("expectedValue");

// or

assertThat(testObject).isNotNull().isExactlyInstanceOf(String[].class)
.first().isEqualTo("expectedValue");
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.