PageRenderTime 27ms CodeModel.GetById 20ms RepoModel.GetById 0ms app.codeStats 0ms

/test/integration/inventario/AlmacenControllerIntegrationTests.groovy

http://github.com/jdmr/mateo
Groovy | 167 lines | 137 code | 30 blank | 0 comment | 1 complexity | faa3c97e029cde9df546f03e45e8b6ff MD5 | raw file
  1. package inventario
  2. import general.*
  3. import grails.test.*
  4. import grails.test.mixin.*
  5. import org.junit.*
  6. @TestFor(AlmacenController)
  7. class AlmacenControllerIntegrationTests extends BaseIntegrationTest {
  8. def springSecurityService
  9. @Test
  10. void debieraMostrarListaDeAlmacenes() {
  11. authenticateAdmin()
  12. def organizacion = new Organizacion (
  13. codigo: 'TST1'
  14. , nombre: 'TEST-1'
  15. , nombreCompleto: 'TEST-1'
  16. ).save()
  17. def empresa = new Empresa (
  18. codigo: 'TST1'
  19. , nombre: 'TEST-1'
  20. , nombreCompleto: 'TEST-1'
  21. , organizacion: organizacion
  22. ).save()
  23. def currentUser = springSecurityService.currentUser
  24. currentUser.empresa = empresa
  25. for(i in 1..20) {
  26. new Almacen (
  27. codigo: "TEST-$i"
  28. , nombre: "TEST-$i"
  29. , empresa : empresa
  30. ).save()
  31. }
  32. def controller = new AlmacenController()
  33. controller.springSecurityService = springSecurityService
  34. controller.index()
  35. assertEquals '/almacen/lista', controller.response.redirectedUrl
  36. def model = controller.lista()
  37. assertEquals 10, model.almacenes.size()
  38. assert 20 <= model.totalDeAlmacenes
  39. }
  40. @Test
  41. void debieraCrearAlmacen() {
  42. authenticateAdmin()
  43. def organizacion = new Organizacion (
  44. codigo: 'TST1'
  45. , nombre: 'TEST-1'
  46. , nombreCompleto: 'TEST-1'
  47. ).save()
  48. def empresa = new Empresa (
  49. codigo: 'TST1'
  50. , nombre: 'TEST-1'
  51. , nombreCompleto: 'TEST-1'
  52. , organizacion: organizacion
  53. ).save()
  54. def currentUser = springSecurityService.currentUser
  55. currentUser.empresa = empresa
  56. def controller = new AlmacenController()
  57. controller.springSecurityService = springSecurityService
  58. def model = controller.nuevo()
  59. assert model.almacen
  60. controller.params.codigo = 'TEST-1'
  61. controller.params.nombre = 'TEST-1'
  62. controller.crea()
  63. assert controller.response.redirectedUrl.startsWith('/almacen/ver')
  64. }
  65. @Test
  66. void debieraActualizarAlmacen() {
  67. authenticateAdmin()
  68. def organizacion = new Organizacion (
  69. codigo: 'TST1'
  70. , nombre: 'TEST-1'
  71. , nombreCompleto: 'TEST-1'
  72. ).save()
  73. def empresa = new Empresa (
  74. codigo: 'TST1'
  75. , nombre: 'TEST-1'
  76. , nombreCompleto: 'TEST-1'
  77. , organizacion: organizacion
  78. ).save()
  79. def currentUser = springSecurityService.currentUser
  80. currentUser.empresa = empresa
  81. def almacen = new Almacen (
  82. codigo: "TST-1"
  83. , nombre: "TEST-1"
  84. , empresa : empresa
  85. ).save()
  86. def controller = new AlmacenController()
  87. controller.springSecurityService = springSecurityService
  88. controller.params.id = almacen.id
  89. def model = controller.ver()
  90. assert model.almacen
  91. assertEquals 'TST-1', model.almacen.codigo
  92. controller.params.id = almacen.id
  93. model = controller.edita()
  94. assert model.almacen
  95. assertEquals 'TST-1', model.almacen.codigo
  96. controller.params.id = almacen.id
  97. controller.params.version = almacen.version
  98. controller.params.codigo = 'TST-2'
  99. controller.actualiza()
  100. assertEquals "/almacen/ver/${almacen.id}", controller.response.redirectedUrl
  101. almacen.refresh()
  102. assertEquals 'TST-2', almacen.codigo
  103. }
  104. @Test
  105. void debieraEliminarAlmacen() {
  106. authenticateAdmin()
  107. def organizacion = new Organizacion (
  108. codigo: 'TST1'
  109. , nombre: 'TEST-1'
  110. , nombreCompleto: 'TEST-1'
  111. ).save()
  112. def empresa = new Empresa (
  113. codigo: 'TST1'
  114. , nombre: 'TEST-1'
  115. , nombreCompleto: 'TEST-1'
  116. , organizacion: organizacion
  117. ).save()
  118. def currentUser = springSecurityService.currentUser
  119. currentUser.empresa = empresa
  120. def almacen = new Almacen (
  121. codigo: "TST-2"
  122. , nombre: "TEST-1"
  123. , empresa : empresa
  124. ).save()
  125. def controller = new AlmacenController()
  126. controller.springSecurityService = springSecurityService
  127. controller.params.id = almacen.id
  128. def model = controller.ver()
  129. assert model.almacen
  130. assertEquals 'TST-2', model.almacen.codigo
  131. controller.params.id = almacen.id
  132. controller.elimina()
  133. assertEquals "/almacen/lista", controller.response.redirectedUrl
  134. model = Almacen.get(almacen.id)
  135. assert !model
  136. }
  137. }