RED: test executing command sequences
This commit is contained in:
parent
c6235bd38a
commit
9cc1ae42b0
1 changed files with 36 additions and 0 deletions
|
|
@ -92,5 +92,41 @@ void main() {
|
|||
expect(rover.y, equals(0));
|
||||
});
|
||||
});
|
||||
|
||||
group('Executing Command Sequences:', () {
|
||||
test('single command L', () {
|
||||
final rover = Rover(x: 0, y: 0, direction: 'N');
|
||||
rover.execute('L');
|
||||
expect(rover.direction, equals('W'));
|
||||
});
|
||||
|
||||
test('single command R', () {
|
||||
final rover = Rover(x: 0, y: 0, direction: 'N');
|
||||
rover.execute('R');
|
||||
expect(rover.direction, equals('E'));
|
||||
});
|
||||
|
||||
test('single command M', () {
|
||||
final rover = Rover(x: 0, y: 0, direction: 'N');
|
||||
rover.execute('M');
|
||||
expect(rover.y, equals(1));
|
||||
});
|
||||
|
||||
test('complex sequence MMRMMLM', () {
|
||||
final rover = Rover(x: 0, y: 0, direction: 'N');
|
||||
rover.execute('MMRMMLM');
|
||||
expect(rover.x, equals(2));
|
||||
expect(rover.y, equals(3));
|
||||
expect(rover.direction, equals('N'));
|
||||
});
|
||||
|
||||
test('example from Mars Rover kata', () {
|
||||
final rover = Rover(x: 1, y: 2, direction: 'N');
|
||||
rover.execute('LMLMLMLMM');
|
||||
expect(rover.x, equals(1));
|
||||
expect(rover.y, equals(3));
|
||||
expect(rover.direction, equals('N'));
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue