Toggle navigation
Toggle navigation
This project
Loading...
Sign in
flutter_package
/
fluttertpc_get
Go to a project
Toggle navigation
Projects
Groups
Snippets
Help
Toggle navigation pinning
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Authored by
zuvola
2021-09-02 15:25:08 +0900
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
d2d26635324d0dd214f97642c2abbeb6ebf5c09e
d2d26635
1 parent
4de6f206
Fix RxList.removeWhere calls 'ever' multiple times
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
39 additions
and
0 deletions
lib/get_rx/src/rx_types/rx_iterables/rx_list.dart
test/rx/rx_workers_test.dart
lib/get_rx/src/rx_types/rx_iterables/rx_list.dart
View file @
d2d2663
...
...
@@ -73,6 +73,18 @@ class RxList<E> extends ListMixin<E>
}
@override
void
removeWhere
(
bool
test
(
E
element
))
{
_value
.
removeWhere
(
test
);
refresh
();
}
@override
void
retainWhere
(
bool
test
(
E
element
))
{
_value
.
retainWhere
(
test
);
refresh
();
}
@override
int
get
length
=>
value
.
length
;
@override
...
...
test/rx/rx_workers_test.dart
View file @
d2d2663
...
...
@@ -162,4 +162,31 @@ void main() {
expect
(
reactiveString
.
endsWith
(
"c"
),
true
);
expect
(
currentString
,
"abc"
);
});
test
(
'Number of times "ever" is called in RxList'
,
()
async
{
final
list
=
[
1
,
2
,
3
].
obs
;
var
count
=
0
;
ever
<
List
<
int
>>(
list
,
(
value
)
{
count
++;
});
list
.
add
(
4
);
await
Future
.
delayed
(
Duration
.
zero
);
expect
(
count
,
1
);
count
=
0
;
list
.
addAll
([
4
,
5
]);
await
Future
.
delayed
(
Duration
.
zero
);
expect
(
count
,
1
);
count
=
0
;
list
.
removeWhere
((
element
)
=>
element
==
2
);
await
Future
.
delayed
(
Duration
.
zero
);
expect
(
count
,
1
);
count
=
0
;
list
.
retainWhere
((
element
)
=>
element
==
1
);
await
Future
.
delayed
(
Duration
.
zero
);
expect
(
count
,
1
);
});
}
...
...
Please
register
or
login
to post a comment