Skip to content

Commit

Permalink
tests
Browse files Browse the repository at this point in the history
  • Loading branch information
Macacoazul01 committed Feb 19, 2024
1 parent daa619f commit 4058c6c
Show file tree
Hide file tree
Showing 3 changed files with 36 additions and 5 deletions.
4 changes: 2 additions & 2 deletions example/lib/main.dart
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@ class _MyHomePageState extends State<MyHomePage> {
final CurrencyTextFieldController _controller = CurrencyTextFieldController();
final CurrencyTextFieldController _controller2 = CurrencyTextFieldController(
initDoubleValue: -10, currencySeparator: ' -> ');
final CurrencyTextFieldController _controller3 =
CurrencyTextFieldController(initIntValue: -1000, enableNegative: false, maxValue: 2000);
final CurrencyTextFieldController _controller3 = CurrencyTextFieldController(
initIntValue: -1000, enableNegative: false, maxValue: 2000);

@override
Widget build(BuildContext context) {
Expand Down
1 change: 1 addition & 0 deletions lib/currency_textfield.dart
Original file line number Diff line number Diff line change
Expand Up @@ -175,6 +175,7 @@ class CurrencyTextFieldController extends TextEditingController {
} else {
_isNegative = false;
}
_checkMaxValue();
_previewsText = _composeCurrency(_applyMaskTo(value: _value));
text = _previewsText;
_setSelectionBy(offset: text.length);
Expand Down
36 changes: 33 additions & 3 deletions test/currency_textfield_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -99,12 +99,42 @@ void main() {

test('get_text_without_currency', () {
final controller = CurrencyTextFieldController(initIntValue: 195);
final controller2 = CurrencyTextFieldController(initIntValue: 195, currencyOnLeft: false);
final controller3 = CurrencyTextFieldController(initDoubleValue: 195,currencySymbol: 'test',currencySeparator: ' e ');
final controller4 = CurrencyTextFieldController(initIntValue: 195, currencyOnLeft: false,currencySymbol: '\$',currencySeparator: '->',decimalSymbol: '.');
final controller2 =
CurrencyTextFieldController(initIntValue: 195, currencyOnLeft: false);
final controller3 = CurrencyTextFieldController(
initDoubleValue: 195, currencySymbol: 'test', currencySeparator: ' e ');
final controller4 = CurrencyTextFieldController(
initIntValue: 195,
currencyOnLeft: false,
currencySymbol: '\$',
currencySeparator: '->',
decimalSymbol: '.',
);
expect(controller.textWithoutCurrencySymbol, '1,95');
expect(controller2.textWithoutCurrencySymbol, '1,95');
expect(controller3.textWithoutCurrencySymbol, '195,00');
expect(controller4.textWithoutCurrencySymbol, '1.95');
});

test('initInt_with_numberOfDecimals', () {
final controller = CurrencyTextFieldController(initIntValue: 195);
final controller2 =
CurrencyTextFieldController(initIntValue: 1950, numberOfDecimals: 1);
final controller3 =
CurrencyTextFieldController(initIntValue: 19500, numberOfDecimals: 3);

expect(controller.textWithoutCurrencySymbol, '1,95');
expect(controller2.textWithoutCurrencySymbol, '195,0');
expect(controller3.textWithoutCurrencySymbol, '19,500');
});

test('maxValue', () {
final controller =
CurrencyTextFieldController(initDoubleValue: 300, maxValue: 400);

controller.forceValue(initDoubleValue: 350);
expect(controller.textWithoutCurrencySymbol, '350,00');
controller.forceValue(initDoubleValue: 3500);
expect(controller.textWithoutCurrencySymbol, '400,00');
});
}

0 comments on commit 4058c6c

Please sign in to comment.