assertj / assertj/assertj-db

How to check value on a Postgres JsonB field?

Offen
#101 3 Kommentare 0 Reaktionen 1 zugewiesene Person Beansprucht von @VanRoy Auf GitHub ansehen
enhancement question
Vorherrschende Sprache
Java
Sterne
130
Forks
21
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

I trying to check the values inserted on a table where a field is of the type `jsonb`.

When I run something like this:
```java
assertThat(eventsTable)
.row(0)
.value("data").isEqualTo("{\"key\": \"value\"}");
```
I get the following error:
```
[Value at index 0 (column name : DATA) of Row at index 0 of events table]
Expecting:
<{"key": "value"}>
to be of type
<[TEXT, NUMBER, DATE, TIME, DATE_TIME, UUID]>
but was of type
(org.postgresql.util.PGobject)
```

Here is the table content:
```
[events table]
|-----------|---------|-------------------------------------------------------|
| | | |
| | PRIMARY | DATA |
| | KEY | (NOT_IDENTIFIED : class org.postgresql.util.PGobject) |
| | | Index : 0 |
|-----------|---------|-------------------------------------------------------|
| Index : 0 | | {"key": "value"} |
|-----------|---------|-------------------------------------------------------|
```
Using assertj-db 2.0.0

Is there any way I can check the content of a PostgreSQL `jsonb` column?

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.