Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @TestFor(LagerortController)
- @Mock(Lagerort)
- class LagerortControllerSpec extends Specification {
- def populateValidParams(params) {
- assert params != null
- params["lagerort"] = 'Fa.Conrad'
- params["lagertyp"] = ["lagertyp": 'Fa.Conrad', "beschreibung": 'Motor befindet sich bei Fa.Conrad']
- params["beschreibung"] = 'in Reparatur bei Fa. Conrad'
- }
- void "Test the index action returns the correct model"() {
- when:"The index action is executed"
- controller.index()
- then:"The model is correct"
- !model.lagerortList
- model.lagerortCount == 0
- }
- void "Test the create action returns the correct model"() {
- when:"The create action is executed"
- controller.create()
- then:"The model is correctly created"
- model.lagerort!= null
- }
- void "Test the save action correctly persists an instance"() {
- when:"The save action is executed with an invalid instance"
- request.contentType = FORM_CONTENT_TYPE
- request.method = 'POST'
- def lagerort = new Lagerort()
- lagerort.validate()
- controller.save(lagerort)
- then:"The create view is rendered again with the correct model"
- model.lagerort!= null
- view == 'create'
- when:"The save action is executed with a valid instance"
- response.reset()
- populateValidParams(params)
- lagerort = new Lagerort(params)
- controller.save(lagerort)
- then:"A redirect is issued to the show action"
- response.redirectedUrl == '/lagerort/show/1'
- controller.flash.message != null
- Lagerort.count() == 1
- }
- void "Test that the show action returns the correct model"() {
- when:"The show action is executed with a null domain"
- controller.show(null)
- then:"A 404 error is returned"
- response.status == 404
- when:"A domain instance is passed to the show action"
- populateValidParams(params)
- def lagerort = new Lagerort(params)
- controller.show(lagerort)
- then:"A model is populated containing the domain instance"
- model.lagerort == lagerort
- }
- void "Test that the edit action returns the correct model"() {
- when:"The edit action is executed with a null domain"
- controller.edit(null)
- then:"A 404 error is returned"
- response.status == 404
- when:"A domain instance is passed to the edit action"
- populateValidParams(params)
- def lagerort = new Lagerort(params)
- controller.edit(lagerort)
- then:"A model is populated containing the domain instance"
- model.lagerort == lagerort
- }
- void "Test the update action performs an update on a valid domain instance"() {
- when:"Update is called for a domain instance that doesn't exist"
- request.contentType = FORM_CONTENT_TYPE
- request.method = 'PUT'
- controller.update(null)
- then:"A 404 error is returned"
- response.redirectedUrl == '/lagerort/index'
- flash.message != null
- when:"An invalid domain instance is passed to the update action"
- response.reset()
- def lagerort = new Lagerort()
- lagerort.validate()
- controller.update(lagerort)
- then:"The edit view is rendered again with the invalid instance"
- view == 'edit'
- model.lagerort == lagerort
- when:"A valid domain instance is passed to the update action"
- response.reset()
- populateValidParams(params)
- lagerort = new Lagerort(params).save(flush: true)
- controller.update(lagerort)
- then:"A redirect is issued to the show action"
- lagerort != null
- response.redirectedUrl == "/lagerort/show/$lagerort.id"
- flash.message != null
- }
- void "Test that the delete action deletes an instance if it exists"() {
- when:"The delete action is called for a null instance"
- request.contentType = FORM_CONTENT_TYPE
- request.method = 'DELETE'
- controller.delete(null)
- then:"A 404 is returned"
- response.redirectedUrl == '/lagerort/index'
- flash.message != null
- when:"A domain instance is created"
- response.reset()
- populateValidParams(params)
- def lagerort = new Lagerort(params).save(flush: true)
- then:"It exists"
- Lagerort.count() == 1
- when:"The domain instance is passed to the delete action"
- controller.delete(lagerort)
- then:"The instance is deleted"
- Lagerort.count() == 0
- response.redirectedUrl == '/lagerort/index'
- flash.message != null
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement