1. 16 Feb, 2016 1 commit
    • Administrator's avatar
      Refactorizes the whole project for a simpler testing and execution · bf91733b
      Administrator authored
      A big refactorization has been done in this commit, focused on
      simplifying the testing and execution process. The Spring-DbUnit library
      has been added to allow the use of DbUnit through annotations in the
      test classes. This change has been complemented with two new test
      listeners that allow the creation of custom initial contexts and the use
      of custom SQL scripts to create and destroy the database tables before
      and after the test execution, respectively. In addition, all the tests
      are executed now using a HSQLDB database.
      
      The datasource configuration has been pulled out of the project, and now
      it must be provided by the container.
      
      The sample classes have been reviewed, refactorized and documented with
      JavaDoc.
      
      The POM file has been reworked to ease test and application execution
      using maven. The new execution modes are:
      	- The default execution includes unit, integration and acceptance (with
      Selenium) test execution.
      	- No acceptance tests: mvn -P -acceptance-tests-cargo <phase>
      	- Run server for manual acceptance tests: mvn
      -Dcargo.tomcat.start.skip=true -Dcargo.tomcat.run.skip=false
      -DskipTests=true pre-integration-test 
      	- Run server with MySQL database: mvn -P
      run-tomcat-mysql,-acceptance-tests-cargo -DskipTests=true package
      cargo:run
      bf91733b
  2. 11 Feb, 2015 1 commit
    • Administrator's avatar
      Testing improvement · 63347867
      Administrator authored
      Several testing improvement have been done:
      	- Cobertura plugin was replaced by JaCoCo plugin that supports Java 8
      syntax.
      	- Unit tests with a controller fixtured using EasyMock were added for
      PeopleDAO and PeopleResource.
      	- POM was reviewed, reordered and reformatted.
      	- Test classes naming was reviewed and standarized.
      	- Three test suites were added to group the unit, integration, and
      acceptance tests.
      	- Naming context management done in TestUtils was improved. 
      63347867
  3. 04 Feb, 2015 3 commits
  4. 19 Feb, 2014 1 commit
    • michada's avatar
      Login method modification. · cf184b2c
      michada authored
      New login method based in HTTP's Basic Authentication used. This new
      method eliminates the need of the database supporting the SHA256
      algorithm and facilitates the future use of Basic Authentication.
      
      Tests were updated to use the new token encoding.
      cf184b2c
  5. 15 Feb, 2014 2 commits
    • michada's avatar
      Tests for people management functionality added. · dfbb5e3a
      michada authored
      DAO class modified to support and alternative JNDI for the data source
      through the "db.jndi" system property. A new testing database resource
      was added to the Context.xml file.
      
      DAO tests use the "spring-test" library to create a JNDI context, as
      JUnit doesn't create any context. Additionaly, a custom DataSource is
      created using the "commons-dbcp" library and injected into the context.
      Testing database creation scripts are provided in the mysql-tests.sql
      file.
      
      REST API is tested in the server side using the
      "jersey-test-framework-provider-grizzly2" library. These tests also use
      the "spring-test" and "commons-dbcp" libraries to create a context and
      inject a custom data source.
      
      REST API is tested in the client side using the "Selenium IDE" and
      "RESTClient" plugins for Firefox. Manual database reset is required
      before launching the test suite.
      
      Web interface is tested using the "Selenium IDE" plugin for Firefox and
      using the "Selenium WebDrive" in JUnit tests. Same tests are implemented
      in both cases. Selenium IDE tests require a manual database reset before
      launching the test suite. JUnit test require the server to be started
      using the testing database.
      dfbb5e3a
    • michada's avatar
      Better error management in people DAO and REST API. · bf0490de
      michada authored
      PeopleDAO functions now throw an IllegalArgumentException when an
      invalid id or a null name or surname are provided. People's REST API
      modified to return a "Bad Request" status when an
      IllegalArgumentException is catched.
      bf0490de
  6. 12 Feb, 2014 1 commit
  7. 11 Feb, 2014 1 commit
    • michada's avatar
      Added login capabilities. · 41c409da
      michada authored
      Access to any resource except index.html can be restricted enabling the
      LoginFilter in the web.xml configuration file. It is currently disabled.
      
      Old index.html moved to main.html and replaced with an index.html that
      contains a login form.
      41c409da
  8. 10 Feb, 2014 2 commits
    • michada's avatar
      RESTful API correction. · 7e143670
      michada authored
      RESTful API modified to use PUT, DELETE, POST and GET methods.
      7e143670
    • michada's avatar
      First working version. · 7de0b1a9
      michada authored
      In this first version, this applicacion includes a complete CRUD using
      an AJAX+JSON+REST architecture.
      7de0b1a9