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
hitalo
2021-02-12 11:00:29 -0300
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
7cfd25068d91f348bd378708b3330ec946975117
7cfd2506
1 parent
4d570157
new syntax, new tests. Project is done
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
48 additions
and
14 deletions
lib/get_navigation/src/extension_navigation.dart
test/navigation/parse_route_test.dart
lib/get_navigation/src/extension_navigation.dart
View file @
7cfd250
...
...
@@ -541,26 +541,24 @@ extension GetNavigation on GetInterface {
String
page
,
{
dynamic
arguments
,
int
id
,
Map
<
String
,
String
>
parameters
,
bool
preventDuplicates
=
true
,
})
{
Get
.
parameters
.
forEach
((
key
,
value
)
async
{
if
(
await
page
.
contains
(
'?'
))
{
page
=
"
$page${"&$key=$value"}
"
;
}
else
{
page
=
"
$page${"?$key=$value"}
"
;
Get
.
parameters
=
({});
if
(
parameters
!=
null
)
{
for
(
var
item
in
parameters
.
keys
)
{
if
(
page
.
contains
(
'?'
))
{
page
+=
"&
$item
=
${parameters[item]}
"
;
}
else
{
page
+=
"?
$item
=
${parameters[item]}
"
;
}
}
});
// Get.parameters.clear();
}
if
(
preventDuplicates
&&
page
==
currentRoute
)
{
return
null
;
}
// Get.parameters.clear();
return
global
(
id
)
?.
currentState
?.
pushNamed
<
T
>(
page
,
arguments:
arguments
)
?.
then
((
_
)
{
Get
.
parameters
.
clear
();
});
return
global
(
id
)?.
currentState
?.
pushNamed
<
T
>(
page
,
arguments:
arguments
);
}
/// **Navigation.pushReplacementNamed()** shortcut.<br><br>
...
...
test/navigation/parse_route_test.dart
View file @
7cfd250
...
...
@@ -87,4 +87,40 @@ void main() {
expect
(
Get
.
parameters
[
'name'
],
'ana'
);
},
);
testWidgets
(
'params in url by parameters'
,
(
tester
)
async
{
print
(
"Iniciando test"
);
await
tester
.
pumpWidget
(
GetMaterialApp
(
initialRoute:
'/first/juan'
,
getPages:
[
GetPage
(
page:
()
=>
Container
(),
name:
'/buda'
),
GetPage
(
page:
()
=>
Container
(),
name:
'/italy'
),
],
));
// Get.parameters = ({"varginias": "varginia", "vinis": "viniiss"});
var
parameters
=
<
String
,
String
>{
"varginias"
:
"varginia"
,
"vinis"
:
"viniiss"
};
// print("Get.parameters: ${Get.parameters}");
parameters
.
addAll
({
"a"
:
"b"
,
"c"
:
"d"
});
Get
.
toNamed
(
"/buda"
,
parameters:
parameters
);
await
tester
.
pumpAndSettle
();
expect
(
Get
.
parameters
[
'varginias'
],
'varginia'
);
expect
(
Get
.
parameters
[
'vinis'
],
'viniiss'
);
expect
(
Get
.
parameters
[
'a'
],
'b'
);
expect
(
Get
.
parameters
[
'c'
],
'd'
);
Map
<
String
,
String
>
italyParameters
;
italyParameters
=
{
"ja"
:
"ca"
,
"que"
:
"i"
};
Get
.
toNamed
(
"/italy"
,
parameters:
italyParameters
);
await
tester
.
pumpAndSettle
();
expect
(
Get
.
parameters
[
'ja'
],
'ca'
);
expect
(
Get
.
parameters
[
'que'
],
'i'
);
},
);
}
...
...
Please
register
or
login
to post a comment