Вот соответствующий фрагмент кода: р>
Код: Выделить всё
package example.cashcard;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.json.JsonTest;
import org.springframework.boot.test.json.JacksonTester;
import java.io.IOException;
import static org.assertj.core.api.Assertions.assertThat;
@JsonTest
class CashCardJsonTest {
@Autowired
private JacksonTester json;
@Test
void cashCardDeserializationTest() throws IOException {
String expected = """
{
"id":99,
"amount":123.45
}
""";
assertThat(json.parse(expected))
.isEqualTo(new CashCard(1000L, 67.89));
assertThat(json.parseObject(expected).id()).isEqualTo(1000);
assertThat(json.parseObject(expected).amount()).isEqualTo(67.89);
}
}
Поскольку тест работает в любом случае, может ли кто-нибудь объяснить разницу между json.parse() и json.parseObject(), и почему мы должны использовать parse() в первом утверждении, а не parseObject() ? Или, точнее, зачем нам использовать ObjectContent вместо самой CashCard, если они, похоже, ведут себя одинаково? Может ли кто-нибудь указать мне руководство/соглашение о том, что рекомендуется и в каком случае?
Спасибо
Поскольку тест работает в любом случае, может ли кто-нибудь объяснить разницу между json.parse() и json.parseObject() и почему мы должны использовать parse() в первом утверждении, а не parseObject()? Или, точнее, зачем нам использовать ObjectContent вместо самой CashCard, если они, кажется, ведут себя одинаково? Может ли кто-нибудь указать мне руководство/соглашение о том, что рекомендуется и в каком случае?
Спасибо
Подробнее здесь: https://stackoverflow.com/questions/790 ... -in-spring