diff --git a/grails-app/conf/BuildConfig.groovy b/grails-app/conf/BuildConfig.groovy index 42066943..630928ec 100644 --- a/grails-app/conf/BuildConfig.groovy +++ b/grails-app/conf/BuildConfig.groovy @@ -28,7 +28,7 @@ grails.project.dependency.resolution = { grailsHome() grailsCentral() mavenCentral() - + //mavenRepo "http://repo.grails.org/grails/plugins" // uncomment these to enable remote dependency resolution from public Maven repositories //mavenCentral() //mavenLocal() @@ -46,7 +46,7 @@ grails.project.dependency.resolution = { compile('lib:itext-pdfa:5.4.0') compile('lib:itext-xtra:5.4.0') compile('lib:twitter4j-core:4.0.1') - + //compile('commons-codec:commons-codec:1.6') compile(group: 'org.apache.poi', name: 'poi', version: '3.7') { excludes 'xmlbeans' } diff --git a/test/cucumber/BibtexGenerateFile.feature b/test/cucumber/BibtexGenerateFile.feature index 566bfa51..870c958d 100644 --- a/test/cucumber/BibtexGenerateFile.feature +++ b/test/cucumber/BibtexGenerateFile.feature @@ -8,3 +8,72 @@ Feature: all bibtex When I select the export bibtex file option at the publications menu And I select Generate All BibTex option at the export bibtex page Then I can see the bibtex details + + Scenario: Duplicate citation-key generation + Given I have an article named "A theory of software product line refinement" + And I have an article named "A new approach to large-scale software development" + When I generate a BibTex file + Then the BibTex file has unique citation-keys for each article + + Scenario: Generate new BibTex from a subset of publications + Given I am on the "Publications" menu + When I select the "Generate BibTex" option + Then I can select which files to include in the BibTex generation + + Scenario: Publications with multiple authors must have authors' names separated by an and + Given I have an article with multiple authors + When I generate a BibTex file + Then the BibTex file author field must have the authors' names separated by an and + + #if ($InvalidEntryOfBibtex) + Scenario: Tags are not separated by commas + Given: I am logged into the system + And: I am at the main menu + And: A BibTeX entry is "@article{mrx05 + auTHor = "Mr. X", + Title = {Something Great}, + publisher = "nob" # "ody", + YEAR = 2005, + }" + When: I click to "generate BibTex" + Then: the request is not done by the system because are not separated by commas + + Scenario: Incompatible tags for type of publication chosen + Given: I am logged into the system + And: I am at the main menu + And: A BibTeX entry is "@article{mrx05, + auTHor = "Mr. X", + Title = {Something Great}, + publisher = "nob" # "ody", + YEAR = 2005, + chapter = 8, + }" + When: I click to "generate BibTex" + Then: the request is not done by the system because these tags are incompatible + + Scenario: Lack mandatory tags for type of publication chosen + Given: I am logged into the system + And: I am at the main menu + And: A BibTeX entry is "@article{mrx05, + auTHor = "Mr. X", + Title = {Something Great}, + publisher = "nob" # "ody", + }" + When: I click to "generate BibTex" + Then: the request is not done by the system because mandatory tags are not complete + #end + + #if ($CorrectEntryOfBibtex) + Scenario: Bibtex file is generated + Given: I am logged into the system + And: I am at the main menu + And: A Bibtex entry is "@article{mrx05, + auTHor = "Mr. X", + Title = {Something Great}, + publisher = "nob" # "ody", + YEAR = 2005, + }" + When: I click to "generate BibTex" + Then: the request is done by the system + And: a BibTex file is generated + #end \ No newline at end of file diff --git a/test/cucumber/Book.feature b/test/cucumber/Book.feature index 3624ed38..4b4adf74 100644 --- a/test/cucumber/Book.feature +++ b/test/cucumber/Book.feature @@ -34,4 +34,6 @@ Feature: Book And the system has no book entitled "Next Generation Software Product Line Engineering" When I go to new book page And I use the webpage to create the book "Next Generation Software Product Line Engineering" with file name "Ngs.pdf" - Then the book "Next Generation Software Product Line Engineering" was stored by the system \ No newline at end of file + Then the book "Next Generation Software Product Line Engineering" was stored by the system + + Scenario: testeando \ No newline at end of file diff --git a/test/cucumber/Conferencia.feature b/test/cucumber/Conferencia.feature index 8553a4a3..98af17e5 100644 --- a/test/cucumber/Conferencia.feature +++ b/test/cucumber/Conferencia.feature @@ -1,8 +1,8 @@ @i9n Feature: conferencia As a member of a research group - I want to add, remove and modify conferencias I have published - so that I can generate web pages and reports containing these conferencias + So that I can add, remove and modify conferencias I had published + I want to generate web pages and reports containing these conferencias Scenario: new conferencia Given the system has no conferencia entitled "IV Conference on Software Product Lines" @@ -144,4 +144,64 @@ Feature: conferencia And I select the option Serach for Conference at the conference page Then a list of all conferences containing that date will be presented in the conference screen -# voces podem criar cenários para ordenar a lista de conferencia, filtrar a lista, verificar se alguns campos podem ser opcionais, etc. + Scenario: Publish a new article + Given I am at the article registration page + When I am filling in the author field + And As I type the name, they come up suggestions of names containing the string entered as "And" may appear names like " Anderson " or " Candido " + Then I choose the right name if it appears , otherwise we fill the whole field + + Scenario: new article + Given I am at the publications + When I select the "conferencia" option at the publications menu + And I select the new article + Then I can fill the article details + + Scenario: remove article + Given I am at the publications menu + When I select the "conferencia" option at the publications menu + And a list of articles stored by the system is displayed at the conferencia page + Then I select the desired article + Then I can remove the article + + Scenario: new article from an existing conference + Given the conference "I International Conference on software Engineering" is stored in the system + When I type the letter "I" in the conference field to publish a new article + Then the system suggests "I International Conference on software Engineering" + + Scenario: author suggestion for a new article (existing author) + Given I am adding a new article + When I type the first letter in the Author field + Then a list is displayed suggesting names from Authors who already published an article + And I select the name I want + + Scenario: Search conference web by existing Author + Given I am at the Search Conference page + When I write a name from an Author who already published an article at the Search field + And I click on the Search button + Then a list of all conferences with articles from that Author are displayed + + Scenario: System can suggest one author for new conferencia being created (good path) + Given I am at Add new conferencia page + And I had previously published only with "Júnior" + When I try to fill "J" in Authors + Then the system should suggest "Júnior" as an possible author + When I select "Júnior" + Then "Júnior" should be added in "Authors" + + Background: Start from the Add new conferencia page with conferencias yet published + Given I am at Add new conferencia page + And I had previously published with "Jorge", "Junior Lima" and "Fábio Jr" + + Scenario: System can suggest some authors for new conferencia being created (good path) + When I try to fill "J" in Authors + Then the system should suggest "Jorge", "Junior Lima" and "Fábio Jr" as possible authors in lexicographical order + When I select "Jorge" and other suggested authors + Then the selected authors should be added in "Authors" + + Scenario: System can try to suggest some authors for new conferencia being created (bad path) + When I try to fill "K" in Authors + Then the system should suggest the latest 5 authors I had published as possible authors + When I select any suggested author + Then the selected author should be added in "Authors" + +# voces podem criar cenários para ordenar a lista de conferencia, filtrar a lista, verificar se alguns campos podem ser opcionais, etc. \ No newline at end of file diff --git a/test/cucumber/Reports.feature b/test/cucumber/Reports.feature index bf58123a..979a4281 100644 --- a/test/cucumber/Reports.feature +++ b/test/cucumber/Reports.feature @@ -7,6 +7,9 @@ Feature: Reports When I select the "1" option at the Member list And I can select the option Export to HTML at the Member show Then I can generate a HTML report about Member "1" + And I can see a photography of the Member + And I can see a description about the member + And I can see a list of Menber publications Scenario: export existent member report to xml Given I am at the Member list page @@ -14,41 +17,113 @@ Feature: Reports And I can select the option Export to XML at the Member show Then I can generate a XML report about Member "1" - Scenario: export recently created member report to pdf - Given I am at the publications menu - When I select the Novo Member option - Then I fill the Member details with "John Smith" "JohnSmith" "JohnSmith@gmail.cin.ufpe.br" "UFPE" and create a new one - Then I select the "2" option at the Member list + Scenario: export existent member report to pdf + Given I am at the Member list page + When I select the "1" option at the Member list And I can select the option Export to PDF at the Member show - Then I can generate a PDF report about Member "2" + Then I can generate a PDF report about Member "1" - Scenario: export report to pdf of recently created research group + Scenario: create a new Menber + Given I am at the Member list page + When I select the Novo Member option + And I can fill the Member "Name" with "John Smith" + And I can fill the Member "Username" with "JohnSmith" + And I can fill the Member "Email" with "JohnSmith@gmail.cin.ufpe.br" + And I can fill the Member "University" "UFPE" + And I can select "Criar" option + Then I can see the new user in Member Listagem + + Scenario: missing field error when creating a new Menber + Given I am at the Member list page + When I select the Novo Member option + And I dont fill a field with "*" symbol + And I can select "Criar" option + Then I can see a error message + + Scenario: invalid value in field error when creating a new Menber + Given I am at the Member list page + When I select the Novo Member option + And I can fill a field with an invalid value + And I can select "Criar" option + Then I can see a error message + + Scenario: export recently created member report to pdf + Given I am at the Member list page + When I can create a new Member named "João Paulo Silva" + Then I can export to PDF the existent member named "João Paulo Silva" + + Scenario: export recently created member report to xml + Given I am at the Member list page + When I can create a new Member named "João Paulo Silva" + Then I can export to XML the existent member named "João Paulo Silva" + + Scenario: export recently created member report to html + Given I am at the Member list page + When I can create a new Member named "João Paulo Silva" + Then I can export to HTML the existent member named "João Paulo Silva" + + Scenario: create a new research group Given I am at the publications menu When I select the "Research Group" option at the publications menu And I select the new research group option at research group list page - Then I can fill the research group details with name "RGroup" and create a new one - And I select the "RGroup" option at the Research Group list - And I can select the option Export to PDF at the Research Group show - And I can generate a PDF report about Research Group "RGroup" + And I can fill the field "Nome" with value "Grupo1" + And I can fill the field "Twitter" with value "@Grupo1" + And I can fill the field "Descrição" with value "Grupo de pesquisa 1" + And I can select some members at member list + And I can select "Criar" option + Then I can see the new research group in Research Group list - Scenario: export report to html of recently created research group + Scenario: missing field error when creating a research group Given I am at the publications menu When I select the "Research Group" option at the publications menu And I select the new research group option at research group list page - Then I can fill the research group details with name "RGroup" and create a new one - And I select the "RGroup" option at the Research Group list - And I can select the option Export to HTML at the Research Group show - And I can generate a HTML report about Research Group "RGroup" + And I dont fill a field with "*" symbol + And I can select "Criar" option + Then I can see a error message - Scenario: export report to xml of recently created research group + + Scenario: invalid value in field error when creating a research group Given I am at the publications menu When I select the "Research Group" option at the publications menu And I select the new research group option at research group list page - Then I can fill the research group details with name "RGroup" and create a new one + And I can fill a field with an invalid value + And I can select "Criar" option + Then I can see a error message + + Scenario: export report to pdf of existent research group + Given I am at the publications menu + And I select the "RGroup" option at the Research Group list + And I can select the option Export to PDF at the Research Group show page + Then I can generate a PDF report about Research Group "RGroup" + + Scenario: export report to xml of existent research group + Given I am at the publications menu + And I select the "RGroup" option at the Research Group list + And I can select the option Export to PDF at the Research Group show page + Then I can generate a XML report about Research Group "RGroup" + + Scenario: export report to html of existent research group + Given I am at the publications menu And I select the "RGroup" option at the Research Group list - And I can select the option Export to XML at the Research Group show - And I can generate a XML report about Research Group "RGroup" + And I can select the option Export to PDF at the Research Group show page + Then I can generate a HMTL report about Research Group "RGroup" + + Scenario: export report to pdf of recently created research group + Given I am at the publications menu + When I create a new Research Group named "RGroup" + Then I can generate a PDF report about existent Research Group "RGroup" + + + Scenario: export report to html of recently created research group + Given I am at the publications menu + When I create a new Research Group named "RGroup" + Then I can generate a HTML report about existent Research Group "RGroup" + + Scenario: export report to xml of recently created research group + Given I am at the publications menu + When I create a new Research Group named "RGroup" + Then I can generate a XML report about existent Research Group "RGroup" Scenario: export existent member report to html and access bibtex from him Given I am at the Member list page @@ -94,3 +169,51 @@ Feature: Reports And I select the option Export to HTML at the News list page Then The system generate a HTML report with the news "The first news" in it #end + + Scenario: export a existent research group report to html + Given I am in research group list page + When I select "RGMSGroup" option at the resourch group list + And I select the option export to html at the resourch group show + Then I export a html report about resourch group "RGMSGroup" + + Scenario: export a existent news report to html + Given I am in News list page + When I select "RGMSNews" option at the News list + And I select the option export to html at the News show + Then I export a html report about News "RGMSNews" + + Scenario: export a existent research group report to pdf + Given I am in research group list page + When I select "RGMSGroup" option at the resourch group list + And I select the option export to PDF at the resourch group show + Then I export a PDF report about resourch group "RGMSGroup" + + Scenario: export a existent news report to PDF + Given I am in News list page + When I select "RGMSNews" option at the News list + And I select the option export to PDF at the News show + Then I export a PDF report about News "RGMSNews" + + Scenario: export a existent research group report to xml + Given I am in research group list page + When I select "RGMSGroup" option at the resourch group list + And I select the option export to XML at the resourch group show + Then I export a XML report about resourch group "RGMSGroup" + + Scenario: export a existent news report to xml + Given I am in News list page + When I select "RGMSNews" option at the News list + And I select the option export to XML at the News show + Then I export a XML report about News "RGMSNews" + + Scenario: export report to html link not enable when there is not resourch group created + Given I am in resourch group list page + And there is not resourch group created + When I try to select the Export to html option at the resourch group list page + Then I can not select the option Export to HTML at the News list page + + Scenario: export report to html link not enable when there is not members report created + Given I am at the member list page + And there is not Member created + When I try to select the Export to html option at the Member list page + Then I can not select the option Export to HTML at the Member list page \ No newline at end of file diff --git a/test/cucumber/XMLImport.feature b/test/cucumber/XMLImport.feature index cc0dcc6a..d6d1372d 100644 --- a/test/cucumber/XMLImport.feature +++ b/test/cucumber/XMLImport.feature @@ -10,8 +10,6 @@ Feature: XMLImport When I select the "upload" button And I upload the file "cv.pdf" Then the system outputs an error message - And no new publication is stored by the system - And the previously stored publications do not change @ignore Scenario: invalid file @@ -30,20 +28,15 @@ Feature: XMLImport @ignore Scenario: no file web Given I am at the "Import XML File" Page - And the system has some publications stored When I click on "upload" without select a xml file Then the system outputs an error message - And no new publication is stored by the system - And the previously stored publications do not change @ignore - Scenario: new publication + Scenario: create a new publication Given the system has some publications stored - And the system has no journal article entitled "An Abstract Equivalence Notion for Object Models" authored by me - When I upload the file "cv.xml" which contains a journal article entitled "An Abstract Equivalence Notion for Object Models" authored by me - Then the system outputs a list of imported publications which contains the journal article entitled "An Abstract Equivalence Notion for Object Models" with status "stable" - And no new publication is stored by the system - And the previously stored publications do not change + And the system has no journal article entitled "An Abstract Equivalence Notion for Object Models” + When I upload the file "cv.xml" which contains a journal article entitled "An Abstract Equivalence Notion for Object Models” + Then a journal article entitled "An Abstract Equivalence Notion for Object Models” is stored by the system @ignore Scenario: confirm import of new publication @@ -327,6 +320,26 @@ Feature: XMLImport When I cancel the import of the master's orientation entitled "Structuring Adaptive Aplications using AspectJ" with status "conflicted" And the master's orientation entitled "Structuring Adaptive Aplications using AspectJ" with status "conflicted" is removed from the list of imported orientations And the previously stored orientations do not change + + + + #if($ToleranceLevel) + @ignore + Scenario: publications with similar names should be considered as duplicates, according to the tolerance level + Given the system has a master's orientation entitled "Intraprocedural Dataflow Analysis for Software Product Lines" with year "2013", among several orientations + And the similarity tolerance is configured to "5" + When I upload the file "cv-duplicatedOrientationC.xml" which contains a master's orientation entitled "Intraprocedurall dataflow analysis for software product lines" with year "2014" + Then the system outputs a list of imported orientations which contains the master's orientation entitled "Intraprocedural Dataflow Analysis for Software Product Lines" with status "conflicted" + And no new orientation is stored by the system + And the previously stored orientations do not change + + @ignore + Scenario: the tolerance level is not informed + Given I am at the "Import XML File" Page + And I have selected a xml file + When I click on "upload" without inform the tolerance level + Then the system outputs an error message + #end # o que acontece quando o arquivo tem publicações já cadastradas? e # publicações com mesmos títulos mas outras partes diferentes? e