1. 22 Feb, 2021 2 commits
    • Administrator's avatar
      Updates project for the new course · 86fff9ac
      Administrator authored
      Some minor changes have been done to update the project and adapt it
      to some depencencies updates.
      86fff9ac
    • Administrator's avatar
      Simplifies the configuration of the AuthorizationFilter · 1850f97d
      Administrator authored
      The AuthorizationFilter is used by the test to simulate the HTTP basic
      authentication. It was initially programmed to just allow access to the
      "people" path.
      
      This commit modifies this filter so that now it is easier to include
      more paths accessible by the administrator.
      1850f97d
  2. 18 Feb, 2019 1 commit
  3. 09 Feb, 2019 1 commit
    • Administrator's avatar
      Changes authentication to HTTP Basic · 6fd8f7ef
      Administrator authored
      The user authentication was currently done using a cookie and following
      the same style of token as the HTTP Basic authentication (i.e. a
      concatenation of user and password joined with a ':' encoded with
      base64).
      
      This authentication has been replaced by a standard HTTP Basic
      authentication.
      6fd8f7ef
  4. 02 Mar, 2018 1 commit
    • Administrator's avatar
      Modifies HasHttpStatus matcher for a more descriptive message · 0ee6f4fa
      Administrator authored
      The message showed currently by the HasHttpStatus when de expected
      status didn't match the actual status was not very informative, as
      the actual status was not shown in the message.
      
      This commit modifies this behaviour to show both status (expected and
      actual) in the message.
      0ee6f4fa
  5. 16 Feb, 2018 1 commit
    • Administrator's avatar
      Fixes acceptance tests · 100a9dad
      Administrator authored
      Commit 9ef1c405 redesigned the user interface by introducing Bootstrap.
      Although the structure changes where minimal, the changes on class types
      caused the page object classes' selectors to fail.
      
      This commit fixes this error and, in addition, fixes an unexpected error
      on person deletion. This error was caused due to a missing wait for an
      AJAX request response.
      100a9dad
  6. 08 Feb, 2017 1 commit
    • Administrator's avatar
      Adds equals and hashCode tests · 940c14a8
      Administrator authored
      The EqualsVerifier library has been added to test the equals and hashCode
      methods and it has been used to test the Person entity.
      940c14a8
  7. 07 Feb, 2017 1 commit
  8. 19 Apr, 2016 2 commits
  9. 24 Feb, 2016 1 commit
    • Administrator's avatar
      Refactorizes and improves the tests · 234b3fb9
      Administrator authored
      The tests classes have been simplified by delegating some of the
      functions in the test classes to external utility classes. For example,
      a PeopleDataset has been added to manage the dataset or the
      IsEqualToEntity Hamcrest matcher has been added to simplify entity
      comparisons.
      
      In addition, a PersonUnitTest class has been added to test the Person
      entity.
      234b3fb9
  10. 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
  11. 18 Feb, 2015 1 commit
  12. 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
  13. 04 Feb, 2015 2 commits
    • Administrator's avatar
      Annotations for web configuration. · 29daab8f
      Administrator authored
      Web configuration for REST services and login filter was moved from the
      web.xml file to code annotations.
      29daab8f
    • Administrator's avatar
      POM review and improvement, and project cleaning. · b45f3656
      Administrator authored
      POM was reviewed to update the dependencies of the project to the last
      version and to improve the test execution.
      
      Now it is possible to run the project with the testing database in a
      Tomcat Server v7.0 using the mvn tomcat7:run goal. In addition, Selenium
      tests now are executed as integration tests, starting the web server
      before the test execution and stoping it after the tests end. Finally,
      support for generating regular and cobertura test reports in HTML format
      was also added.
      
      The project was also cleaned by removing the MANIFEST.MF files and by
      reallocating the SQL files.
      b45f3656
  14. 19 Feb, 2014 2 commits
    • michada's avatar
      Test report generation added and minor code cleaning. · 8b9eed22
      michada authored
      Sunfire report generation plugin added to pom.xml.
      
      Minor code cleaning in pom.xml and PeopleWebTest class.
      8b9eed22
    • 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
  15. 15 Feb, 2014 1 commit
    • 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