14. Lexing (aka Tokenizing) Analogy
Dajalk j lkafjda V ljad jala l kajd ad eWwera 12
etq qowrer dSad we Dwlakd aDalkja akerkrjd
Create a Project A user with a role of <Role> in the
system <Can or Cannot Create> projects
15. Lexing (aka Tokenizing)
Create a Project
================
* A user with a role of <Role> in the system
<Can or Cannot Create> projects
Examples:
| Role | Can or Cannot Create |
| Admin | Can Create |
| User | Cannot Create |
[
[:GROUP, 'Create a Project'],
[:REQUIREMENT, 'Given a user has a role of ...'],
[:TEXT, 'Examples:'],
[:ROW, nil], [:CELL, 'Role' ], [:CELL, 'Can or Cannot Create'],
[:ROW, nil], [:CELL, 'Admin'], [:CELL, 'Can Create'],
[:ROW, nil], [:CELL, 'User' ], [:CELL, 'Cannot Create']
]
19. Create a Project
================
* A user with a role of <Role> in the system
<Can or Cannot Create> projects
Examples:
| Role | Can or Cannot Create |
| Admin | Can Create |
| User | Cannot Create |
[
[:GROUP, 'Create a Project'],
[:REQUIREMENT, 'Given a user has a role of ...'],
[:TEXT, 'Examples:'],
[:ROW, nil], [:CELL, 'Role' ], [:CELL, 'Can or Cannot Create'],
[:ROW, nil], [:CELL, 'Admin'], [:CELL, 'Can Create'],
[:ROW, nil], [:CELL, 'User' ], [:CELL, 'Cannot Create']
]
24. Lexing (aka Tokenizing) Analogy
Dajalk j lkafjda V ljad jala l kajd ad eWwera 12
etq qowrer dSad we Dwlakd aDalkja akerkrjd
Create a Project A user with a role of <Role> in the
system <Can or Cannot Create> projects
25. Parsing Analogy
Create a Project A user with a role of <Role> in the
system <Can or Cannot Create> projects
Create a Project
A user with a role of <Role> in the system
<Can or Cannot Create> projects
26. Parsing
GroupNode.new('Create a Project', [
RequirementNode.new('Given a user has a role of ...', [
ExamplesNode.new([
RowNode.new(['Role', 'Can or Cannot Create']),
RowNode.new(['Admin', 'Can Create']),
RowNode.new(['User', 'Cannot Create'])
])
])
])
[
[:GROUP, 'Create a Project'],
[:REQUIREMENT, 'Given a user has a role of ...'],
[:ROW, nil], [:CELL, 'Role' ], [:CELL, 'Can or Cannot Create'],
[:ROW, nil], [:CELL, 'Admin'], [:CELL, 'Can Create'],
[:ROW, nil], [:CELL, 'User' ], [:CELL, 'Cannot Create']
]
29. GroupNode.new('Create a Project', [
RequirementNode.new('Given a user has a role of ...', [
ExamplesNode.new([
RowNode.new(['Role', 'Can or Cannot Create']),
RowNode.new(['Admin', 'Can Create']),
RowNode.new(['User', 'Cannot Create'])
])
])
])
[
[:GROUP, 'Create a Project'],
[:REQUIREMENT, 'Given a user has a role of ...'],
[:ROW, nil], [:CELL, 'Role' ], [:CELL, 'Can or Cannot Create'],
[:ROW, nil], [:CELL, 'Admin'], [:CELL, 'Can Create'],
[:ROW, nil], [:CELL, 'User' ], [:CELL, 'Cannot Create']
]