Book Image

Expert Angular

By : Sridhar Rao Chivukula
Book Image

Expert Angular

By: Sridhar Rao Chivukula

Overview of this book

Got some experience of Angular under your belt? Want to learn everything about using advanced features for developing websites? This book is everything you need for the deep understanding of Angular that will set you apart from the developer crowd. Angular has introduced a new way to build applications. Creating complex and rich web applications, with a lighter resource footprint, has never been easier or faster. Angular is now at release 4, with significant changes through previous versions. This book has been written and tested for Angular release 4. Angular is a mature technology, and you'll likely have applications built with earlier versions. This book starts by showing you best practices and approaches to migrating your existing Angular applications so that you can be immediately up-to-date. You will take an in-depth look at components and see how to control the user journey in your applications by implementing routing and navigation. You will learn how to work with asynchronous programming by using Observables. To easily build applications that look great, you will learn all about template syntax and how to beautify applications with Material Design. Mastering forms and data binding will further speed up your application development time. Learning about managing services and animations will help you to progressively enhance your applications. Next you’ll use native directives to integrate Bootstrap with Angular. You will see the best ways to test your application with the leading options such as Jasmine and Protractor. At the end of the book, you’ll learn how to apply design patterns in Angular, and see the benefits they will bring to your development.
Table of Contents (18 chapters)

Introduction to Jasmine framework

Jasmine is a behavior-driven development framework for testing JavaScript code. This is how the official site explains Jasmine:

Jasmine is a behavior-driven development framework for testing JavaScript code. It does not depend on any other JavaScript frameworks. It does not require a DOM. And it has a clean, obvious syntax so that you can easily write tests.

The general syntax of a Jasmine test suite is given as follows:

describe("Sample Test Suite", function() {
it("This is a spec that defines test", function() {
expect statement // asserts the logic etc
});
});

Let's analyze the preceding code snippet to understand the test suite syntax. The following steps have been followed:

  1. Every Jasmine test suite will have a describe statement, where we can give a name.
  2. Inside the test suite, we create smaller tests cases using...