Example usage for org.springframework.data.rest.webmvc.json.patch Todo Todo

List of usage examples for org.springframework.data.rest.webmvc.json.patch Todo Todo

Introduction

In this page you can find the example usage for org.springframework.data.rest.webmvc.json.patch Todo Todo.

Prototype

public Todo(Long id, String description, boolean complete) 

Source Link

Usage

From source file:org.springframework.data.rest.webmvc.json.patch.JsonPatchTest.java

@Test
public void manySuccessfulOperations() throws Exception {
    // initial Todo list
    List<Todo> todos = new ArrayList<Todo>();
    todos.add(new Todo(1L, "A", true));
    todos.add(new Todo(2L, "B", false));
    todos.add(new Todo(3L, "C", false));
    todos.add(new Todo(4L, "D", false));
    todos.add(new Todo(5L, "E", false));
    todos.add(new Todo(6L, "F", false));

    Patch patch = readJsonPatch("patch-many-successful-operations.json");
    assertEquals(6, patch.size());/*  w  w  w  .  j  av a2 s  . c o  m*/

    List<Todo> patchedTodos = patch.apply(todos, Todo.class);

    assertEquals(6, todos.size());
    assertTrue(patchedTodos.get(1).isComplete());
    assertEquals("C", patchedTodos.get(3).getDescription());
    assertEquals("A", patchedTodos.get(4).getDescription());
}

From source file:org.springframework.data.rest.webmvc.json.patch.JsonPatchTest.java

@Test
public void failureAtBeginning() throws Exception {
    // initial Todo list
    List<Todo> todos = new ArrayList<Todo>();
    todos.add(new Todo(1L, "A", true));
    todos.add(new Todo(2L, "B", false));
    todos.add(new Todo(3L, "C", false));
    todos.add(new Todo(4L, "D", false));
    todos.add(new Todo(5L, "E", false));
    todos.add(new Todo(6L, "F", false));

    Patch patch = readJsonPatch("patch-failing-operation-first.json");

    try {/*w  w w  .ja  v  a 2s.com*/
        patch.apply(todos, Todo.class);
        fail();
    } catch (PatchException e) {
        assertEquals("Test against path '/5/description' failed.", e.getMessage());
    }

    // nothing should have changed
    assertEquals(6, todos.size());
    assertFalse(todos.get(1).isComplete());
    assertEquals("D", todos.get(3).getDescription());
    assertEquals("E", todos.get(4).getDescription());
    assertEquals("F", todos.get(5).getDescription());
}

From source file:org.springframework.data.rest.webmvc.json.patch.JsonPatchTest.java

@Test
public void failureInMiddle() throws Exception {
    // initial Todo list
    List<Todo> todos = new ArrayList<Todo>();
    todos.add(new Todo(1L, "A", true));
    todos.add(new Todo(2L, "B", false));
    todos.add(new Todo(3L, "C", false));
    todos.add(new Todo(4L, "D", false));
    todos.add(new Todo(5L, "E", false));
    todos.add(new Todo(6L, "F", false));

    Patch patch = readJsonPatch("patch-failing-operation-in-middle.json");

    try {/* ww  w.  j  a va2 s .  co  m*/
        patch.apply(todos, Todo.class);
        fail();
    } catch (PatchException e) {
        assertEquals("Test against path '/5/description' failed.", e.getMessage());
    }

    // nothing should have changed
    assertEquals(6, todos.size());
    assertFalse(todos.get(1).isComplete());
    assertEquals("D", todos.get(3).getDescription());
    assertEquals("E", todos.get(4).getDescription());
    assertEquals("F", todos.get(5).getDescription());
}