Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dev #330

Open
wants to merge 43 commits into
base: master
Choose a base branch
from
Open

Dev #330

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
35e58b2
Modificacao no cenario list Ferramentas
EdipoAndersen Oct 29, 2014
ea68bda
New ferramenta with website
EdipoAndersen Oct 29, 2014
0fb398f
Upload ferramenta without a file
EdipoAndersen Oct 29, 2014
b2e60c8
Cenario pra GUI: issue 291
EdipoAndersen Oct 29, 2014
a5358c9
Ajuste para rodar o projeto.
tiagonog Oct 29, 2014
ffc9153
Especificando mais filtragem de artigos
EdipoAndersen Oct 29, 2014
b16bd04
Cenario de GUI: listar artigos por autor.
EdipoAndersen Oct 29, 2014
15e5a6b
GUI: Remove record web
EdipoAndersen Oct 29, 2014
afd5ef4
Vems: Cenario duplicate conferencia
EdipoAndersen Oct 29, 2014
29bc49b
Revert "Vems: Cenario duplicate conferencia"
EdipoAndersen Oct 29, 2014
e5b6859
New record web
EdipoAndersen Oct 29, 2014
746d806
Vems: Cenario duplicate conferencia
EdipoAndersen Oct 29, 2014
3b18895
Vems: Remove multiple articles
EdipoAndersen Oct 29, 2014
36fdc42
Vems: Remove multiple articles web
EdipoAndersen Oct 29, 2014
15a93a8
issue #155 foi resolvida,
Hrfreire Oct 29, 2014
3f4893d
Vems: Cenario GUI Add a new article and post it
EdipoAndersen Oct 29, 2014
e46aa19
Merge remote-tracking branch 'origin/dev' into dev
Hrfreire Oct 29, 2014
13f7105
Vems: filter existing articles by conference
EdipoAndersen Oct 29, 2014
56a257a
Merge branch 'dev' of https://github.com/tjddn/rgms into dev
EdipoAndersen Oct 29, 2014
0b9bbb3
Adicao de 2 cenários de controlador e 2 cenários de GUI.
tiagonog Oct 29, 2014
723802a
Merge remote-tracking branch 'origin/dev' into dev
tiagonog Oct 29, 2014
4950946
Adicao de 2 cenários de controlador e 2 cenários de GUI.
tiagonog Oct 29, 2014
4d7ef29
Update Dissertacao.feature
FranclinC Oct 29, 2014
43df565
Testes criados e cenários modificados.
Nov 22, 2014
2ad1b61
Merge remote-tracking branch 'origin/dev' into dev
Nov 22, 2014
1cc8050
* Implementacao de testes para os cenários criados e alterados anteri…
tiagonog Nov 22, 2014
ef05a0e
Merge remote-tracking branch 'origin/dev' into dev
tiagonog Nov 22, 2014
4dd5112
Update TechnicalReport.feature
FranclinC Nov 23, 2014
80fd61f
Update Orientation.feature
FranclinC Nov 23, 2014
1b65e67
Update TechnicalReportSteps.groovy
FranclinC Nov 23, 2014
b66f34d
Update OrientationSteps.groovy
FranclinC Nov 23, 2014
eee6a11
Correcoes em Member
Jan 18, 2015
8bb5a69
Merge remote-tracking branch 'origin/dev' into dev
Jan 18, 2015
f375b33
Correcao de códigos duplicados em OrientationSteps.groovy e Technical…
tiagonog Jan 19, 2015
1154733
Update Book.feature
vinicemanuel Jan 20, 2015
ea543ad
Update BookSteps.groovy
vinicemanuel Jan 20, 2015
097915d
Impementacao de features descritas em Authentication.feature e Member…
tiagonog Jan 21, 2015
1387a7c
Merge remote-tracking branch 'origin/dev' into dev
tiagonog Jan 21, 2015
37e09e6
Identificação de clones de código
tiagonog Feb 7, 2015
73d21b4
Identificação de problemas de código detectáveis via análise estática
tiagonog Feb 7, 2015
99db2be
Update TechnicalReport.feature
FranclinC Feb 7, 2015
9583b25
Update TechnicalReportSteps.groovy
FranclinC Feb 7, 2015
d89dd35
Update TechnicalReportTestDataAndOperations.groovy
FranclinC Feb 7, 2015
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified chromedrivers/chromedrivermac
Binary file not shown.
1 change: 1 addition & 0 deletions grails-app/conf/BuildConfig.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +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'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -276,7 +276,7 @@ class AuthController {
// flash.message = message(code: 'default.created.message', args: [message(code: 'member.label', default: 'Member'), memberInstance.id])
// redirect(action: "index", id: memberInstance.id)

