PageRenderTime 82ms CodeModel.GetById 40ms app.highlight 7ms RepoModel.GetById 33ms app.codeStats 0ms

/test/integration/general/OrganizacionControllerIntegrationTests.groovy

http://github.com/jdmr/mateo
Groovy | 97 lines | 81 code | 16 blank | 0 comment | 1 complexity | 317fbff82c1dc4be45eb6421bfe92998 MD5 | raw file
 1package general
 2
 3import grails.test.*
 4import grails.test.mixin.*
 5import org.junit.*
 6
 7@TestFor(OrganizacionController)
 8class OrganizacionControllerIntegrationTests extends BaseIntegrationTest {
 9
10    @Test
11    void debieraMostrarListaDeOrganizaciones() {
12        authenticateAdmin()
13        for(i in 1..20) {
14            new Organizacion (
15                codigo: "TST$i"
16                , nombre: "TEST-$i"
17                , nombreCompleto : "TEST$i"
18            ).save()
19        }
20
21        def controller = new OrganizacionController()
22        controller.index()
23        assert '/organizacion/lista', controller.response.redirectedUrl
24
25        def model = controller.lista()
26        assertEquals 10, model.organizaciones.size()
27        assert 20 <= model.totalDeOrganizaciones
28    }
29
30    @Test
31    void debieraCrearOrganizacion() {
32        authenticateAdmin()
33        def controller = new OrganizacionController()
34        def model = controller.nueva()
35        assert model
36        assert model.organizacion
37
38        controller.params.codigo = 'TST1'
39        controller.params.nombre = 'TEST-1'
40        controller.params.nombreCompleto = 'TEST-1'
41        controller.crea()
42        assert controller.response.redirectedUrl.startsWith('/empresa/edita')
43    }
44
45    @Test
46    void debieraActualizarOrganizacion() {
47        authenticateAdmin()
48        def organizacion = new Organizacion (
49            codigo: 'TST1'
50            , nombre: 'TEST-1'
51            , nombreCompleto: 'TEST-1'
52        ).save()
53
54        def controller = new OrganizacionController()
55        controller.params.id = organizacion.id
56        def model = controller.ver()
57        assert model.organizacion
58        assertEquals 'TEST-1', model.organizacion.nombre
59
60        controller.params.id = organizacion.id
61        model = controller.edita()
62        assert model.organizacion
63        assertEquals 'TEST-1', model.organizacion.nombre
64
65        controller.params.id = organizacion.id
66        controller.params.version = organizacion.version
67        controller.params.nombre = 'TEST-2'
68        controller.actualiza()
69        assertEquals "/organizacion/ver/${organizacion.id}", controller.response.redirectedUrl
70
71        organizacion.refresh()
72        assertEquals 'TEST-2', organizacion.nombre
73    }
74
75    @Test
76    void debieraEliminarOrganizacion() {
77        authenticateAdmin()
78        def organizacion = new Organizacion (
79            codigo: 'TST1'
80            , nombre: 'TEST-1'
81            , nombreCompleto: 'TEST-1'
82        ).save()
83
84        def controller = new OrganizacionController()
85        controller.params.id = organizacion.id
86        def model = controller.ver()
87        assert model.organizacion
88        assertEquals 'TEST-1', model.organizacion.nombre
89
90        controller.params.id = organizacion.id
91        controller.elimina()
92        assertEquals "/organizacion/lista", controller.response.redirectedUrl
93
94        model = Organizacion.get(organizacion.id)
95        assert !model
96    }
97}