2016-12-17 09:38:14 -05:00
@extract
Feature : osrm-extract lua ways:get_nodes()
Scenario : osrm-extract - Passing base file
2017-05-18 08:27:28 -04:00
Given t h e p r o f i l e f i l e
2016-12-17 09:38:14 -05:00
"""
2017-05-18 08:27:28 -04:00
f u n c t i o n s = r e q u i r e ( ' t e s t b o t ' )
2017-09-22 11:33:06 -04:00
f u n c t i o n s . p r o c e s s _ w a y = f u n c t i o n ( p r o f i l e , w a y , r e s u l t )
2016-12-17 09:38:14 -05:00
f o r _ , n o d e i n i p a i r s ( w a y : g e t _ n o d e s ( ) ) d o
p r i n t ( ' n o d e i d ' . . n o d e : i d ( ) )
e n d
r e s u l t . f o r w a r d _ m o d e = m o d e . d r i v i n g
r e s u l t . f o r w a r d _ s p e e d = 1
e n d
2017-05-18 08:27:28 -04:00
r e t u r n f u n c t i o n s
2016-12-17 09:38:14 -05:00
"""
2017-08-18 10:21:50 -04:00
And t h e n o d e m a p
"""
a b
"""
2017-08-15 07:57:44 -04:00
And t h e w a y s
| n o d e s |
| a b |
And t h e d a t a h a s b e e n s a v e d t o d i s k
2016-12-17 09:38:14 -05:00
When I r u n " o s r m - e x t r a c t - - p r o f i l e { p r o f i l e _ f i l e } { o s m _ f i l e } "
Then i t s h o u l d e x i t s u c c e s s f u l l y
And s t d o u t s h o u l d c o n t a i n " n o d e i d 1 "
And s t d o u t s h o u l d c o n t a i n " n o d e i d 2 "
2017-08-15 07:57:44 -04:00
2017-09-22 11:33:06 -04:00
Scenario : osrm-extract location-dependent data without add-locations-to-ways preprocessing and node locations cache
Given t h e p r o f i l e f i l e
"""
f u n c t i o n s = r e q u i r e ( ' t e s t b o t ' )
f u n c t i o n s . p r o c e s s _ w a y = f u n c t i o n ( p r o f i l e , w a y , r e s u l t , r e l a t i o n s )
p r i n t ( w a y : g e t _ l o c a t i o n _ t a g ( ' d r i v i n g _ s i d e ' ) )
e n d
r e t u r n f u n c t i o n s
"""
And t h e n o d e m a p
"""
a b
"""
And t h e w a y s
| n o d e s |
| a b |
And t h e d a t a h a s b e e n s a v e d t o d i s k
2017-10-19 06:47:00 -04:00
When I t r y t o r u n " o s r m - e x t r a c t - - p r o f i l e { p r o f i l e _ f i l e } { o s m _ f i l e } - - l o c a t i o n - d e p e n d e n t - d a t a t e s t / d a t a / r e g i o n s / n u l l - i s l a n d . g e o j s o n - - d i s a b l e - l o c a t i o n s - c a c h e "
2017-09-22 11:33:06 -04:00
Then i t s h o u l d e x i t w i t h a n e r r o r
And s t d e r r s h o u l d c o n t a i n " i n v a l i d l o c a t i o n "
2017-08-15 07:57:44 -04:00
Scenario : osrm-extract location-dependent data
Given t h e p r o f i l e f i l e
"""
f u n c t i o n s = r e q u i r e ( ' t e s t b o t ' )
2017-09-22 11:33:06 -04:00
f u n c t i o n s . p r o c e s s _ w a y = f u n c t i o n ( p r o f i l e , w a y , r e s u l t , r e l a t i o n s )
2017-09-22 10:14:55 -04:00
f o r _ , k e y i n i p a i r s ( { ' a n s w e r ' , ' b o o l e a n ' , ' o b j e c t ' , ' a r r a y ' } ) d o
p r i n t ( k e y . . ' ' . . t o s t r i n g ( w a y : g e t _ l o c a t i o n _ t a g ( k e y ) ) )
e n d
2017-08-15 07:57:44 -04:00
r e s u l t . f o r w a r d _ m o d e = m o d e . d r i v i n g
r e s u l t . f o r w a r d _ s p e e d = 1
e n d
r e t u r n f u n c t i o n s
"""
2017-08-18 10:21:50 -04:00
And t h e n o d e m a p
"""
a b
"""
2017-08-15 07:57:44 -04:00
And t h e w a y s w i t h l o c a t i o n s
| n o d e s |
| a b |
And t h e d a t a h a s b e e n s a v e d t o d i s k
2017-10-19 06:47:00 -04:00
When I r u n " o s r m - e x t r a c t - - p r o f i l e { p r o f i l e _ f i l e } { o s m _ f i l e } - - l o c a t i o n - d e p e n d e n t - d a t a t e s t / d a t a / r e g i o n s / n u l l - i s l a n d . g e o j s o n - - d i s a b l e - l o c a t i o n s - c a c h e "
2017-08-15 07:57:44 -04:00
Then i t s h o u l d e x i t s u c c e s s f u l l y
And s t d o u t s h o u l d c o n t a i n " a n s w e r 4 2 "
2017-09-22 10:14:55 -04:00
And s t d o u t s h o u l d c o n t a i n " b o o l e a n t r u e "
And s t d o u t s h o u l d c o n t a i n " a r r a y n i l "
And s t d o u t s h o u l d c o n t a i n " o b j e c t n i l "
2017-08-18 10:21:50 -04:00
Scenario : osrm-extract location-dependent data with multi-polygons
Given t h e p r o f i l e f i l e
"""
f u n c t i o n s = r e q u i r e ( ' t e s t b o t ' )
2017-09-22 11:33:06 -04:00
f u n c t i o n s . p r o c e s s _ w a y = f u n c t i o n ( p r o f i l e , w a y , r e s u l t , r e l a t i o n s )
2017-09-22 10:14:55 -04:00
p r i n t ( ' I S O 3166 - 1 ' . . ( w a y : g e t _ l o c a t i o n _ t a g ( ' I S O 3166 - 1 ' ) o r ' n o n e ' ) )
2017-09-22 10:42:00 -04:00
p r i n t ( ' a n s w e r ' . . ( w a y : g e t _ l o c a t i o n _ t a g ( ' a n s w e r ' ) o r ' n o n e ' ) )
2017-08-18 10:21:50 -04:00
r e s u l t . f o r w a r d _ m o d e = m o d e . d r i v i n g
r e s u l t . f o r w a r d _ s p e e d = 1
e n d
r e t u r n f u n c t i o n s
"""
And t h e n o d e l o c a t i o n s
| n o d e | l a t | l o n | i d |
| a | 2 2 . 4 9 0 3 6 7 0 | 1 1 3 . 9 4 5 5 2 2 7 | 1 |
| b | 2 2 . 4 9 0 1 7 0 1 | 1 1 3 . 9 4 5 5 8 9 9 | 2 |
| c | 2 2 . 4 9 0 1 8 5 2 | 1 1 3 . 9 4 5 8 6 0 8 | 3 |
| d | 2 2 . 4 9 0 4 0 3 3 | 1 1 3 . 9 4 5 6 9 9 9 | 4 |
2017-09-22 10:42:00 -04:00
| e | 1 . 1 | 1 | 5 |
| f | 1 . 2 | 1 | 6 |
2017-08-18 10:21:50 -04:00
And t h e w a y s w i t h l o c a t i o n s
| n o d e s | # |
| a b | H o n g K o n g |
| c d | C h i n a M a i n l a n d |
2017-09-22 10:42:00 -04:00
| e f | N u l l I s l a n d |
2017-08-18 10:21:50 -04:00
And t h e d a t a h a s b e e n s a v e d t o d i s k
2017-10-19 06:47:00 -04:00
When I r u n " o s r m - e x t r a c t - - p r o f i l e { p r o f i l e _ f i l e } { o s m _ f i l e } - - l o c a t i o n - d e p e n d e n t - d a t a t e s t / d a t a / r e g i o n s / n u l l - i s l a n d . g e o j s o n - - l o c a t i o n - d e p e n d e n t - d a t a t e s t / d a t a / r e g i o n s / h o n g - k o n g . g e o j s o n - - d i s a b l e - l o c a t i o n s - c a c h e "
2017-08-18 10:21:50 -04:00
Then i t s h o u l d e x i t s u c c e s s f u l l y
2017-09-22 10:42:00 -04:00
And s t d o u t s h o u l d n o t c o n t a i n " 1 G e o J S O N p o l y g o n "
2017-08-18 10:21:50 -04:00
And s t d o u t s h o u l d c o n t a i n " 2 G e o J S O N p o l y g o n s "
And s t d o u t s h o u l d c o n t a i n " I S O 3 1 6 6 - 1 H K "
And s t d o u t s h o u l d c o n t a i n " I S O 3 1 6 6 - 1 n o n e "
2017-09-22 10:42:00 -04:00
And s t d o u t s h o u l d c o n t a i n " a n s w e r 4 2 "
2017-09-21 10:05:22 -04:00
Scenario : osrm-extract location-dependent data via locations cache
Given t h e p r o f i l e f i l e
"""
f u n c t i o n s = r e q u i r e ( ' t e s t b o t ' )
2017-09-22 11:33:06 -04:00
f u n c t i o n s . p r o c e s s _ w a y = f u n c t i o n ( p r o f i l e , w a y , r e s u l t , r e l a t i o n s )
2017-09-22 10:14:55 -04:00
p r i n t ( ' a n s w e r ' . . t o s t r i n g ( w a y : g e t _ l o c a t i o n _ t a g ( ' a n s w e r ' ) ) )
2017-09-21 10:05:22 -04:00
r e s u l t . f o r w a r d _ m o d e = m o d e . d r i v i n g
r e s u l t . f o r w a r d _ s p e e d = 1
e n d
r e t u r n f u n c t i o n s
"""
And t h e n o d e m a p
"""
a b
"""
And t h e w a y s
| n o d e s |
| a b |
And t h e d a t a h a s b e e n s a v e d t o d i s k
When I r u n " o s r m - e x t r a c t - - p r o f i l e { p r o f i l e _ f i l e } { o s m _ f i l e } - - l o c a t i o n - d e p e n d e n t - d a t a t e s t / d a t a / r e g i o n s / n u l l - i s l a n d . g e o j s o n "
Then i t s h o u l d e x i t s u c c e s s f u l l y
And s t d o u t s h o u l d c o n t a i n " a n s w e r 4 2 "