flash.message = message(code: 'default.created.message', args: [message(code: 'user.label', default: 'User'), memberInstance.name])
flash.message = message(code: 'default.created.message', args: [message(code: 'member.label', default: 'Member'), memberInstance.name])
redirect(uri: "/auth/login")
}

Expand Down
7 changes: 5 additions & 2 deletions grails-app/controllers/rgms/member/MemberController.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,8 @@ class MemberController {
}
//#end



def memberInstance = new Member(params)
def userInstance = new User(params)

Expand Down Expand Up @@ -84,8 +86,9 @@ class MemberController {
def title = message(code: 'mail.title.create.account')
def content = message(code: 'mail.body.create.account', args: [memberInstance.name, params.username, password, createLink(absolute: true, uri: '/')])

EmailService emailService = new EmailService();
emailService.sendEmail(email, mailSender, title, content)
//NAO ESTÁ FUNCIONANDO
//EmailService emailService = new EmailService();
//emailService.sendEmail(email, mailSender, title, content)

flash.message = message(code: 'default.created.message', args: [message(code: 'member.label', default: 'Member'), memberInstance.id])
redirect(action: "show", id: memberInstance.id)
Expand Down
2 changes: 1 addition & 1 deletion grails-app/domain/rgms/authentication/User.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ class User {
static hasMany = [roles: Role, permissions: String, ]

static constraints = {
username(unique:true,nullable: false, blank: false,size: 5..20)
username(unique:true,nullable: false, blank: false,size: 4..20)
enabled(blank: false)
author(unique: true, blank:false, nullable: false)
}
Expand Down
10 changes: 5 additions & 5 deletions grails-app/domain/rgms/member/Member.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -36,11 +36,11 @@ class Member {
email(unique:true,email: true, nullable: false)
additionalInfo(nullable:true)
status(nullable: false, inList: ["Graduate Student", "MSc Student", "PhD Student", "Professor", "Researcher"])
university(blank:false)
phone(nullable: true)
website(nullable:true, url:true)
city(nullable: true)
country(nullable: true)
university(blank:false,matches: ".*[a-zA-Z].*")
phone(nullable: true, matches: ".*[0-9].*", blank: true)
website(nullable:true, url:true, blank: true)
city(nullable: true, matches: "[a-zA-Z]+")
country(nullable: true, matches: "[a-zA-Z]+")
active(nullable: true)
access_token(nullable: true)
facebook_id(nullable: true)
Expand Down
2 changes: 1 addition & 1 deletion grails-app/i18n/messages_pt_BR.properties
Original file line number Diff line number Diff line change
Expand Up @@ -196,7 +196,7 @@ visit.label=Visita
mail.plugin.not.configured=Plugin de email nao configurado

#if($member)
member.label=Member
member.label=Membro
member.start.label=Início
member.end.label=Fim
member.status_H.label=Status H
Expand Down
5 changes: 3 additions & 2 deletions grails-app/views/auth/register.gsp
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
border: .2em solid #fff;
margin: 2em 2em 1em;
padding: 1em;
// width: 12em; 12em
/* width: 12em; */
width: 15em;
float: left;
-moz-box-shadow: 0px 0px 1.25em #ccc;
Expand Down Expand Up @@ -144,7 +144,8 @@ margin-top: 0;
<!--#if($facebook)-->
<tr>
<td ></td>
<td style="font-size: 14px;">Entre com o Facebook:
<td style="font-size: 14px;">
<p id="loginWithFacebookLabel">Login with Facebook:</p>
<g:render template="../FacebookAuth"/>
</td>
</tr>
Expand Down
4 changes: 2 additions & 2 deletions grails-app/views/member/_form.gsp
Original file line number Diff line number Diff line change
Expand Up @@ -53,14 +53,14 @@
<label for="phone">
<g:message code="member.phone.label" default="Phone" />
</label>
<g:textField name="phone" maxlength="50" required="" value="${userMemberInstanceList.memberInstance?.phone}"/>
<g:textField name="phone" maxlength="50" value="${userMemberInstanceList.memberInstance?.phone}"/>
</div>

<div class="fieldcontain ${hasErrors(bean: userMemberInstanceList.memberInstance, field: 'website', 'error')} required">
<label for="website">
<g:message code="member.website.label" default="Website" />
</label>
<g:textField name="website" maxlength="50" required="" value="${userMemberInstanceList.memberInstance?.website}"/>
<g:textField name="website" maxlength="50" value="${userMemberInstanceList.memberInstance?.website}"/>
</div>

<div class="fieldcontain ${hasErrors(bean: userMemberInstanceList.memberInstance, field: 'city', 'error')} required">
Expand Down
54 changes: 53 additions & 1 deletion test/cucumber/Article.feature
Original file line number Diff line number Diff line change
Expand Up @@ -149,17 +149,28 @@ Feature: journal article
When I create the article with filename "TCS-01.pdf" and with the title field blank
Then the article with blank title and with filename "TCS-01.pdf" field is not stored by the system

#if($filterExistingArticlesByAuthor)
Scenario: filter existing articles by author
Given the system has some articles authored by "Paulo Borba"
When the system filter the articles authored by author "Paulo Borba"
Then the system article list content is not modified
Then the system article list content only lists articles authored by "Paulo Borba"
#end

Scenario: remove multiple articles
Given the system has 3 articles entitled "A theory of software product line refinement" with file name "TCS-01.pdf", "Algebraic reasoning for object-oriented programming" with file name "AROOP-02.pdf" and "Modularity analysis of use case implementations" with file name "MACI-03.pdf"
When I remove the articles "A theory of software product line refinement" and "Modularity analysis of use case implementations"
Then the system removes the articles "A theory of software product line refinement" and "Modularity analysis of use case implementations"
And the system contains the "Algebraic reasoning for object-oriented programming" article

#if($listExistingArticlesOrderedByAuthor)
Scenario: list existing articles ordered by author
Given I am at the articles page
And the system has some articles created
When I select to view the list of articles
And I select to order the list of articles by "author"
Then my article list shows the articles ordered by "author"
#end

#if($Report)
Scenario: report existing article web
Given I am at the articles page
Expand All @@ -182,6 +193,15 @@ Scenario: list existing articles in alphabetical order of title web
And I select to order the list of articles by "publication date"
Then my article list shows the articles ordered by "publication date"

#if($listExistingArticlesOrderedByJournal)
Scenario: list existing articles ordered by journal
Given I am at the articles page
And the system has some articles created
When I select to view the list of articles
And I select to order the list of articles by "journal"
Then my article list shows the articles ordered by "journal"
#end

Scenario: new invalid article web (title field blank)
Given I am at the new article page
When I fill all article information except the title field
Expand All @@ -195,6 +215,38 @@ Scenario: list existing articles in alphabetical order of title web
And I select to filter the list of articles by author "Paulo Borba"
Then my article list shows only the articles authored by "Paulo Borba"


#if($remove multiple articles)
Scenario: remove multiple articles
Given I select to view the list of articles
And I see 3 articles entitled "A theory of software product line refinement", "Modularity analysis of use case implementations" and "Algebraic reasoning for object-oriented programming"
When I mark to be removed "A theory of software product line refinement" and "Modularity analysis of use case implementations"
And I select to remove the selected articles
Then the system removes the articles "A theory of software product line refinement" and "Modularity analysis of use case implementations".
#end

#if($remove multiple existing articles)
Scenario: remove multiple existing articles
Given the system has articles entitled "A theory of software product line refinement" with file name "TCS-44.pdf" and "Algebraic reasoning for object-oriented programming" with file name "AROOP-02.pdf"
When I delete the articles "A theory of software product line refinement" and "Algebraic reasoning for object-oriented programming"
Then the articles "A theory of software product line refinement" and "Algebraic reasoning for object-oriented programming" are properly removed by the system.
#end

#if(Add a new article and try to post it in the facebook)
Scenario: Add a new article and try to post it in the facebook
Given I am at the Add Article Page
When I try to create an article named as "A theory of software product line refinement 2" with filename "TCS-01.pdf"
And I click on Share on Facebook
Then A facebook message ask for login with a facebook acont
#end

#if(Filter existing articles by conference)
Scenario: filter existing articles by conference
Given the system has some articles in the conference "I International Conference on Software Engineering"
When the system filter the articles conference by "I International Conference on Software Engineering"
Then the system article list content is not modified
#end

Scenario: remove multiple articles web
Given I am at the articles page
And I create 3 articles entitled "A theory of software product line refinement" with file name "TCS-01.pdf", "Modularity analysis of use case implementations" with file name "MACI-03.pdf" and "Algebraic reasoning for object-oriented programming" with file name "AROOP-02.pdf"
Expand Down
33 changes: 24 additions & 9 deletions test/cucumber/Authentication.feature
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,14 @@ Feature: Authentication Process

Scenario: Login with user that doesn't exist fail message
Given I am at the Login Page
When I try to login with an user that does not exist
When I try to login with "usuarioInvalido" user that does not exist
Then I am redirected to the Login Page
And A login failure message is displayed

Scenario: Login with user's wrong password fail message
Given I am at the Login Page
When I try to login with an existent user, though with wrong password
When I try to login with an existent user
And I fill the password field with a wrong password
Then I am redirected to the Login Page
And A login failure message is displayed

Expand Down Expand Up @@ -48,13 +49,13 @@ Scenario: Unpermitted go to "Principal" Menu from Member Listagem
When I select the "Principal" menu option
Then I am redirected to the Publications Menu page

Scenario: Invalid password validation registration data remaining
Given I am at Register Page registering myself
And I mistype my confirmation password at Register Page
When I submit the form
Then I am redirected to the User Register Page
And The password fields are empty
And My remaining user data is still at their corresponding fields
Scenario: Invalid password validation registration data remaining
Given I am at Register Page registering a New User
And I mistype my confirmation password at Register Page
When I submit the form
Then I am redirected to the User Register Page
And The password fields are empty
And My remaining user data is still at their corresponding fields

Scenario: User unabilited receive not permitted message
Given I am at the Login Page
Expand Down Expand Up @@ -94,3 +95,17 @@ Scenario:
Given I am not logged
When I directly access the Publications Menu Page
Then I am redirected to the Login Page

#Antes estava: User User1 criado
Scenario: Display member register success message in portuguese
Given I am at the User Register Page
And I fill the field Name with "User1"
And I have the others fields filled correctly
When I press the Register Button
Then I am redirected to the Login Page
And The message Membro "User1" criado should be displayed

Scenario: Display the text to login with facebook in english
Given I want to create a new user
When I am at the Register Page
Then The text "Login with Facebook:" above the login button should be displayed
6 changes: 3 additions & 3 deletions test/cucumber/Book.feature
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ Feature: Book

Scenario: duplicate book
Given the book "SPL Development" is stored in the system with file name "NGSPL-0.pdf"
When I create the book "SPL Development" with file name "NGSPL-0.pdf"
Then the book "SPL Development" is not stored twice
When I create the book "SPL Development" with file name "NGSPL-0_copy.pdf"
Then the book "SPL Development" is stored twice

Scenario: edit existing book
Given the book "SPL Development" is stored in the system with file name "HSPLE.pdf"
Expand All @@ -34,4 +34,4 @@ 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
Then the book "Next Generation Software Product Line Engineering" was stored by the system
7 changes: 4 additions & 3 deletions test/cucumber/Conferencia.feature
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,12 @@ Feature: conferencia
When I create the conferencia "IV Conference on Software Product Lines" with file name "SPLC.pdf"
Then the conferencia "IV Conference on Software Product Lines" is properly stored by the system

#if($duplicateConferencia)
Scenario: duplicate conferencia
Given the conferencia "I International Conference on Software Engineering" is stored in the system with file name "IICSE-0.pdf"
When I create the conferencia "I International Conference on Software Engineering" with file name "IICSE-0.pdf"
Then the conferencia "I International Conference on Software Engineering" is not stored twice

When I create the conferencia "I International Conference on Software Engineering" with file name "IICSE-0_1.pdf"
Then the conferencia "I International Conference on Software Engineering" is stored twice
#end

Scenario: remove conferencia
Given the conferencia "IV Conference on Software Product Lines" is stored in the system with file name "IICSE-1.pdf"
Expand Down
26 changes: 22 additions & 4 deletions test/cucumber/Dissertacao.feature
Original file line number Diff line number Diff line change
Expand Up @@ -73,15 +73,15 @@ Feature: Dissertation Tests

Scenario: upload dissertation with a file
Given the system has some dissertation stored
Given the system has no dissertation entitled "New dissertation"
And the system has no dissertation entitled "New dissertation"
When I upload a new dissertation "curriculo3.xml" with title "New dissertation"
Then the system has more dissertations now

Scenario: upload a dissertation and system has no dissertation stored
Given the system has no dissertation entitled "New dissertation"
When I upload a new dissertation "curriculo2.xml" with title "New dissertation"
Then the system has more dissertations now

#if ($contextualInformation)

Scenario: create a new dissertation with user data already filled by default
Expand All @@ -90,4 +90,22 @@ Feature: Dissertation Tests
And I select the new dissertation option at the dissertation page
Then I see my user listed as an author member of dissertation by default
And I see my school name as school of dissertation by default
#end
#end

#if($listDissertationsAlphabetical)
Scenario: list existing dissertation in alphabetical order of title
Given the system has dissertation entitled "dissertacao"
And the system has other dissertation entitled "teste"
When the system orders the dissertation list by title
Then the system dissertation list contains first the "dissertacao" dissertation after "teste" dissertation.
#end


# if($listDissertationsAlphabeticalWeb)
Scenario: list existing dissertation in alphabetical order of title web
Given I am at the dissertation option at the program menu
And I create one dissertation entitled "dissertacao"
And I create one dissertation entitled "teste"
When I click to the title ordenation option
Then I can see a list of the dissertations ordered by title.
# end
24 changes: 15 additions & 9 deletions test/cucumber/Ferramenta.feature
Original file line number Diff line number Diff line change
Expand Up @@ -20,15 +20,19 @@ Feature: Ferramenta
When I edit the ferramenta title from "CCFinder" to "CCFinder REVIEWED"
Then the ferramenta "CCFinder REVIEWED" is properly updated by the system

Scenario: list ferramentas
Given the ferramenta "Tool" is stored in the system with file name "tool.pdf"
When I create the ferramenta "New" with file name "new.pdf"
Then The system list "Tool" and "New" ferramentas
#if ($listFerramentas)
Scenario: list ferramentas
Given the system has ferramenta entitled "CCFinder" with file name "ccfinder.pdf"
When I view the ferramenta list
Then my ferramenta list contains "CCFinder"
#end

Scenario: upload dissertation with a file
Given the system has some ferramenta stored
When I upload a new ferramenta "testelattes.xml"
Then the system has more ferramenta now
#if ($newFerramentaWithWebsite)
Scenario: new ferramenta with website
Given the system has no ferramenta entitled "CCFinder"
When I create the ferramenta "CCFinder" with file name "CCFinder.pdf" with its website
Then the ferramenta is properly stored by the system
#end

Scenario: remove existing ferramenta
Given the system has a ferramenta entitled "ToolDelete" with file name "tooldelete.pdf"
Expand All @@ -51,11 +55,13 @@ Feature: Ferramenta
Then I am still on create new ferramenta page
And the ferramenta is not displayed in the ferramentas list page

Scenario: upload dissertation without a file
#if ($uploadFerramentaWithoutAFile)
Scenario: upload ferramenta without a file
Given I am at the publications menu
When I select the "Ferramenta" option at the program menu
And I select the upload button at the ferramenta page
Then I am still on ferramenta page
#end

#if ($contextualInformation)
Scenario: new ferramenta filled with user data by default
Expand Down
Loading