Skip to content
This repository has been archived by the owner on Feb 26, 2024. It is now read-only.

chore(package): update to Protractor 4.x #378

Closed
wants to merge 16 commits into from

Commits on Jul 7, 2016

  1. step-0 Bootstrapping

    - Add the 'angular.js' script.
    - Add the `ngApp` directive to bootstrap the application.
    - Add a simple template with an expression.
    IgorMinar authored and petebacondarwin committed Jul 7, 2016
    Copy the full SHA
    32e2fe2 View commit details
    Browse the repository at this point in the history
  2. step-1 Static Template

    - Add a stylesheet file ('app/app.css').
    - Add a static list with two phones.
    petebacondarwin committed Jul 7, 2016
    Copy the full SHA
    822f224 View commit details
    Browse the repository at this point in the history
  3. step-2 Angular Templates

    - Convert the static phone list to dynamic by:
      - Creating a `PhoneListController` controller.
      - Extracting the data from HTML into the controller as an in-memory dataset.
      - Converting the static document into a template with the use of the `ngRepeat` directive.
    - Add a simple unit test for the `PhoneListController` controller to show how to write tests and
      run them using Karma (see README.md for instructions).
    petebacondarwin committed Jul 7, 2016
    Copy the full SHA
    a8180b7 View commit details
    Browse the repository at this point in the history
  4. step-3 Components

    - Introduce components.
    - Combine the controller and the template into a reusable, isolated `phoneList` component.
    - Refactor the application and tests to use the `phoneList` component.
    gkalpak authored and petebacondarwin committed Jul 7, 2016
    Copy the full SHA
    95ab340 View commit details
    Browse the repository at this point in the history
  5. step-4 Directory and File Organization

    - Refactor the layout of files and directories, applying best practices and techniques that will
      make the application easier to maintain and expand in the future:
      - Put each entity in its own file.
      - Organize code by feature area (instead of by function).
      - Split code into modules that other modules can depend on.
      - Use external templates in `.html` files (instead of inline HTML strings).
    gkalpak authored and petebacondarwin committed Jul 7, 2016
    Copy the full SHA
    401ee34 View commit details
    Browse the repository at this point in the history
  6. step-5 Filtering Repeaters

    - Add a search box to demonstrate:
      - How the data-binding works on input fields.
      - How to use the `filter` filter.
      - How `ngRepeat` automatically shrinks and grows the number of phones in the view.
    - Add an end-to-end test to:
      - Show how end-to-end tests are written and used.
      - Prove that the search box and the repeater are correctly wired together.
    gkalpak authored and petebacondarwin committed Jul 7, 2016
    Copy the full SHA
    5da7558 View commit details
    Browse the repository at this point in the history
  7. step-6 Two-way Data Binding

    - Add an `age` property to the phone model.
    - Add a drop-down menu to control the phone list order.
    - Override the default order value in controller.
    - Add unit and end-to-end tests for this feature.
    
    Closes angular#213
    petebacondarwin committed Jul 7, 2016
    Copy the full SHA
    647e65a View commit details
    Browse the repository at this point in the history
  8. step-7 XHR & Dependency Injection

    - Replace the in-memory dataset with data loaded from the server (in the form of a static
      'phone.json' file to keep the tutorial backend agnostic):
      - The JSON data is loaded using the `$http` service.
    - Demonstrate the use of `services` and `dependency injection` (DI):
      - `$http` is injected into the controller through DI.
      - Introduce DI annotation methods: `.$inject` and inline array
    
    Closes angular#207
    petebacondarwin committed Jul 7, 2016
    Copy the full SHA
    724cff7 View commit details
    Browse the repository at this point in the history
  9. step-8 Templating Links & Images

    - Add a phone image and links to phone pages.
    - Add an end-to-end test that verifies the phone links.
    - Tweak the CSS to style the page just a notch.
    petebacondarwin committed Jul 7, 2016
    Copy the full SHA
    4471508 View commit details
    Browse the repository at this point in the history
  10. step-9 Routing & Multiple Views

    - Introduce the `$route` service, which allows binding URLs to views for routing and deep-linking:
      - Add the `ngRoute` module as a dependency.
      - Configure routes for the application.
      - Use the `ngView` directive in 'index.html'.
    - Create a phone list route (`/phones`):
      - Map `/phones` to the existing `phoneList` component.
    - Create a phone detail route (`/phones/:phoneId`):
      - Map `/phones/:phoneId` to a new `phoneDetail` component.
      - Create a dummy `phoneDetail` component, which displays the selected phone ID.
      - Pass the `phoneId` parameter to the component's controller via `$routeParams`.
    petebacondarwin committed Jul 7, 2016
    3
    Copy the full SHA
    a721374 View commit details
    Browse the repository at this point in the history
  11. step-10 More Templating

    - Implement fetching data for the selected phone and rendering to the view:
      - Use `$http` in `PhoneDetailController` to fetch the phone details from a JSON file.
      - Create the template for the detail view.
    - Add CSS styles to make the phone detail page look "pretty-ish".
    petebacondarwin committed Jul 7, 2016
    Copy the full SHA
    d1d95d8 View commit details
    Browse the repository at this point in the history
  12. step-11 Custom Filters

    - Implement a custom `checkmark` filter.
    - Update the `phoneDetail` template to use the `checkmark` filter.
    - Add a unit test for the `checkmark` filter.
    IgorMinar authored and petebacondarwin committed Jul 7, 2016
    Copy the full SHA
    3c21d0d View commit details
    Browse the repository at this point in the history
  13. step-12 Event Handlers

    - Make the thumbnail images in the phone detail view clickable:
      - Introduce a `mainImageUrl` property on `PhoneDetailController`.
      - Implement the `setImage()` method for changing the main image.
      - Use `ngClick` on the thumbnails to register a handler that changes the main image.
      - Add an end-to-end test for this feature.
    IgorMinar authored and petebacondarwin committed Jul 7, 2016
    Copy the full SHA
    9307517 View commit details
    Browse the repository at this point in the history
  14. step-13 REST and Custom Services

    - Replace `$http` with `$resource`.
    - Create a custom `Phone` service that represents the RESTful client.
    - Use a custom Jasmine equality tester in unit tests to ignore irrelevant properties.
    petebacondarwin committed Jul 7, 2016
    Copy the full SHA
    bfed542 View commit details
    Browse the repository at this point in the history
  15. step-14 Animations

    - Add animations to the application:
      - Animate changes to the phone list, adding, removing and reordering phones with `ngRepeat`.
      - Animate view transitions with `ngView`.
      - Animate changes to the main phone image in the phone detail view.
    - Showcase three different kinds of animations:
      - CSS transition animations.
      - CSS keyframe animations.
      - JavaScript-based animations.
    petebacondarwin committed Jul 7, 2016
    Copy the full SHA
    2ccda1d View commit details
    Browse the repository at this point in the history

Commits on Oct 18, 2016

  1. Copy the full SHA
    122e1a3 View commit details
    Browse the repository at this point in the history