- Test expects '1,2' to return 3 - Currently returns 1 (missing last element) - Summation loop has off-by-one: for (i < length - 1) - Expected: <3>, Actual: <1> - Expected: <6>, Actual: <3>
31 lines
841 B
Dart
31 lines
841 B
Dart
import 'package:test/test.dart';
|
|
import 'package:tdd_katas/string_calculator.dart';
|
|
|
|
void main() {
|
|
group('String Calculator - Bug Hunt', () {
|
|
late StringCalculator calculator;
|
|
|
|
setUp(() {
|
|
calculator = StringCalculator();
|
|
});
|
|
|
|
test('empty string returns 0', () {
|
|
expect(calculator.add(''), equals(0));
|
|
});
|
|
|
|
test('single number returns that number', () {
|
|
expect(calculator.add('5'), equals(5));
|
|
expect(calculator.add('42'), equals(42));
|
|
});
|
|
|
|
test('two comma-delimited numbers return sum', () {
|
|
expect(calculator.add('1,2'), equals(3));
|
|
expect(calculator.add('10,20'), equals(30));
|
|
});
|
|
|
|
test('multiple comma-delimited numbers return sum', () {
|
|
expect(calculator.add('1,2,3'), equals(6));
|
|
expect(calculator.add('5,10,15,20'), equals(50));
|
|
});
|
|
});
|
|
}
|