Book Image

Lift Application Development Cookbook

By : Gilberto Tadeu Garcia Jun
Book Image

Lift Application Development Cookbook

By: Gilberto Tadeu Garcia Jun

Overview of this book

Developing secure web applications is one of the most important tasks developers have to deal with. With Lift, it is easy to create solid and formidable web applications as it is the most secure web framework available today. The View-First approach and being able to handle things as purely data transformation, makes working with Lift an exciting task. "Lift Application Development Cookbook" teaches you how to build web applications using this amazing framework. The book moves gradually, starting with the basics (starting a new project, submitting a form, and so on) before covering more advanced topics such as building a REST API and integrating your application with other technologies and applications. "Lift Application Development Cookbook" takes you on a journey of creating secure web applications. Step-by-step instructions help you understand how things work and how various elements relate to each other. You'll learn different ways to process a form, build dynamic HTML pages, and create an API using REST. You'll also learn how to work with relational and NoSQL databases and how to integrate your application with other technologies as well as with third-part applications such as Gmail and Facebook. By the end of the book, you will be able to understand how Lift works and be able to build web applications using this amazing and exciting framework.
Table of Contents (15 chapters)
Lift Application Development Cookbook
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Testing a REST service using Specs2


As the API is subject to change in the future, it will be nice if we could create automated tests which we can easily run to confirm that we aren't breaking anything when making such changes.

In this recipe, we'll learn how to test REST APIs using Specs2.

Getting ready

As in the previous recipes, you can duplicate the project you used earlier or you can keep modifying the same one by adding the following dependency in the build.sbt file:

"net.liftweb"       %% "lift-testkit"        % liftVersion% "test"

How to do it...

  1. Now, create the specification named ClientsSpec in src/test/scala/ code/rest using the following code:

    package code.rest
    
    import org.specs2.mutable.Specification
    import net.liftweb.mockweb.MockWeb._
    import code.model.Client
    import code.session.ClientCache
    import net.liftweb.http.JsonResponse
    import net.liftweb.json.JsonDSL._
    
    class ClientsSpec extends Specification {
      val clients = Client(1, "First", "[email protected]") ::
        Client(2, "Second...