Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
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
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,4 @@ build

# misc
.DS_Store
yarn.lock
30 changes: 30 additions & 0 deletions features/assign_a_topic_to_every_selected_item.feature
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
#language: fr

Fonctionnalité: Ajouter une rubrique à tous les items séléctionnés

Contexte:
Soit le point de vue "Histoire de l'art" rattaché au portfolio "vitraux"
Soit le point de vue "Histoire des religions" rattaché au portfolio "vitraux"

Soit le corpus "Vitraux - Bénel" rattaché au portfolio "vitraux"
Soit le corpus "Vitraux - Recensement" rattaché au portfolio "vitraux"
Soit le corpus "Vitraux - Dr. Krieger" rattaché au portfolio "vitraux"

Soit la rubrique "XIXe s." rattachée au point de vue "Histoire de l'art"
Soit la rubrique "Technique du verre" rattachée au point de vue "Histoire de l'art"

Soit l'item "DSN 000" rattaché à la rubrique "XIXe s."
Soit l'item "DSN 001" rattaché à la rubrique "XIXe s."
Soit l'item "DSN 002" rattaché à la rubrique "XIXe s."
Soit l'item "DSN 004" rattaché à la rubrique "XIXe s."
Soit l'item "DSN 005" rattaché à la rubrique "XIXe s."

Scénario:
Soit "vitraux" le portfolio ouvert
Et l'utilisateur est connecté
Et "Datation" une des rubriques développées
Et la rubrique "XIXe s." sélectionnée
Et le mode sélection activé
Quand on attribue la rubrique "Technique du verre" aux items "DSN 000", "DSN 001", "DSN 002", "DSN 004", et "DSN 005"
Alors les items "DSN 000", "DSN 001", "DSN 002", "DSN 004" et "DSN 005" ont la rubrique "Technique du verre"

70 changes: 69 additions & 1 deletion features/step_definitions/portfolio.rb
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ def getUUID(itemName)
end

Soit("{string} le portfolio ouvert") do |portfolio|
visit "/"
visit "/" + portfolio
end

Soit("{string} une des rubriques développées") do |topic|
Expand Down Expand Up @@ -92,6 +92,22 @@ def getUUID(itemName)
visit "/"
end

Soit("la rubrique {string} sélectionnée") do |topic|
find_link(topic).click
end

Soit("l'utilisateur est connecté") do
find_link(href: '#login').click
fill_in("nom d'utilisateur", with: "alice")
fill_in("mot de passe", with: "whiterabbit")
click_on('Se connecter')
end

# For scenatio with multiple selection
Soit("le mode sélection activé") do
click_on('Attribuer Topic')
end

# Events

Quand("un visiteur ouvre la page d'accueil du site") do
Expand All @@ -110,6 +126,39 @@ def getUUID(itemName)
click_on item
end

Quand("on ajoute un attribut de recherche {string} avec pour valeur {string}") do |attribut, valeur|
fill_in('Attribut1', with: attribut)
fill_in('Valeur1', with: valeur)
click_button('Rechercher')
end

Quand("on ajoute un attribut de recherche {string} avec pour valeur {string} et un attribut de recherche {string} avec pour valeur {string}") do |attribut1, attribut2, valeur1, valeur2|
fill_in('Attribut1', with: attribut1)
fill_in('Valeur1', with: valeur1)
find_button(class: ['btn', 'btn-light', 'creationButton']).click
fill_in('Attribut2', with: attribut2)
fill_in('Valeur2', with: valeur2)
click_button('Rechercher')
end

Quand("on attribue la rubrique {string} aux items {string}, {string}, {string}, {string}, et {string}") do |topic, item1, item2, item3, item4, item5|

click_on(item1)
click_on(item2)
click_on(item3)
click_on(item4)
click_on(item5)
find('.TopicGroupAddInput').send_keys [topic, :down, :enter]
find('.TopicGroupAddButton').click
click_button('Confirmer')
click_button('Fermer')
click_button('Annuler')
end

Quand("on met {string} dans la barre de recherche") do |value|
fill_in('Rechercher...', with: value).native.send_keys(:return)
end

# Outcomes

Alors("le titre affiché est {string}") do |portfolio|
Expand Down Expand Up @@ -140,3 +189,22 @@ def getUUID(itemName)
expect(page).not_to have_content item
end


Alors("les dessins {string} et {string} sont parmi les dessins affichés") do |valeur1, valeur2|
expect(page).to have_content(valeur1)
expect(page).to have_content(valeur2)
end


Alors("les items {string}, {string}, {string}, {string} et {string} ont la rubrique {string}") do |item1, item2, item3, item4, item5, topic|
click_on(topic)
expect(page).to have_content item1
expect(page).to have_content item2
expect(page).to have_content item3
expect(page).to have_content item4
expect(page).to have_content item5
end

Alors("il doit y avoir au moins {int} items dans la rubrique {string}") do |int, string|
pending # Write code here that turns the phrase above into concrete actions
end
Loading