<mavenModuleSetBuild _class='hudson.maven.MavenModuleSetBuild'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><origindevelop _class='hudson.plugins.git.util.Build'><buildNumber>133</buildNumber><marked><SHA1>57e126d1e56da70df0f5d9f9f410b9b49e70935e</SHA1><branch><SHA1>57e126d1e56da70df0f5d9f9f410b9b49e70935e</SHA1><name>origin/develop</name></branch></marked><revision><SHA1>57e126d1e56da70df0f5d9f9f410b9b49e70935e</SHA1><branch><SHA1>57e126d1e56da70df0f5d9f9f410b9b49e70935e</SHA1><name>origin/develop</name></branch></revision></origindevelop></buildsByBranchName><lastBuiltRevision><SHA1>57e126d1e56da70df0f5d9f9f410b9b49e70935e</SHA1><branch><SHA1>57e126d1e56da70df0f5d9f9f410b9b49e70935e</SHA1><name>origin/develop</name></branch></lastBuiltRevision><remoteUrl>http://sing-group.org/dt/gitlab/dgss-2526-teamA/microstories.git</remoteUrl><scmName></scmName></action><action _class='hudson.plugins.git.GitTagAction'></action><action></action><action></action><action _class='hudson.maven.reporters.MavenAggregatedArtifactRecord'><moduleRecord><attachedArtifact><artifactId>dgss2526-teamA-microstories-domain</artifactId><canonicalName>dgss2526-teamA-microstories-domain-0.1.0-SNAPSHOT-sources.jar</canonicalName><classifier>sources</classifier><fileName>dgss2526-teamA-microstories-domain-0.1.0-SNAPSHOT-sources.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>cbafe421bba0a2390813cac85dae510a</md5sum><type>java-source</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><attachedArtifact><artifactId>dgss2526-teamA-microstories-domain</artifactId><canonicalName>dgss2526-teamA-microstories-domain-0.1.0-SNAPSHOT-javadoc.jar</canonicalName><classifier>javadoc</classifier><fileName>dgss2526-teamA-microstories-domain-0.1.0-SNAPSHOT-javadoc.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>d5ca34fb08213dd39edf7e17814ea40f</md5sum><type>javadoc</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><mainArtifact><artifactId>dgss2526-teamA-microstories-domain</artifactId><canonicalName>dgss2526-teamA-microstories-domain-0.1.0-SNAPSHOT.jar</canonicalName><fileName>dgss2526-teamA-microstories-domain-0.1.0-SNAPSHOT.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>f53bdca6d1b0f526b25d16c19e80f630</md5sum><type>jar</type><version>0.1.0-SNAPSHOT</version></mainArtifact><parent><number>133</number><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-domain/133/</url></parent><pomArtifact><artifactId>dgss2526-teamA-microstories-domain</artifactId><canonicalName>dgss2526-teamA-microstories-domain-0.1.0-SNAPSHOT.pom</canonicalName><fileName>pom.xml</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>958492c6b9cbb4253a78b96ad7b4f22f</md5sum><type>pom</type><version>0.1.0-SNAPSHOT</version></pomArtifact><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-domain/133/mavenArtifacts/</url></moduleRecord><moduleRecord><mainArtifact><artifactId>dgss2526-teamA-microstories-ear</artifactId><canonicalName>dgss2526-teamA-microstories-ear-0.1.0-SNAPSHOT.ear</canonicalName><fileName>dgss2526-teamA-microstories-pom-0.1.0-SNAPSHOT.ear</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>aa33fa38042d564f3d16250dc41d2e8b</md5sum><type>ear</type><version>0.1.0-SNAPSHOT</version></mainArtifact><parent><number>133</number><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-ear/133/</url></parent><pomArtifact><artifactId>dgss2526-teamA-microstories-ear</artifactId><canonicalName>dgss2526-teamA-microstories-ear-0.1.0-SNAPSHOT.pom</canonicalName><fileName>pom.xml</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>4b994d92049f8de4c6ea0bd370595780</md5sum><type>pom</type><version>0.1.0-SNAPSHOT</version></pomArtifact><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-ear/133/mavenArtifacts/</url></moduleRecord><moduleRecord><attachedArtifact><artifactId>dgss2526-teamA-microstories-jsf</artifactId><canonicalName>dgss2526-teamA-microstories-jsf-0.1.0-SNAPSHOT-sources.jar</canonicalName><classifier>sources</classifier><fileName>dgss2526-teamA-microstories-jsf-0.1.0-SNAPSHOT-sources.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>be42797900f677a84e3a35337cd02037</md5sum><type>java-source</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><attachedArtifact><artifactId>dgss2526-teamA-microstories-jsf</artifactId><canonicalName>dgss2526-teamA-microstories-jsf-0.1.0-SNAPSHOT-javadoc.jar</canonicalName><classifier>javadoc</classifier><fileName>dgss2526-teamA-microstories-jsf-0.1.0-SNAPSHOT-javadoc.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>483ed041dc1277a15bc868ccd26e315f</md5sum><type>javadoc</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><mainArtifact><artifactId>dgss2526-teamA-microstories-jsf</artifactId><canonicalName>dgss2526-teamA-microstories-jsf-0.1.0-SNAPSHOT.war</canonicalName><fileName>dgss2526-teamA-microstories-jsf-0.1.0-SNAPSHOT.war</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>29bd072ef979a9268ffcb69375c21d7a</md5sum><type>war</type><version>0.1.0-SNAPSHOT</version></mainArtifact><parent><number>133</number><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-jsf/133/</url></parent><pomArtifact><artifactId>dgss2526-teamA-microstories-jsf</artifactId><canonicalName>dgss2526-teamA-microstories-jsf-0.1.0-SNAPSHOT.pom</canonicalName><fileName>pom.xml</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>a1666b37ed3bcfe5a6b9714068c03b08</md5sum><type>pom</type><version>0.1.0-SNAPSHOT</version></pomArtifact><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-jsf/133/mavenArtifacts/</url></moduleRecord><moduleRecord><mainArtifact><artifactId>dgss2526-teamA-microstories-pom</artifactId><canonicalName>dgss2526-teamA-microstories-pom-0.1.0-SNAPSHOT.pom</canonicalName><fileName>pom.xml</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>82c9f35d18d0437d6be088219c629887</md5sum><type>pom</type><version>0.1.0-SNAPSHOT</version></mainArtifact><parent><number>133</number><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-pom/133/</url></parent><pomArtifact><artifactId>dgss2526-teamA-microstories-pom</artifactId><canonicalName>dgss2526-teamA-microstories-pom-0.1.0-SNAPSHOT.pom</canonicalName><fileName>pom.xml</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>82c9f35d18d0437d6be088219c629887</md5sum><type>pom</type><version>0.1.0-SNAPSHOT</version></pomArtifact><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-pom/133/mavenArtifacts/</url></moduleRecord><moduleRecord><attachedArtifact><artifactId>dgss2526-teamA-microstories-rest</artifactId><canonicalName>dgss2526-teamA-microstories-rest-0.1.0-SNAPSHOT-sources.jar</canonicalName><classifier>sources</classifier><fileName>dgss2526-teamA-microstories-rest-0.1.0-SNAPSHOT-sources.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>1a2ff1fa77bd1c171641d623581c1fb7</md5sum><type>java-source</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><attachedArtifact><artifactId>dgss2526-teamA-microstories-rest</artifactId><canonicalName>dgss2526-teamA-microstories-rest-0.1.0-SNAPSHOT-javadoc.jar</canonicalName><classifier>javadoc</classifier><fileName>dgss2526-teamA-microstories-rest-0.1.0-SNAPSHOT-javadoc.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>08ddbd925e1fca85f7e99db142eb3334</md5sum><type>javadoc</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><mainArtifact><artifactId>dgss2526-teamA-microstories-rest</artifactId><canonicalName>dgss2526-teamA-microstories-rest-0.1.0-SNAPSHOT.war</canonicalName><fileName>dgss2526-teamA-microstories-rest-0.1.0-SNAPSHOT.war</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>d4e3469b7bbb0e70c6109af687a6107a</md5sum><type>war</type><version>0.1.0-SNAPSHOT</version></mainArtifact><parent><number>133</number><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-rest/133/</url></parent><pomArtifact><artifactId>dgss2526-teamA-microstories-rest</artifactId><canonicalName>dgss2526-teamA-microstories-rest-0.1.0-SNAPSHOT.pom</canonicalName><fileName>pom.xml</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>1f02def09b6b44e33d13cbe8af50c971</md5sum><type>pom</type><version>0.1.0-SNAPSHOT</version></pomArtifact><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-rest/133/mavenArtifacts/</url></moduleRecord><moduleRecord><attachedArtifact><artifactId>dgss2526-teamA-microstories-service</artifactId><canonicalName>dgss2526-teamA-microstories-service-0.1.0-SNAPSHOT-sources.jar</canonicalName><classifier>sources</classifier><fileName>dgss2526-teamA-microstories-service-0.1.0-SNAPSHOT-sources.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>7a05ae0ed091adcaf8f27ad22c3af2cf</md5sum><type>java-source</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><attachedArtifact><artifactId>dgss2526-teamA-microstories-service</artifactId><canonicalName>dgss2526-teamA-microstories-service-0.1.0-SNAPSHOT-javadoc.jar</canonicalName><classifier>javadoc</classifier><fileName>dgss2526-teamA-microstories-service-0.1.0-SNAPSHOT-javadoc.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>2403eb1b2690e2a1555fbe5d293db7d0</md5sum><type>javadoc</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><attachedArtifact><artifactId>dgss2526-teamA-microstories-service</artifactId><canonicalName>dgss2526-teamA-microstories-service-0.1.0-SNAPSHOT-tests.jar</canonicalName><classifier>tests</classifier><fileName>dgss2526-teamA-microstories-service-0.1.0-SNAPSHOT-tests.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>090dc8630b12cec3ccb6ac4b2733b143</md5sum><type>test-jar</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><mainArtifact><artifactId>dgss2526-teamA-microstories-service</artifactId><canonicalName>dgss2526-teamA-microstories-service-0.1.0-SNAPSHOT.jar</canonicalName><fileName>dgss2526-teamA-microstories-service-0.1.0-SNAPSHOT.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>e89f3777c1c0e7f9c4c60c42d687051d</md5sum><type>jar</type><version>0.1.0-SNAPSHOT</version></mainArtifact><parent><number>133</number><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-service/133/</url></parent><pomArtifact><artifactId>dgss2526-teamA-microstories-service</artifactId><canonicalName>dgss2526-teamA-microstories-service-0.1.0-SNAPSHOT.pom</canonicalName><fileName>pom.xml</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>33cc8ebc893890903062103433b901d9</md5sum><type>pom</type><version>0.1.0-SNAPSHOT</version></pomArtifact><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-service/133/mavenArtifacts/</url></moduleRecord><moduleRecord><attachedArtifact><artifactId>dgss2526-teamA-microstories-tests</artifactId><canonicalName>dgss2526-teamA-microstories-tests-0.1.0-SNAPSHOT-sources.jar</canonicalName><classifier>sources</classifier><fileName>dgss2526-teamA-microstories-tests-0.1.0-SNAPSHOT-sources.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>e62b41fcb0c8a832d8df808cb4dbe37a</md5sum><type>java-source</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><attachedArtifact><artifactId>dgss2526-teamA-microstories-tests</artifactId><canonicalName>dgss2526-teamA-microstories-tests-0.1.0-SNAPSHOT-javadoc.jar</canonicalName><classifier>javadoc</classifier><fileName>dgss2526-teamA-microstories-tests-0.1.0-SNAPSHOT-javadoc.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>93a474c6a5411b6dfd929fb26fc70a33</md5sum><type>javadoc</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><mainArtifact><artifactId>dgss2526-teamA-microstories-tests</artifactId><canonicalName>dgss2526-teamA-microstories-tests-0.1.0-SNAPSHOT.jar</canonicalName><fileName>dgss2526-teamA-microstories-tests-0.1.0-SNAPSHOT.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>85e24fdbd2d36cc6d13a16ebff56c657</md5sum><type>jar</type><version>0.1.0-SNAPSHOT</version></mainArtifact><parent><number>133</number><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-tests/133/</url></parent><pomArtifact><artifactId>dgss2526-teamA-microstories-tests</artifactId><canonicalName>dgss2526-teamA-microstories-tests-0.1.0-SNAPSHOT.pom</canonicalName><fileName>pom.xml</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>1532e76707f9f47692c2c417366732cb</md5sum><type>pom</type><version>0.1.0-SNAPSHOT</version></pomArtifact><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-tests/133/mavenArtifacts/</url></moduleRecord></action><action _class='hudson.maven.reporters.SurefireAggregatedReport'><failCount>0</failCount><skipCount>0</skipCount><totalCount>126</totalCount><urlName>testReport</urlName><childReport><child _class='hudson.maven.MavenBuild'><number>133</number><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-domain/133/</url></child><result _class='hudson.tasks.junit.TestResult'><duration>0.461</duration><empty>false</empty><failCount>0</failCount><passCount>61</passCount><skipCount>0</skipCount><suite><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.005</duration><failedSince>0</failedSince><name>testSetTitlePublishedStory</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.009</duration><failedSince>0</failedSince><name>testIsPublishedFalse</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testRemoveThemeWithOnlyOne</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.023</duration><failedSince>0</failedSince><name>testAddMultipleViews</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testRemoveThemePublished</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.002</duration><failedSince>0</failedSince><name>testSetThemesNull</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testSetThemesZero</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testAddThemeMethod</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testSetThemesExceedLimit</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetId</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testSetContentPublished</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetContent</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetGenreNull</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testRemoveTheme</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.017</duration><failedSince>0</failedSince><name>testSetContentExactlyLimit</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testAddThemePublished</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testSetContentExceedsLimitForPoetryGenre</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testAddViewNull</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testIsCompleteFalse_MissingContent</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetPublishedAt</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testIsCompleteFalse_MissingGenre</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testIsCompleteFalse_MissingTitle</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testIsPublishedTrue</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetContentNull</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testGetViewsUnmodifiable</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetTitleNull</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetAuthor</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testSetAuthorNull</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testAddThemeNull</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetIdNull</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetThemes</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testSetContentExceedsLimitForShortStoryGenre</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testIsCompleteFalse_MissingThemes</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testSetGenrePublishedStory</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetContentExceedsLimitForTaleGenre</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testIsCompleteTrue</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetTitleTooLong</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testRemoveThemeNull</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.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.microstories.domain.entities.StoryTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetTitle</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.UserTest</className><duration>0.021</duration><failedSince>0</failedSince><name>testUsernameTooShort</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.UserTest</className><duration>0.126</duration><failedSince>0</failedSince><name>testConstructorWithStories</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.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.microstories.domain.entities.UserTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testAddStoryNull</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.UserTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testChangePasswordNull</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.UserTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testSetStoriesNull</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.UserTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetPasswordNull</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.UserTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetId</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.UserTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetUsernameNull</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.UserTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testUsernameTooLong</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.UserTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testAddStory</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.UserTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testChangePassword</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.UserTest</className><duration>0.001</duration><failedSince>0</failedSince><name>testChangePasswordTooShort</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.UserTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testChangePasswordTooLong</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.UserTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testUsernameInvalidPattern</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.UserTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetPasswordNoMD5</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.UserTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetIdNull</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.UserTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetRoleNull</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.UserTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetUsername</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.UserTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testSetRole</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.domain.entities.UserTest</className><duration>0.0</duration><failedSince>0</failedSince><name>testAddStoryWithDifferentAuthor</name><skipped>false</skipped><status>PASSED</status></case><duration>0.461</duration><name>es.uvigo.esei.microstories.domain.entities.DomainUnitTestSuite</name></suite></result></childReport><childReport><child _class='hudson.maven.MavenBuild'><number>133</number><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-rest/133/</url></child><result _class='hudson.tasks.junit.TestResult'><duration>44.816</duration><empty>false</empty><failCount>0</failCount><passCount>31</passCount><skipCount>0</skipCount><suite><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>3.12</duration><failedSince>0</failedSince><name>beforeListRecentStories</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>3.284</duration><failedSince>0</failedSince><name>listRecentStories</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.311</duration><failedSince>0</failedSince><name>afterListRecentStories</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.294</duration><failedSince>0</failedSince><name>beforeGetStoryById</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.106</duration><failedSince>0</failedSince><name>testGetStoryById_Success</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.055</duration><failedSince>0</failedSince><name>afterGetStoryById</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.219</duration><failedSince>0</failedSince><name>beforeGetNonExistentStory</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.057</duration><failedSince>0</failedSince><name>testGetStoryById_NotFound</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.15</duration><failedSince>0</failedSince><name>afterGetNonExistentStory</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.167</duration><failedSince>0</failedSince><name>beforeSearchStoriesContainsText</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.22</duration><failedSince>0</failedSince><name>testSearchStories_ReturnsResults</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.168</duration><failedSince>0</failedSince><name>afterSearchStoriesContainsText</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.119</duration><failedSince>0</failedSince><name>beforeSearchStoriesInvalidText</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.03</duration><failedSince>0</failedSince><name>testSearchStories_InvalidText_ReturnsBadRequest</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.115</duration><failedSince>0</failedSince><name>beforeFilterStoriesByGenre</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.107</duration><failedSince>0</failedSince><name>listFilteredStoriesByGenre</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.128</duration><failedSince>0</failedSince><name>afterFilterStoriesByGenre</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.114</duration><failedSince>0</failedSince><name>beforeFilterStoriesByTheme</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.097</duration><failedSince>0</failedSince><name>listFilteredStoriesByTheme</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.105</duration><failedSince>0</failedSince><name>afterFilterStoriesByTheme</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.134</duration><failedSince>0</failedSince><name>beforeFilterStoriesByPublicationDate</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.126</duration><failedSince>0</failedSince><name>listFilteredStoriesByPublication</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.072</duration><failedSince>0</failedSince><name>afterFilterStoriesByPublicationDate</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.133</duration><failedSince>0</failedSince><name>beforeFilterStoriesByGenreThemeAndPublication</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.054</duration><failedSince>0</failedSince><name>listFilteredStoriesByGenreThemeAndPublication</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.066</duration><failedSince>0</failedSince><name>afterFilterStoriesByGenreThemeAndPublication</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.103</duration><failedSince>0</failedSince><name>beforeGetTop2ReadStoriesLastMonthByGenre</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.181</duration><failedSince>0</failedSince><name>getTop2ReadStoriesLastMonthByGenre</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.083</duration><failedSince>0</failedSince><name>afterGetTop2ReadStoriesLastMonthByGenre</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.094</duration><failedSince>0</failedSince><name>beforeGetTop2ReadStoriesLastMonthByGenre_empty</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.rest.StoryResourceRestTest</className><duration>0.065</duration><failedSince>0</failedSince><name>getTop2ReadStoriesLastMonthByGenre_empty</name><skipped>false</skipped><status>PASSED</status></case><duration>44.816</duration><name>es.uvigo.esei.microstories.rest.ResourceUnitTestSuite</name></suite></result></childReport><childReport><child _class='hudson.maven.MavenBuild'><number>133</number><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-service/133/</url></child><result _class='hudson.tasks.junit.TestResult'><duration>40.764</duration><empty>false</empty><failCount>0</failCount><passCount>34</passCount><skipCount>0</skipCount><suite><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>4.999</duration><failedSince>0</failedSince><name>testCountStoriesByFilter_GenreAndDateFilter</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.273</duration><failedSince>0</failedSince><name>testCreateStory_Success</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.195</duration><failedSince>0</failedSince><name>testCountStoriesByFilter_GenreFilter</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.267</duration><failedSince>0</failedSince><name>testGetStoryById</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.262</duration><failedSince>0</failedSince><name>testCountStoriesByFilter_NoFilter</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.297</duration><failedSince>0</failedSince><name>testUpdateStory_Published</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.187</duration><failedSince>0</failedSince><name>testAddReadingLogEntryForA_Story_aux</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.217</duration><failedSince>0</failedSince><name>testCountStoriesByFilter_GenreAndThemeFilter</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.418</duration><failedSince>0</failedSince><name>testGetStoriesByUser_InvalidPage</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.38</duration><failedSince>0</failedSince><name>testGetStoriesByUser_InvalidSize</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.304</duration><failedSince>0</failedSince><name>testCountStoriesByFilter_ThemeFilter</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.107</duration><failedSince>0</failedSince><name>testCountStoriesByFilter_ThemeAndDateFilter</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.139</duration><failedSince>0</failedSince><name>testCountStoriesByFilter_DateRangeFilter</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.2</duration><failedSince>0</failedSince><name>testGetStoriesByUser_WithPagination</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.139</duration><failedSince>0</failedSince><name>testGetTop2ReadStoriesLastMonthByGenre</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.127</duration><failedSince>0</failedSince><name>testSearchStories_InvalidPage</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.161</duration><failedSince>0</failedSince><name>testSearchStories_InvalidSize</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.174</duration><failedSince>0</failedSince><name>testGetStoryById_NotFound</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.168</duration><failedSince>0</failedSince><name>getFilteredStoriesByDateWithInitialDateAfterFinalDate</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.147</duration><failedSince>0</failedSince><name>getFilteredStoriesByDateWithOnlyInitialDate</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.333</duration><failedSince>0</failedSince><name>testSearchStories_EmptyText_ShoulReturnAllStories</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.14</duration><failedSince>0</failedSince><name>getFilteredStoriesByDate</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.126</duration><failedSince>0</failedSince><name>testCountStoriesByFilter_DateFilter</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.084</duration><failedSince>0</failedSince><name>testGetTop2ReadStoriesLastMonthByGenre_NoStories</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.103</duration><failedSince>0</failedSince><name>getFilteredStoriesByDateWithOnlyFinalDate</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.149</duration><failedSince>0</failedSince><name>testUpdateStory_Success</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.176</duration><failedSince>0</failedSince><name>testUpdateStory_NotFound</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.153</duration><failedSince>0</failedSince><name>testSearchStories</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.307</duration><failedSince>0</failedSince><name>testCreateStory_Unauthorized_WrongRole</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.191</duration><failedSince>0</failedSince><name>testUpdateStory_Unauthorized_NotAuthor</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.303</duration><failedSince>0</failedSince><name>getFilteredStoriesByGenre</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.42</duration><failedSince>0</failedSince><name>getFilteredStoriesByTheme</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.367</duration><failedSince>0</failedSince><name>testGetRecentStories</name><skipped>false</skipped><status>PASSED</status></case><case><age>0</age><className>es.uvigo.esei.microstories.services.StoryServiceIntegrationTest</className><duration>0.169</duration><failedSince>0</failedSince><name>testCreateStory_Unauthorized_NoUser</name><skipped>false</skipped><status>PASSED</status></case><duration>40.764</duration><name>es.uvigo.esei.microstories.services.ServiceIntegrationTestSuite</name></suite></result></childReport></action><action></action><action></action><action></action><action></action><building>false</building><displayName>#133</displayName><duration>211795</duration><estimatedDuration>250022</estimatedDuration><fullDisplayName>microstories-2526-teamA #133</fullDisplayName><id>133</id><keepLog>false</keepLog><number>133</number><queueId>135</queueId><result>SUCCESS</result><timestamp>1764957910534</timestamp><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/133/</url><builtOn></builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>service/src/test/resources/beans.xml</affectedPath><affectedPath>tests/src/main/java/es/uvigo/esei/dgss/teama/microstories/service/util/security/CreatorRoleCaller.java</affectedPath><affectedPath>domain/src/main/java/es/uvigo/esei/microstories/domain/entities/Story.java</affectedPath><affectedPath>service/src/test/java/es/uvigo/esei/microstories/services/StoryServiceIntegrationTest.java</affectedPath><affectedPath>tests/src/main/resources/datasets/stories.xml</affectedPath><affectedPath>service/src/main/java/es/uvigo/esei/microstories/mappers/StoryMapper.java</affectedPath><affectedPath>service/src/main/java/es/uvigo/esei/microstories/services/UserService.java</affectedPath><affectedPath>service/src/main/java/es/uvigo/esei/microstories/services/StoryService.java</affectedPath><affectedPath>additional-material/db/microstories-mysql.creation.sql</affectedPath><affectedPath>service/src/main/java/es/uvigo/esei/microstories/dtos/StoryCreateDto.java</affectedPath><affectedPath>additional-material/db/microstories-mysql.full.sql</affectedPath><affectedPath>domain/src/test/java/es/uvigo/esei/microstories/domain/entities/StoryTest.java</affectedPath><commitId>57e126d1e56da70df0f5d9f9f410b9b49e70935e</commitId><timestamp>1764957609000</timestamp><author><absoluteUrl>http://sing.ei.uvigo.es/dt/jenkins/user/devpablogg</absoluteUrl><fullName>devpablogg</fullName></author><authorEmail>devpablogg@gmail.com</authorEmail><comment>tsk57: Implements story creation and update in service layer
This commit adds full support for creating and updating stories. It
introduces
`StoryCreateDto`, implements creation and update flows in
`StoryService`, and applies permission checks using the security role
caller for CREATOR actions. A new `UserService` is added to resolve the
current user. The `Story` entity now supports relaxed nullability for
drafts, immutability after publication, theme and text validations, and
a new `isComplete` method. The database schema is updated to match these
rules. The `StoryMapper` is adjusted for the updated entity constructor.
Comprehensive unit and integration tests verify creation, updating,
validation behavior, and authorization handling.
</comment><date>2025-12-05 19:00:09 +0100</date><id>57e126d1e56da70df0f5d9f9f410b9b49e70935e</id><msg>tsk57: Implements story creation and update in service layer</msg><path><editType>add</editType><file>service/src/main/java/es/uvigo/esei/microstories/services/UserService.java</file></path><path><editType>edit</editType><file>tests/src/main/resources/datasets/stories.xml</file></path><path><editType>edit</editType><file>service/src/test/resources/beans.xml</file></path><path><editType>edit</editType><file>domain/src/main/java/es/uvigo/esei/microstories/domain/entities/Story.java</file></path><path><editType>edit</editType><file>additional-material/db/microstories-mysql.creation.sql</file></path><path><editType>edit</editType><file>additional-material/db/microstories-mysql.full.sql</file></path><path><editType>edit</editType><file>domain/src/test/java/es/uvigo/esei/microstories/domain/entities/StoryTest.java</file></path><path><editType>edit</editType><file>service/src/main/java/es/uvigo/esei/microstories/services/StoryService.java</file></path><path><editType>add</editType><file>tests/src/main/java/es/uvigo/esei/dgss/teama/microstories/service/util/security/CreatorRoleCaller.java</file></path><path><editType>edit</editType><file>service/src/main/java/es/uvigo/esei/microstories/mappers/StoryMapper.java</file></path><path><editType>add</editType><file>service/src/main/java/es/uvigo/esei/microstories/dtos/StoryCreateDto.java</file></path><path><editType>edit</editType><file>service/src/test/java/es/uvigo/esei/microstories/services/StoryServiceIntegrationTest.java</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://sing.ei.uvigo.es/dt/jenkins/user/devpablogg</absoluteUrl><fullName>devpablogg</fullName><id>devpablogg</id><property _class='jenkins.security.ApiTokenProperty'></property><property _class='com.cloudbees.plugins.credentials.UserCredentialsProvider$UserCredentialsProperty'></property><property _class='hudson.plugins.emailext.watching.EmailExtWatchAction$UserProperty'></property><property _class='hudson.model.MyViewsProperty'></property><property _class='org.jenkinsci.plugins.displayurlapi.user.PreferredProviderUserProperty'></property><property _class='hudson.model.PaneStatusProperties'></property><property _class='hudson.search.UserSearchProperty'><insensitiveSearch>true</insensitiveSearch></property><property _class='hudson.tasks.Mailer$UserProperty'><address>devpablogg@gmail.com</address></property></culprit><mavenArtifacts><moduleRecord><attachedArtifact><artifactId>dgss2526-teamA-microstories-domain</artifactId><canonicalName>dgss2526-teamA-microstories-domain-0.1.0-SNAPSHOT-sources.jar</canonicalName><classifier>sources</classifier><fileName>dgss2526-teamA-microstories-domain-0.1.0-SNAPSHOT-sources.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>cbafe421bba0a2390813cac85dae510a</md5sum><type>java-source</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><attachedArtifact><artifactId>dgss2526-teamA-microstories-domain</artifactId><canonicalName>dgss2526-teamA-microstories-domain-0.1.0-SNAPSHOT-javadoc.jar</canonicalName><classifier>javadoc</classifier><fileName>dgss2526-teamA-microstories-domain-0.1.0-SNAPSHOT-javadoc.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>d5ca34fb08213dd39edf7e17814ea40f</md5sum><type>javadoc</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><mainArtifact><artifactId>dgss2526-teamA-microstories-domain</artifactId><canonicalName>dgss2526-teamA-microstories-domain-0.1.0-SNAPSHOT.jar</canonicalName><fileName>dgss2526-teamA-microstories-domain-0.1.0-SNAPSHOT.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>f53bdca6d1b0f526b25d16c19e80f630</md5sum><type>jar</type><version>0.1.0-SNAPSHOT</version></mainArtifact><parent><number>133</number><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-domain/133/</url></parent><pomArtifact><artifactId>dgss2526-teamA-microstories-domain</artifactId><canonicalName>dgss2526-teamA-microstories-domain-0.1.0-SNAPSHOT.pom</canonicalName><fileName>pom.xml</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>958492c6b9cbb4253a78b96ad7b4f22f</md5sum><type>pom</type><version>0.1.0-SNAPSHOT</version></pomArtifact><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-domain/133/mavenArtifacts/</url></moduleRecord><moduleRecord><mainArtifact><artifactId>dgss2526-teamA-microstories-ear</artifactId><canonicalName>dgss2526-teamA-microstories-ear-0.1.0-SNAPSHOT.ear</canonicalName><fileName>dgss2526-teamA-microstories-pom-0.1.0-SNAPSHOT.ear</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>aa33fa38042d564f3d16250dc41d2e8b</md5sum><type>ear</type><version>0.1.0-SNAPSHOT</version></mainArtifact><parent><number>133</number><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-ear/133/</url></parent><pomArtifact><artifactId>dgss2526-teamA-microstories-ear</artifactId><canonicalName>dgss2526-teamA-microstories-ear-0.1.0-SNAPSHOT.pom</canonicalName><fileName>pom.xml</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>4b994d92049f8de4c6ea0bd370595780</md5sum><type>pom</type><version>0.1.0-SNAPSHOT</version></pomArtifact><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-ear/133/mavenArtifacts/</url></moduleRecord><moduleRecord><attachedArtifact><artifactId>dgss2526-teamA-microstories-jsf</artifactId><canonicalName>dgss2526-teamA-microstories-jsf-0.1.0-SNAPSHOT-sources.jar</canonicalName><classifier>sources</classifier><fileName>dgss2526-teamA-microstories-jsf-0.1.0-SNAPSHOT-sources.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>be42797900f677a84e3a35337cd02037</md5sum><type>java-source</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><attachedArtifact><artifactId>dgss2526-teamA-microstories-jsf</artifactId><canonicalName>dgss2526-teamA-microstories-jsf-0.1.0-SNAPSHOT-javadoc.jar</canonicalName><classifier>javadoc</classifier><fileName>dgss2526-teamA-microstories-jsf-0.1.0-SNAPSHOT-javadoc.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>483ed041dc1277a15bc868ccd26e315f</md5sum><type>javadoc</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><mainArtifact><artifactId>dgss2526-teamA-microstories-jsf</artifactId><canonicalName>dgss2526-teamA-microstories-jsf-0.1.0-SNAPSHOT.war</canonicalName><fileName>dgss2526-teamA-microstories-jsf-0.1.0-SNAPSHOT.war</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>29bd072ef979a9268ffcb69375c21d7a</md5sum><type>war</type><version>0.1.0-SNAPSHOT</version></mainArtifact><parent><number>133</number><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-jsf/133/</url></parent><pomArtifact><artifactId>dgss2526-teamA-microstories-jsf</artifactId><canonicalName>dgss2526-teamA-microstories-jsf-0.1.0-SNAPSHOT.pom</canonicalName><fileName>pom.xml</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>a1666b37ed3bcfe5a6b9714068c03b08</md5sum><type>pom</type><version>0.1.0-SNAPSHOT</version></pomArtifact><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-jsf/133/mavenArtifacts/</url></moduleRecord><moduleRecord><mainArtifact><artifactId>dgss2526-teamA-microstories-pom</artifactId><canonicalName>dgss2526-teamA-microstories-pom-0.1.0-SNAPSHOT.pom</canonicalName><fileName>pom.xml</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>82c9f35d18d0437d6be088219c629887</md5sum><type>pom</type><version>0.1.0-SNAPSHOT</version></mainArtifact><parent><number>133</number><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-pom/133/</url></parent><pomArtifact><artifactId>dgss2526-teamA-microstories-pom</artifactId><canonicalName>dgss2526-teamA-microstories-pom-0.1.0-SNAPSHOT.pom</canonicalName><fileName>pom.xml</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>82c9f35d18d0437d6be088219c629887</md5sum><type>pom</type><version>0.1.0-SNAPSHOT</version></pomArtifact><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-pom/133/mavenArtifacts/</url></moduleRecord><moduleRecord><attachedArtifact><artifactId>dgss2526-teamA-microstories-rest</artifactId><canonicalName>dgss2526-teamA-microstories-rest-0.1.0-SNAPSHOT-sources.jar</canonicalName><classifier>sources</classifier><fileName>dgss2526-teamA-microstories-rest-0.1.0-SNAPSHOT-sources.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>1a2ff1fa77bd1c171641d623581c1fb7</md5sum><type>java-source</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><attachedArtifact><artifactId>dgss2526-teamA-microstories-rest</artifactId><canonicalName>dgss2526-teamA-microstories-rest-0.1.0-SNAPSHOT-javadoc.jar</canonicalName><classifier>javadoc</classifier><fileName>dgss2526-teamA-microstories-rest-0.1.0-SNAPSHOT-javadoc.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>08ddbd925e1fca85f7e99db142eb3334</md5sum><type>javadoc</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><mainArtifact><artifactId>dgss2526-teamA-microstories-rest</artifactId><canonicalName>dgss2526-teamA-microstories-rest-0.1.0-SNAPSHOT.war</canonicalName><fileName>dgss2526-teamA-microstories-rest-0.1.0-SNAPSHOT.war</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>d4e3469b7bbb0e70c6109af687a6107a</md5sum><type>war</type><version>0.1.0-SNAPSHOT</version></mainArtifact><parent><number>133</number><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-rest/133/</url></parent><pomArtifact><artifactId>dgss2526-teamA-microstories-rest</artifactId><canonicalName>dgss2526-teamA-microstories-rest-0.1.0-SNAPSHOT.pom</canonicalName><fileName>pom.xml</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>1f02def09b6b44e33d13cbe8af50c971</md5sum><type>pom</type><version>0.1.0-SNAPSHOT</version></pomArtifact><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-rest/133/mavenArtifacts/</url></moduleRecord><moduleRecord><attachedArtifact><artifactId>dgss2526-teamA-microstories-service</artifactId><canonicalName>dgss2526-teamA-microstories-service-0.1.0-SNAPSHOT-sources.jar</canonicalName><classifier>sources</classifier><fileName>dgss2526-teamA-microstories-service-0.1.0-SNAPSHOT-sources.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>7a05ae0ed091adcaf8f27ad22c3af2cf</md5sum><type>java-source</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><attachedArtifact><artifactId>dgss2526-teamA-microstories-service</artifactId><canonicalName>dgss2526-teamA-microstories-service-0.1.0-SNAPSHOT-javadoc.jar</canonicalName><classifier>javadoc</classifier><fileName>dgss2526-teamA-microstories-service-0.1.0-SNAPSHOT-javadoc.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>2403eb1b2690e2a1555fbe5d293db7d0</md5sum><type>javadoc</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><attachedArtifact><artifactId>dgss2526-teamA-microstories-service</artifactId><canonicalName>dgss2526-teamA-microstories-service-0.1.0-SNAPSHOT-tests.jar</canonicalName><classifier>tests</classifier><fileName>dgss2526-teamA-microstories-service-0.1.0-SNAPSHOT-tests.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>090dc8630b12cec3ccb6ac4b2733b143</md5sum><type>test-jar</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><mainArtifact><artifactId>dgss2526-teamA-microstories-service</artifactId><canonicalName>dgss2526-teamA-microstories-service-0.1.0-SNAPSHOT.jar</canonicalName><fileName>dgss2526-teamA-microstories-service-0.1.0-SNAPSHOT.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>e89f3777c1c0e7f9c4c60c42d687051d</md5sum><type>jar</type><version>0.1.0-SNAPSHOT</version></mainArtifact><parent><number>133</number><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-service/133/</url></parent><pomArtifact><artifactId>dgss2526-teamA-microstories-service</artifactId><canonicalName>dgss2526-teamA-microstories-service-0.1.0-SNAPSHOT.pom</canonicalName><fileName>pom.xml</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>33cc8ebc893890903062103433b901d9</md5sum><type>pom</type><version>0.1.0-SNAPSHOT</version></pomArtifact><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-service/133/mavenArtifacts/</url></moduleRecord><moduleRecord><attachedArtifact><artifactId>dgss2526-teamA-microstories-tests</artifactId><canonicalName>dgss2526-teamA-microstories-tests-0.1.0-SNAPSHOT-sources.jar</canonicalName><classifier>sources</classifier><fileName>dgss2526-teamA-microstories-tests-0.1.0-SNAPSHOT-sources.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>e62b41fcb0c8a832d8df808cb4dbe37a</md5sum><type>java-source</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><attachedArtifact><artifactId>dgss2526-teamA-microstories-tests</artifactId><canonicalName>dgss2526-teamA-microstories-tests-0.1.0-SNAPSHOT-javadoc.jar</canonicalName><classifier>javadoc</classifier><fileName>dgss2526-teamA-microstories-tests-0.1.0-SNAPSHOT-javadoc.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>93a474c6a5411b6dfd929fb26fc70a33</md5sum><type>javadoc</type><version>0.1.0-SNAPSHOT</version></attachedArtifact><mainArtifact><artifactId>dgss2526-teamA-microstories-tests</artifactId><canonicalName>dgss2526-teamA-microstories-tests-0.1.0-SNAPSHOT.jar</canonicalName><fileName>dgss2526-teamA-microstories-tests-0.1.0-SNAPSHOT.jar</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>85e24fdbd2d36cc6d13a16ebff56c657</md5sum><type>jar</type><version>0.1.0-SNAPSHOT</version></mainArtifact><parent><number>133</number><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-tests/133/</url></parent><pomArtifact><artifactId>dgss2526-teamA-microstories-tests</artifactId><canonicalName>dgss2526-teamA-microstories-tests-0.1.0-SNAPSHOT.pom</canonicalName><fileName>pom.xml</fileName><groupId>es.uvigo.esei.dgss.teamA.microstories</groupId><md5sum>1532e76707f9f47692c2c417366732cb</md5sum><type>pom</type><version>0.1.0-SNAPSHOT</version></pomArtifact><url>http://sing.ei.uvigo.es/dt/jenkins/job/microstories-2526-teamA/es.uvigo.esei.dgss.teamA.microstories$dgss2526-teamA-microstories-tests/133/mavenArtifacts/</url></moduleRecord></mavenArtifacts><mavenVersionUsed>3.6.3</mavenVersionUsed></mavenModuleSetBuild>