PageRenderTime 36ms CodeModel.GetById 25ms RepoModel.GetById 0ms app.codeStats 0ms

/test/integration/inventario/TipoProductoControllerIntegrationTests.groovy

http://github.com/jdmr/mateo
Groovy | 188 lines | 150 code | 30 blank | 8 comment | 1 complexity | b6a6917d6d594ee0392a592a1f5dbc6b MD5 | raw file
  1. package inventario
  2. import general.*
  3. import grails.test.*
  4. import grails.test.mixin.*
  5. import org.junit.*
  6. @TestFor(TipoProductoController)
  7. class TipoProductoControllerIntegrationTests extends BaseIntegrationTest {
  8. def springSecurityService
  9. @Test
  10. void debieraMostrarListaDeTipoProductos() {
  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 almacen = new Almacen (
  24. codigo: "TEST"
  25. , nombre: "TEST"
  26. , empresa : empresa
  27. ).save()
  28. for(i in 1..20) {
  29. // def tipoP =
  30. new TipoProducto (
  31. nombre: "TEST-$i"
  32. , descripcion: "TEST-$i"
  33. , almacen : almacen
  34. ).save()
  35. // assertNotNull tipoP
  36. }
  37. def controller = new TipoProductoController()
  38. controller.springSecurityService = springSecurityService
  39. controller.index()
  40. assertEquals '/tipoProducto/lista', controller.response.redirectedUrl
  41. def model = controller.lista()
  42. assertEquals 10, model.tipoProductos.size()
  43. assert 20 <= model.totalDeTipoProductos
  44. }
  45. @Test
  46. void debieraCrearTipoProducto() {
  47. authenticateAdmin()
  48. def organizacion = new Organizacion (
  49. codigo: 'TST1'
  50. , nombre: 'TEST-1'
  51. , nombreCompleto: 'TEST-1'
  52. ).save()
  53. def empresa = new Empresa (
  54. codigo: 'TST1'
  55. , nombre: 'TEST-1'
  56. , nombreCompleto: 'TEST-1'
  57. , organizacion: organizacion
  58. ).save()
  59. def almacen = new Almacen (
  60. codigo: "TEST-1"
  61. , nombre: "TEST-1"
  62. , empresa : empresa
  63. ).save()
  64. // def currentUser = springSecurityService.currentUser
  65. // currentUser.empresa = empresa
  66. def controller = new TipoProductoController()
  67. controller.springSecurityService = springSecurityService
  68. def model = controller.nuevo()
  69. assert model.tipoProducto
  70. controller.params.nombre = 'TEST-1'
  71. controller.params.descripcion = 'TEST-1'
  72. controller.params.almacen = almacen
  73. controller.crea()
  74. assert controller.response.redirectedUrl.startsWith('/tipoProducto/ver')
  75. }
  76. @Test
  77. void debieraActualizarTipoProducto() {
  78. authenticateAdmin()
  79. def organizacion = new Organizacion (
  80. codigo: 'TST1'
  81. , nombre: 'TEST-1'
  82. , nombreCompleto: 'TEST-1'
  83. ).save()
  84. def empresa = new Empresa (
  85. codigo: 'TST1'
  86. , nombre: 'TEST-1'
  87. , nombreCompleto: 'TEST-1'
  88. , organizacion: organizacion
  89. ).save()
  90. def almacen = new Almacen (
  91. codigo: "TEST-1"
  92. , nombre: "TEST-1"
  93. , empresa : empresa
  94. ).save()
  95. // def currentUser = springSecurityService.currentUser
  96. // currentUser.empresa = empresa
  97. def tipoProducto = new TipoProducto (
  98. nombre: "TE-"
  99. , descripcion: "TEST"
  100. , almacen: almacen
  101. ).save()
  102. def controller = new TipoProductoController()
  103. controller.springSecurityService = springSecurityService
  104. controller.params.id = tipoProducto.id
  105. def model = controller.ver()
  106. assert model.tipoProducto
  107. assertEquals 'TE-', model.tipoProducto.nombre
  108. controller.params.id = tipoProducto.id
  109. model = controller.edita()
  110. assert model.tipoProducto
  111. assertEquals 'TE-', model.tipoProducto.nombre
  112. controller.params.id = tipoProducto.id
  113. controller.params.version = tipoProducto.version
  114. controller.params.nombre = 'TST'
  115. controller.actualiza()
  116. assertEquals "/tipoProducto/ver/${tipoProducto.id}", controller.response.redirectedUrl
  117. almacen.refresh()
  118. assertEquals 'TST', tipoProducto.nombre
  119. }
  120. @Test
  121. void debieraEliminarTipoProducto() {
  122. authenticateAdmin()
  123. def organizacion = new Organizacion (
  124. codigo: 'TST1'
  125. , nombre: 'TEST-1'
  126. , nombreCompleto: 'TEST-1'
  127. ).save()
  128. def empresa = new Empresa (
  129. codigo: 'TST1'
  130. , nombre: 'TEST-1'
  131. , nombreCompleto: 'TEST-1'
  132. , organizacion: organizacion
  133. ).save()
  134. def almacen = new Almacen (
  135. codigo: "TST-2"
  136. , nombre: "TEST-1"
  137. , empresa : empresa
  138. ).save()
  139. // def currentUser = springSecurityService.currentUser
  140. // currentUser.empresa = empresa
  141. def tipoProducto = new TipoProducto (
  142. nombre: "TE-"
  143. , descripcion: "TEST"
  144. , almacen: almacen
  145. ).save()
  146. def controller = new TipoProductoController()
  147. controller.springSecurityService = springSecurityService
  148. controller.params.id = tipoProducto.id
  149. def model = controller.ver()
  150. assert model.tipoProducto
  151. assertEquals 'TE-', model.tipoProducto.nombre
  152. controller.params.id = tipoProducto.id
  153. controller.elimina()
  154. assertEquals "/tipoProducto/lista", controller.response.redirectedUrl
  155. model = TipoProducto.get(tipoProducto.id)
  156. assert !model
  157. }
  158. }