Skip to content

Commit a74fc01

Browse files
committed
TEST: Scenario & Test opérationnels
1 parent 3d5fbd7 commit a74fc01

3 files changed

Lines changed: 38 additions & 25 deletions

File tree

features/duplicate_portfolio.feature

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,23 +4,15 @@ Fonctionnalité: Dupliquer un portfolio pour un usage privé
44

55
Contexte:
66

7-
Soit le portfolio "vitraux"
8-
Soit le point de vue "Histoire de l'art" rattaché au portfolio "vitraux"
7+
Soit "vitraux" le portfolio ouvert
8+
Soit le point de vue "Histoire des religions" rattaché au portfolio "vitraux"
99
Soit le corpus "Vitraux - Dr. Krieger" rattaché au portfolio "vitraux"
1010

1111
Scénario: Dupliquer un portfolio
1212

1313
Soit l'utilisateur est connecté
1414
Et "vitraux" le portfolio ouvert
15-
Quand on créé une copie du portfolio appelée "VitrauxPrivate" avec le corpus "Vitraux - Dr. Krieger" et le point de vue "Histoire de l'art"
16-
Alors une nouvelle fenêtre s'ouvre
17-
Et le titre affiché est "VITRAUXPRIVATE"
18-
19-
Scénario: quand une rubrique est sélectionnée
20-
21-
Soit "vitraux" le portfolio ouvert
22-
Et "Artiste" une des rubriques développées
23-
Et "Datation" une des rubriques développées
24-
Quand on sélectionne la rubrique "Ateliers du Carmel du Mans"
25-
Alors il doit y avoir au moins 18 items sélectionnés décrits par "Ateliers du Carmel du Mans"
26-
Et il doit y avoir au moins 18 items sélectionnés décrits par "XIXe s."
15+
Quand on créé une copie du portfolio appelée "dupp-vitraux" avec le corpus "Vitraux - Dr. Krieger" et le point de vue "Histoire des religions"
16+
Alors le titre affiché est "DUPP-VITRAUX"
17+
Et un des corpus affichés est "Vitraux - Dr. Krieger"
18+
Et un des points de vue affichés est "Histoire de l'art"

features/step_definitions/portfolio.rb

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,14 @@ def getUUID(itemName)
4848
# On the remote servers
4949
end
5050

51+
Soit("l'utilisateur est connecté") do
52+
53+
find_link(href: '#login').click
54+
fill_in("Nom d'utilisateur", with: "alice")
55+
fill_in("Mot de passe", with: "whiterabbit")
56+
click_on('Confirmer')
57+
end
58+
5159
Soit("{string} le portfolio spécifié dans la configuration") do |portfolio|
5260
case portfolio
5361
when "vitraux"
@@ -110,6 +118,20 @@ def getUUID(itemName)
110118
click_on item
111119
end
112120

121+
def in_modal()
122+
f = find('.modal-content')
123+
end
124+
125+
Quand("on créé une copie du portfolio appelée {string} avec le corpus {string} et le point de vue {string}") do |name, corpus, viewpoint|
126+
click_button('alice')
127+
click_link('Dupliquer')
128+
in_modal.fill_in('copyName', with: name)
129+
in_modal.check(corpus)
130+
in_modal.check(viewpoint)
131+
in_modal.click_on('Valider')
132+
in_modal.click_on('Confirmer')
133+
end
134+
113135
# Outcomes
114136

115137
Alors("le titre affiché est {string}") do |portfolio|
@@ -139,4 +161,3 @@ def getUUID(itemName)
139161
Alors ("l'item {string} n'est pas affiché") do |item|
140162
expect(page).not_to have_content item
141163
end
142-

src/components/Duplication/Duplicator.jsx

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,11 @@ class Duplicator extends Component {
2222
this.onChangeCheckBox = this.onChangeCheckBox.bind(this);
2323
this.closeToast = this.closeToast.bind(this)
2424
}
25-
25+
2626
handleClose() {
2727
this.setState({ showModal: false, showModalConfirmation: false });
2828
}
29-
29+
3030
handleShow() {
3131
this.setState({ showModal: true });
3232
}
@@ -50,7 +50,7 @@ class Duplicator extends Component {
5050
const _error = (x) => console.error(x.message);
5151

5252
let that = this
53-
53+
5454

5555
this.state.viewpoints.forEach(function(viewpoint) {
5656
db.getView('/viewpoint/' + viewpoint)
@@ -129,22 +129,22 @@ class Duplicator extends Component {
129129
})
130130
}
131131

132-
render() {
132+
render() {
133133
let name = this.props.userConnected + '-' + this.props.portfolio
134134
let corpora = this.props.corpora.map((v, i) =>
135135
<div className='Modal-Group' key={v.id}>
136-
<input className='Modal-CheckBox Corpus' value={v.id} onChange={this.onChangeCheckBox} type="checkbox"/>
136+
<input name={v.id} className='Modal-CheckBox Corpus' value={v.id} onChange={this.onChangeCheckBox} type="checkbox"/>
137137
{v.id}
138138
</div>
139139
);
140140

141141
let viewpoints = this.props.viewpoints.map((v, i) =>
142142
<div className='Modal-Group' key={v.id}>
143-
<input className='Modal-CheckBox ViewPoint' value={v.id} onChange={this.onChangeCheckBox} type="checkbox"/>
143+
<input name={v.name} className='Modal-CheckBox ViewPoint' value={v.id} onChange={this.onChangeCheckBox} type="checkbox"/>
144144
{v.name}
145145
</div>
146146
);
147-
147+
148148

149149
return (
150150
<div>
@@ -171,7 +171,7 @@ class Duplicator extends Component {
171171
<Modal show={this.state.showModal}>
172172
<Modal.Body>
173173
<h3>Nom du portfolio</h3>
174-
<input type='text' className='Modal-Input form-control' defaultValue={name} placeholder='Nom du nouveau portfolio' id="portfolioDuplicatedName"/>
174+
<input type='text' name="copyName" className='Modal-Input form-control' defaultValue={name} placeholder='Nom du nouveau portfolio' id="portfolioDuplicatedName"/>
175175
<div className='Modal-Group Modal-Title'>
176176
<h3>Corpus</h3>
177177
<div className='Modal-Group'><input className='Modal-CheckBox checkCorpora' type="checkbox" onChange={this.onChangeCheckBox}/>Tout</div>
@@ -183,7 +183,7 @@ class Duplicator extends Component {
183183
<br/>
184184
<div className='Modal-Group Modal-Title'>
185185
<h3>Points de vue</h3>
186-
<div className='Modal-Group'><input className='Modal-CheckBox checkViewPoints' type="checkbox" onChange={this.onChangeCheckBox}/>Tout</div>
186+
<div className='Modal-Group'><input className='Modal-CheckBox checkViewPoints' name={name} type="checkbox" onChange={this.onChangeCheckBox}/>Tout</div>
187187
</div>
188188
<hr/>
189189
<div id="viewPointsList">
@@ -201,7 +201,7 @@ class Duplicator extends Component {
201201
</Modal>
202202
<Dropdown.Item eventKey="2" onClick={this.handleShow}>Dupliquer</Dropdown.Item>
203203
</div>
204-
204+
205205
)
206206
}
207207
}

0 commit comments

Comments
 (0)