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

/test/integration/general/ProveedorControllerIntegrationTests.groovy

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