Package demo.api

Source Code of demo.api.UsersIT

package demo.api;

import demo.model.User;
import org.junit.Test;
import org.springframework.web.client.RestTemplate;

import java.net.URI;
import java.util.List;

import static junit.framework.Assert.assertEquals;
import static junit.framework.Assert.assertNotNull;

/**
* Users integration tests.
*/
public class UsersIT {

    // - instance methods -------------------------------------------

    @Test
    public void testUsers() {
        RestTemplate restTemplate = new RestTemplate();
        final String usersURL = "http://127.0.0.1:8082/api/users";

        // lista de usuarios
        List result = restTemplate.getForObject(usersURL, List.class);
        assertNotNull(result);

        final int initialSize = result.size();

        // alta de usuario
        User user = new User();
        user.setName("Maria");
        user.setEmail("maria@fakemail.com");
        user.setActive(true);

        URI uri = restTemplate.postForLocation(usersURL, user);
        user = restTemplate.getForObject(uri, User.class);

        assertNotNull(user.getID());

        result = restTemplate.getForObject(usersURL, List.class);
        assertEquals(initialSize + 1, result.size());

        // modificación de usuario
        user.setName("Netolica");
        restTemplate.put(usersURL + "/{id}", user, user.getID());
        user = restTemplate.getForObject(usersURL + "/{id}", User.class, user.getID());

        assertEquals("Netolica", user.getName());

        // borrado de usuario
        restTemplate.delete(usersURL + "/{id}", user.getID());
        result = restTemplate.getForObject(usersURL, List.class);
        assertEquals(initialSize, result.size());
    }

}
TOP

Related Classes of demo.api.UsersIT

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.