<surefireAggregatedReport _class='hudson.maven.reporters.SurefireAggregatedReport'><failCount>0</failCount><skipCount>0</skipCount><totalCount>111</totalCount><urlName>testReport</urlName><childReport><child _class='hudson.maven.MavenBuild'><action _class='hudson.maven.reporters.SurefireReport'><failCount>0</failCount><skipCount>0</skipCount><totalCount>45</totalCount><urlName>testReport</urlName></action><action></action><action _class='hudson.maven.reporters.MavenArtifactRecord'><url>http://sing.ei.uvigo.es/dt/jenkins/job/%CE%BCStories%202122%20-%20Team%20B/es.uvigo.esei.dgss.teamB.microstories$dgss2122-teamB-microstories-domain/92/mavenArtifacts/</url></action><action></action><artifact><displayPath>dgss2122-teamB-microstories-domain-0.1.0-SNAPSHOT-javadoc.jar</displayPath><fileName>dgss2122-teamB-microstories-domain-0.1.0-SNAPSHOT-javadoc.jar</fileName><relativePath>es.uvigo.esei.dgss.teamB.microstories/dgss2122-teamB-microstories-domain/0.1.0-SNAPSHOT/dgss2122-teamB-microstories-domain-0.1.0-SNAPSHOT-javadoc.jar</relativePath></artifact><artifact><displayPath>dgss2122-teamB-microstories-domain-0.1.0-SNAPSHOT-sources.jar</displayPath><fileName>dgss2122-teamB-microstories-domain-0.1.0-SNAPSHOT-sources.jar</fileName><relativePath>es.uvigo.esei.dgss.teamB.microstories/dgss2122-teamB-microstories-domain/0.1.0-SNAPSHOT/dgss2122-teamB-microstories-domain-0.1.0-SNAPSHOT-sources.jar</relativePath></artifact><artifact><displayPath>dgss2122-teamB-microstories-domain-0.1.0-SNAPSHOT.jar</displayPath><fileName>dgss2122-teamB-microstories-domain-0.1.0-SNAPSHOT.jar</fileName><relativePath>es.uvigo.esei.dgss.teamB.microstories/dgss2122-teamB-microstories-domain/0.1.0-SNAPSHOT/dgss2122-teamB-microstories-domain-0.1.0-SNAPSHOT.jar</relativePath></artifact><artifact><displayPath>dgss2122-teamB-microstories-domain-0.1.0-SNAPSHOT.pom</displayPath><fileName>dgss2122-teamB-microstories-domain-0.1.0-SNAPSHOT.pom</fileName><relativePath>es.uvigo.esei.dgss.teamB.microstories/dgss2122-teamB-microstories-domain/0.1.0-SNAPSHOT/dgss2122-teamB-microstories-domain-0.1.0-SNAPSHOT.pom</relativePath></artifact><building>false</building><displayName>#92</displayName><duration>13031</duration><estimatedDuration>13168</estimatedDuration><fullDisplayName>μStories 2122 - Team B » Domain #92</fullDisplayName><id>92</id><keepLog>false</keepLog><number>92</number><queueId>-1</queueId><result>SUCCESS</result><timestamp>1639836671891</timestamp><url>http://sing.ei.uvigo.es/dt/jenkins/job/%CE%BCStories%202122%20-%20Team%20B/es.uvigo.esei.dgss.teamB.microstories$dgss2122-teamB-microstories-domain/92/</url><builtOn></builtOn><changeSet _class='hudson.maven.FilteredChangeLogSet'></changeSet><mavenArtifacts><url>http://sing.ei.uvigo.es/dt/jenkins/job/%CE%BCStories%202122%20-%20Team%20B/es.uvigo.esei.dgss.teamB.microstories$dgss2122-teamB-microstories-domain/92/mavenArtifacts/</url></mavenArtifacts></child><result _class='hudson.tasks.junit.TestResult'><duration>0.289</duration><empty>false</empty><failCount>0</failCount><passCount>45</passCount><skipCount>0</skipCount><suite><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.083</duration><failedSince>0</failedSince><name>testMaxSizeText</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.012</duration><failedSince>0</failedSince><name>testInternalAddVisit</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testAddVisitNull</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testNullDate</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testNullText</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testNullSubTopic</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.003</duration><failedSince>0</failedSince><name>testSetSubTopic</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetNullGenre</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetNullTitle</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetNullTopic</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testSetNullDate</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetNullText</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testSetNullAuthor</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.013</duration><failedSince>0</failedSince><name>testStoryDataType</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetPublished</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testEqualsObject</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.002</duration><failedSince>0</failedSince><name>testMaxSizeTitle</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetNullSubTopic</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testMinSizeTitle</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testNullAuthor</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.006</duration><failedSince>0</failedSince><name>testSetAuthor</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testMinSizeText</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.004</duration><failedSince>0</failedSince><name>testSetDate</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetText</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testNullGenre</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.002</duration><failedSince>0</failedSince><name>testNullTitle</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testNullTopic</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetGenre</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testSetTitle</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetTopic</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.VisitTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testNullDate</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.VisitTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetNullStory</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.VisitTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetNullDate</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.VisitTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testEqualsObject</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.VisitTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testVisitDataType</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.VisitTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testSetDate</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.VisitTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testNullStory</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.VisitTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetStory</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.UserTest</className><duration>0.002</duration><failedSince>0</failedSince><name>testRemoveStoryToFavorites</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.UserTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testSetPassword</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.UserTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetNullPassword</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.UserTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testSetNullRole</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.UserTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testAddStoryToFavorites</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.UserTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testSetTooShortPassword</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.domain.UserTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testUserDataType</name><skipped>false</skipped><status>PASSED</status></case><duration>0.289</duration><name>es.uvigo.esei.dgss.teamB.microstories.domain.EntitiesTestSuite</name></suite></result></childReport><childReport><child _class='hudson.maven.MavenBuild'><action _class='hudson.maven.reporters.SurefireReport'><failCount>0</failCount><skipCount>0</skipCount><totalCount>40</totalCount><urlName>testReport</urlName></action><action></action><action _class='hudson.maven.reporters.MavenArtifactRecord'><url>http://sing.ei.uvigo.es/dt/jenkins/job/%CE%BCStories%202122%20-%20Team%20B/es.uvigo.esei.dgss.teamB.microstories$dgss2122-teamB-microstories-rest/92/mavenArtifacts/</url></action><action></action><artifact><displayPath>dgss2122-teamB-microstories-rest-0.1.0-SNAPSHOT-javadoc.jar</displayPath><fileName>dgss2122-teamB-microstories-rest-0.1.0-SNAPSHOT-javadoc.jar</fileName><relativePath>es.uvigo.esei.dgss.teamB.microstories/dgss2122-teamB-microstories-rest/0.1.0-SNAPSHOT/dgss2122-teamB-microstories-rest-0.1.0-SNAPSHOT-javadoc.jar</relativePath></artifact><artifact><displayPath>dgss2122-teamB-microstories-rest-0.1.0-SNAPSHOT-sources.jar</displayPath><fileName>dgss2122-teamB-microstories-rest-0.1.0-SNAPSHOT-sources.jar</fileName><relativePath>es.uvigo.esei.dgss.teamB.microstories/dgss2122-teamB-microstories-rest/0.1.0-SNAPSHOT/dgss2122-teamB-microstories-rest-0.1.0-SNAPSHOT-sources.jar</relativePath></artifact><artifact><displayPath>dgss2122-teamB-microstories-rest-0.1.0-SNAPSHOT.pom</displayPath><fileName>dgss2122-teamB-microstories-rest-0.1.0-SNAPSHOT.pom</fileName><relativePath>es.uvigo.esei.dgss.teamB.microstories/dgss2122-teamB-microstories-rest/0.1.0-SNAPSHOT/dgss2122-teamB-microstories-rest-0.1.0-SNAPSHOT.pom</relativePath></artifact><artifact><displayPath>dgss2122-teamB-microstories-rest-0.1.0-SNAPSHOT.war</displayPath><fileName>dgss2122-teamB-microstories-rest-0.1.0-SNAPSHOT.war</fileName><relativePath>es.uvigo.esei.dgss.teamB.microstories/dgss2122-teamB-microstories-rest/0.1.0-SNAPSHOT/dgss2122-teamB-microstories-rest-0.1.0-SNAPSHOT.war</relativePath></artifact><building>false</building><displayName>#92</displayName><duration>50091</duration><estimatedDuration>55017</estimatedDuration><fullDisplayName>μStories 2122 - Team B » REST #92</fullDisplayName><id>92</id><keepLog>false</keepLog><number>92</number><queueId>-1</queueId><result>SUCCESS</result><timestamp>1639836671892</timestamp><url>http://sing.ei.uvigo.es/dt/jenkins/job/%CE%BCStories%202122%20-%20Team%20B/es.uvigo.esei.dgss.teamB.microstories$dgss2122-teamB-microstories-rest/92/</url><builtOn></builtOn><changeSet _class='hudson.maven.FilteredChangeLogSet'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>service/src/main/java/es/uvigo/esei/dgss/teamB/microstories/service/StoryService.java</affectedPath><affectedPath>tests/src/main/java/es/uvigo/esei/dgss/teamB/microstories/entities/IsEqualToStory.java</affectedPath><affectedPath>rest/src/main/java/es/uvigo/esei/dgss/teamB/microstories/rest/StoryResource.java</affectedPath><affectedPath>rest/src/test/java/es/uvigo/esei/dgss/teamB/microstories/rest/StoryResourceRestTest.java</affectedPath><affectedPath>service/src/test/java/es/uvigo/esei/dgss/teamB/microstories/service/StoryServiceTest.java</affectedPath><affectedPath>rest/src/main/java/es/uvigo/esei/dgss/teamB/microstories/rest/dtos/StoryCreationDto.java</affectedPath><affectedPath>tests/src/main/resources/datasets/stories-new.xml</affectedPath><affectedPath>rest/src/test/java/es/uvigo/esei/dgss/teamB/microstories/rest/StoryResourceUnitTest.java</affectedPath><commitId>36395f68894f7ff55991bb1d9c4b0001a0a8518a</commitId><timestamp>1639836392000</timestamp><author><absoluteUrl>http://sing.ei.uvigo.es/dt/jenkins/user/aggarcia3</absoluteUrl><fullName>aggarcia3</fullName></author><authorEmail>aggarcia3@esei.uvigo.es</authorEmail><comment>tsk40 Adds REST endpoint to create stories
This commit adds the necessary REST controller method, in addition to 
the related unit and integration tests and DTOs.
The test story matcher was modified to allow ignoring comparing dates, 
as when a story is created its creation date is set automatically by the 
EJB to the current date, and thus it is not predictable beforehand. 
Likewise, I realized that the @ShouldMatchDataSet annotation has an 
additional parameter to ignore the unpredictable date column, so let's 
get rid of a helper method I implemented in a previous commit to pass 
tests.
</comment><date>2021-12-18 15:06:32 +0100</date><id>36395f68894f7ff55991bb1d9c4b0001a0a8518a</id><msg>tsk40 Adds REST endpoint to create stories</msg><path><editType>edit</editType><file>rest/src/test/java/es/uvigo/esei/dgss/teamB/microstories/rest/StoryResourceUnitTest.java</file></path><path><editType>add</editType><file>rest/src/main/java/es/uvigo/esei/dgss/teamB/microstories/rest/dtos/StoryCreationDto.java</file></path><path><editType>edit</editType><file>service/src/main/java/es/uvigo/esei/dgss/teamB/microstories/service/StoryService.java</file></path><path><editType>edit</editType><file>tests/src/main/java/es/uvigo/esei/dgss/teamB/microstories/entities/IsEqualToStory.java</file></path><path><editType>edit</editType><file>rest/src/main/java/es/uvigo/esei/dgss/teamB/microstories/rest/StoryResource.java</file></path><path><editType>edit</editType><file>tests/src/main/resources/datasets/stories-new.xml</file></path><path><editType>edit</editType><file>rest/src/test/java/es/uvigo/esei/dgss/teamB/microstories/rest/StoryResourceRestTest.java</file></path><path><editType>edit</editType><file>service/src/test/java/es/uvigo/esei/dgss/teamB/microstories/service/StoryServiceTest.java</file></path></item></changeSet><culprit><absoluteUrl>http://sing.ei.uvigo.es/dt/jenkins/user/aggarcia3</absoluteUrl><fullName>aggarcia3</fullName></culprit><mavenArtifacts><url>http://sing.ei.uvigo.es/dt/jenkins/job/%CE%BCStories%202122%20-%20Team%20B/es.uvigo.esei.dgss.teamB.microstories$dgss2122-teamB-microstories-rest/92/mavenArtifacts/</url></mavenArtifacts></child><result _class='hudson.tasks.junit.TestResult'><duration>39.476997</duration><empty>false</empty><failCount>0</failCount><passCount>40</passCount><skipCount>0</skipCount><suite><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.742</duration><failedSince>0</failedSince><name>beforeList</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.155</duration><failedSince>0</failedSince><name>afterList</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.088</duration><failedSince>0</failedSince><name>beforeGetStoryById</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>2.436</duration><failedSince>0</failedSince><name>testGetStoryById</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.132</duration><failedSince>0</failedSince><name>afterGetStoryById</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.102</duration><failedSince>0</failedSince><name>beforeGetStoryByIdNotExist</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.055</duration><failedSince>0</failedSince><name>testGetStoryByIdNotExist</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.095</duration><failedSince>0</failedSince><name>afterGetStoryByIdNotExist</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.072</duration><failedSince>0</failedSince><name>beforeSearchStoriesFailure</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.06</duration><failedSince>0</failedSince><name>testSearchStoriesIncorrectPage</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.039</duration><failedSince>0</failedSince><name>testSearchStoriesIncorrectMaxItems</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.036</duration><failedSince>0</failedSince><name>testSearchStoriesIncorrectText</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.114</duration><failedSince>0</failedSince><name>afterSearchStoriesFailure</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.09</duration><failedSince>0</failedSince><name>beforeSearchStoriesSuccess</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.321</duration><failedSince>0</failedSince><name>testSearchStories</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.121</duration><failedSince>0</failedSince><name>afterSearchStoriesSuccess</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.085</duration><failedSince>0</failedSince><name>beforeExploreStoriesSuccess</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.098</duration><failedSince>0</failedSince><name>testExploreStories</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.065</duration><failedSince>0</failedSince><name>afterExploreStoriesSuccess</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.103</duration><failedSince>0</failedSince><name>beforeExploreHottestStoriesSuccess</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.256</duration><failedSince>0</failedSince><name>testExploreHottestStories</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.116</duration><failedSince>0</failedSince><name>afterExploreHottestStoriesSuccess</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.081</duration><failedSince>0</failedSince><name>beforeCreateStory</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.304</duration><failedSince>0</failedSince><name>testCreate</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceRestTest</className><duration>0.144</duration><failedSince>0</failedSince><name>afterCreate</name><skipped>false</skipped><status>PASSED</status></case><duration>39.245</duration><name>es.uvigo.esei.dgss.teamB.microstories.rest.ResourceIntegrationTestSuite</name></suite><suite><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceUnitTest</className><duration>0.013</duration><failedSince>0</failedSince><name>testGetStoryById</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceUnitTest</className><duration>0.003</duration><failedSince>0</failedSince><name>testExploreStories</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceUnitTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testSearchOrExploreStoriesIncorrectPublication</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceUnitTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testHottestStories</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceUnitTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testListRecent</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceUnitTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testCreateWithNullFields</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceUnitTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testSearchOrExploreStoriesByTextIncorrectMaxItems1</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceUnitTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSearchOrExploreStoriesByTextIncorrectMaxItems2</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceUnitTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSearchOrExploreStoriesIncorrectGenre</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceUnitTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSearchOrExploreStoriesIncorrectTopic</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceUnitTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSearchOrExploreStoriesByTextIncorrectPage1</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceUnitTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSearchOrExploreStoriesByTextIncorrectPage2</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceUnitTest</className><duration>0.002</duration><failedSince>0</failedSince><name>testSearchStoriesByText</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceUnitTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testCreate</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.rest.StoryResourceUnitTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testCreateWithInvalidFields</name><skipped>false</skipped><status>PASSED</status></case><duration>0.232</duration><name>es.uvigo.esei.dgss.teamB.microstories.rest.ResourceUnitTestSuite</name></suite></result></childReport><childReport><child _class='hudson.maven.MavenBuild'><action _class='hudson.maven.reporters.SurefireReport'><failCount>0</failCount><skipCount>0</skipCount><totalCount>26</totalCount><urlName>testReport</urlName></action><action></action><action _class='hudson.maven.reporters.MavenArtifactRecord'><url>http://sing.ei.uvigo.es/dt/jenkins/job/%CE%BCStories%202122%20-%20Team%20B/es.uvigo.esei.dgss.teamB.microstories$dgss2122-teamB-microstories-service/92/mavenArtifacts/</url></action><action></action><artifact><displayPath>dgss2122-teamB-microstories-service-0.1.0-SNAPSHOT-javadoc.jar</displayPath><fileName>dgss2122-teamB-microstories-service-0.1.0-SNAPSHOT-javadoc.jar</fileName><relativePath>es.uvigo.esei.dgss.teamB.microstories/dgss2122-teamB-microstories-service/0.1.0-SNAPSHOT/dgss2122-teamB-microstories-service-0.1.0-SNAPSHOT-javadoc.jar</relativePath></artifact><artifact><displayPath>dgss2122-teamB-microstories-service-0.1.0-SNAPSHOT-sources.jar</displayPath><fileName>dgss2122-teamB-microstories-service-0.1.0-SNAPSHOT-sources.jar</fileName><relativePath>es.uvigo.esei.dgss.teamB.microstories/dgss2122-teamB-microstories-service/0.1.0-SNAPSHOT/dgss2122-teamB-microstories-service-0.1.0-SNAPSHOT-sources.jar</relativePath></artifact><artifact><displayPath>dgss2122-teamB-microstories-service-0.1.0-SNAPSHOT-tests.jar</displayPath><fileName>dgss2122-teamB-microstories-service-0.1.0-SNAPSHOT-tests.jar</fileName><relativePath>es.uvigo.esei.dgss.teamB.microstories/dgss2122-teamB-microstories-service/0.1.0-SNAPSHOT/dgss2122-teamB-microstories-service-0.1.0-SNAPSHOT-tests.jar</relativePath></artifact><artifact><displayPath>dgss2122-teamB-microstories-service-0.1.0-SNAPSHOT.jar</displayPath><fileName>dgss2122-teamB-microstories-service-0.1.0-SNAPSHOT.jar</fileName><relativePath>es.uvigo.esei.dgss.teamB.microstories/dgss2122-teamB-microstories-service/0.1.0-SNAPSHOT/dgss2122-teamB-microstories-service-0.1.0-SNAPSHOT.jar</relativePath></artifact><artifact><displayPath>dgss2122-teamB-microstories-service-0.1.0-SNAPSHOT.pom</displayPath><fileName>dgss2122-teamB-microstories-service-0.1.0-SNAPSHOT.pom</fileName><relativePath>es.uvigo.esei.dgss.teamB.microstories/dgss2122-teamB-microstories-service/0.1.0-SNAPSHOT/dgss2122-teamB-microstories-service-0.1.0-SNAPSHOT.pom</relativePath></artifact><building>false</building><displayName>#92</displayName><duration>51328</duration><estimatedDuration>53535</estimatedDuration><fullDisplayName>μStories 2122 - Team B » Service #92</fullDisplayName><id>92</id><keepLog>false</keepLog><number>92</number><queueId>-1</queueId><result>SUCCESS</result><timestamp>1639836671892</timestamp><url>http://sing.ei.uvigo.es/dt/jenkins/job/%CE%BCStories%202122%20-%20Team%20B/es.uvigo.esei.dgss.teamB.microstories$dgss2122-teamB-microstories-service/92/</url><builtOn></builtOn><changeSet _class='hudson.maven.FilteredChangeLogSet'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>service/src/main/java/es/uvigo/esei/dgss/teamB/microstories/service/StoryService.java</affectedPath><affectedPath>tests/src/main/java/es/uvigo/esei/dgss/teamB/microstories/entities/IsEqualToStory.java</affectedPath><affectedPath>rest/src/main/java/es/uvigo/esei/dgss/teamB/microstories/rest/StoryResource.java</affectedPath><affectedPath>rest/src/test/java/es/uvigo/esei/dgss/teamB/microstories/rest/StoryResourceRestTest.java</affectedPath><affectedPath>service/src/test/java/es/uvigo/esei/dgss/teamB/microstories/service/StoryServiceTest.java</affectedPath><affectedPath>rest/src/main/java/es/uvigo/esei/dgss/teamB/microstories/rest/dtos/StoryCreationDto.java</affectedPath><affectedPath>tests/src/main/resources/datasets/stories-new.xml</affectedPath><affectedPath>rest/src/test/java/es/uvigo/esei/dgss/teamB/microstories/rest/StoryResourceUnitTest.java</affectedPath><commitId>36395f68894f7ff55991bb1d9c4b0001a0a8518a</commitId><timestamp>1639836392000</timestamp><author><absoluteUrl>http://sing.ei.uvigo.es/dt/jenkins/user/aggarcia3</absoluteUrl><fullName>aggarcia3</fullName></author><authorEmail>aggarcia3@esei.uvigo.es</authorEmail><comment>tsk40 Adds REST endpoint to create stories
This commit adds the necessary REST controller method, in addition to 
the related unit and integration tests and DTOs.
The test story matcher was modified to allow ignoring comparing dates, 
as when a story is created its creation date is set automatically by the 
EJB to the current date, and thus it is not predictable beforehand. 
Likewise, I realized that the @ShouldMatchDataSet annotation has an 
additional parameter to ignore the unpredictable date column, so let's 
get rid of a helper method I implemented in a previous commit to pass 
tests.
</comment><date>2021-12-18 15:06:32 +0100</date><id>36395f68894f7ff55991bb1d9c4b0001a0a8518a</id><msg>tsk40 Adds REST endpoint to create stories</msg><path><editType>edit</editType><file>rest/src/test/java/es/uvigo/esei/dgss/teamB/microstories/rest/StoryResourceUnitTest.java</file></path><path><editType>add</editType><file>rest/src/main/java/es/uvigo/esei/dgss/teamB/microstories/rest/dtos/StoryCreationDto.java</file></path><path><editType>edit</editType><file>service/src/main/java/es/uvigo/esei/dgss/teamB/microstories/service/StoryService.java</file></path><path><editType>edit</editType><file>tests/src/main/java/es/uvigo/esei/dgss/teamB/microstories/entities/IsEqualToStory.java</file></path><path><editType>edit</editType><file>rest/src/main/java/es/uvigo/esei/dgss/teamB/microstories/rest/StoryResource.java</file></path><path><editType>edit</editType><file>tests/src/main/resources/datasets/stories-new.xml</file></path><path><editType>edit</editType><file>rest/src/test/java/es/uvigo/esei/dgss/teamB/microstories/rest/StoryResourceRestTest.java</file></path><path><editType>edit</editType><file>service/src/test/java/es/uvigo/esei/dgss/teamB/microstories/service/StoryServiceTest.java</file></path></item></changeSet><culprit><absoluteUrl>http://sing.ei.uvigo.es/dt/jenkins/user/aggarcia3</absoluteUrl><fullName>aggarcia3</fullName></culprit><mavenArtifacts><url>http://sing.ei.uvigo.es/dt/jenkins/job/%CE%BCStories%202122%20-%20Team%20B/es.uvigo.esei.dgss.teamB.microstories$dgss2122-teamB-microstories-service/92/mavenArtifacts/</url></mavenArtifacts></child><result _class='hudson.tasks.junit.TestResult'><duration>36.473</duration><empty>false</empty><failCount>0</failCount><passCount>26</passCount><skipCount>0</skipCount><suite><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>1.323</duration><failedSince>0</failedSince><name>testRecentStories</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.183</duration><failedSince>0</failedSince><name>testSearchStoriesWithoutText</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.172</duration><failedSince>0</failedSince><name>testCalculateNumPagesSearchWithoutText</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.141</duration><failedSince>0</failedSince><name>testSearchStoriesWithText</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.152</duration><failedSince>0</failedSince><name>testCalculateNumPagesSearchWithText</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.167</duration><failedSince>0</failedSince><name>testSearchStoriesWitNonexistentText</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.095</duration><failedSince>0</failedSince><name>testCalculateNumPagesSearchWithNonexistentText</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.246</duration><failedSince>0</failedSince><name>testGetStoryById</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.119</duration><failedSince>0</failedSince><name>testGetStoryByIdNotExist</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.267</duration><failedSince>0</failedSince><name>testExploreStoriesWithGenreAndTopic</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.415</duration><failedSince>0</failedSince><name>testCreateStory</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.154</duration><failedSince>0</failedSince><name>testCreateStoryByNonAuthenticatedUser</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.125</duration><failedSince>0</failedSince><name>testUpdateStory</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.151</duration><failedSince>0</failedSince><name>testPublishStory</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.104</duration><failedSince>0</failedSince><name>testCalculateNumPagesExploreWithoutGenreTopicAndPublication</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.12</duration><failedSince>0</failedSince><name>testCalculateNumPagesExploreWithNonExistentGenreTopicAndPublication</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.194</duration><failedSince>0</failedSince><name>testDeleteStory</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.088</duration><failedSince>0</failedSince><name>testDeleteOthersStory</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.108</duration><failedSince>0</failedSince><name>testDeleteNonExistentStory</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.154</duration><failedSince>0</failedSince><name>testDeleteByNonAuthenticatedUser</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.507</duration><failedSince>0</failedSince><name>testMostReadStories</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.061</duration><failedSince>0</failedSince><name>testCountVisits</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.069</duration><failedSince>0</failedSince><name>testGetStoryByUser</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.064</duration><failedSince>0</failedSince><name>testGetStoryByUserWithoutStories</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.StoryServiceTest</className><duration>0.056</duration><failedSince>0</failedSince><name>testCalculateNumPagesStoriesByUser</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.dgss.teamB.microstories.service.UserServiceTest</className><duration>0.669</duration><failedSince>0</failedSince><name>testGetUserCredentials</name><skipped>false</skipped><status>PASSED</status></case><duration>36.473</duration><name>es.uvigo.esei.dgss.teamB.microstories.service.ServiceTestSuite</name></suite></result></childReport></surefireAggregatedReport>