AbstractJsonMarshalTester

Base class for AssertJ based JSON marshal testers. Exposes specific Asserts following a read, write or parse of JSON content. Typically used in combination with an AssertJ assertThat call. For example:

public class ExampleObjectJsonTests {

    private AbstractJsonTester<ExampleObject> json = //...

    @Test
    public void testWriteJson() {
        ExampleObject object = //...
        assertThat(json.write(object)).isEqualToJson("expected.json");
        assertThat(json.read("expected.json")).isEqualTo(object);
    }

}
For a complete list of supported assertions see JsonContentAssert and ObjectContentAssert.

To use this library JSONAssert must be on the test classpath.

Author

Phillip Webb

Since

1.4.0

Parameters

<T>

the type under test

See also

Inheritors

Constructors

Link copied to clipboard
constructor(resourceLoadClass: Class<out Any>, type: ResolvableType)
Create a new AbstractJsonMarshalTester instance.

Functions

Link copied to clipboard
open fun parse(jsonBytes: Array<Byte>): ObjectContent<T>
Return ObjectContent from parsing the specific JSON bytes.
open fun parse(jsonString: String): ObjectContent<T>
Return ObjectContent from parsing the specific JSON String.
Link copied to clipboard
open fun parseObject(jsonBytes: Array<Byte>): T
Return the object created from parsing the specific JSON bytes.
open fun parseObject(jsonString: String): T
Return the object created from parsing the specific JSON String.
Link copied to clipboard
open fun read(file: File): ObjectContent<T>
Return ObjectContent from reading from the specified file.
open fun read(inputStream: InputStream): ObjectContent<T>
Return ObjectContent from reading from the specified input stream.
open fun read(reader: Reader): ObjectContent<T>
Return ObjectContent from reading from the specified reader.
open fun read(resourcePath: String): ObjectContent<T>
Return ObjectContent from reading from the specified classpath resource.
open fun read(resource: Resource): ObjectContent<T>
Return ObjectContent from reading from the specified resource.
Link copied to clipboard
open fun readObject(file: File): T
Return the object created from reading from the specified file.
open fun readObject(inputStream: InputStream): T
Return the object created from reading from the specified input stream.
open fun readObject(reader: Reader): T
Return the object created from reading from the specified reader.
open fun readObject(resourcePath: String): T
Return the object created from reading from the specified classpath resource.
open fun readObject(resource: Resource): T
Return the object created from reading from the specified resource.
Link copied to clipboard
open fun write(value: T): JsonContent<T>
Return JsonContent from writing the specific value.