gen_stop_seats_D --------------- >>> from bus2 import gen_stop_seats_D >>> d = { ... (122, 'D'): ('Ba', 3, 4, 'O'), ... (563, 'P'): ('Lo', 1, 4, 'O'), ... (765, 'P'): ('Espígol', 3, 2, 'A'), ... (444, 'N'): ('Pe', 2, 1, 'A'), ... (771, 'L'): ('Vi', 1, 3, 'A'), ... (666, 'G'): ('Guell', 1, 2, 'O'), ... } >>> dcorr = { ... 'O': [(3, 4), (1, 4), (1, 2)], ... 'A': [(3, 2), (2, 1), (1, 3)], ... } >>> dsol = gen_stop_seats_D(d) >>> len(dsol) == 2 and dsol == dcorr # doctesttag: +TAG=1_gen_stop_seats_D True >>> d = { ... (771, 'L'): ('Vi', 1, 3, 'O'), ... (122, 'D'): ('Ba', 10, 4, 'O'), ... (563, 'P'): ('Lo', 3, 4, 'O'), ... (444, 'N'): ('Pe', 2, 1, 'O'), ... (765, 'P'): ('Es', 5, 2, 'O'), ... } >>> dsol = gen_stop_seats_D(d) >>> len(dsol) == 1 and dsol == {'O': [(1, 3), (10, 4), (3, 4), (2, 1), (5, 2)]} # doctesttag: +TAG=1_gen_stop_seats_D True >>> d = { ... (771, 'L'): ('Vi', 1, 3, 'LC'), ... (122, 'D'): ('Pe', 10, 4, 'A'), ... (563, 'P'): ('Lo', 3, 4, 'SantaC'), ... (444, 'N'): ('Ba', 2, 1, 'Les Planes'), ... (765, 'P'): ('Co', 5, 2, 'Sant Feliu'), ... } >>> dsol = gen_stop_seats_D(d) >>> len(dsol) == 5 and dsol == {'LC': [(1, 3)], 'A': [(10, 4)], 'SantaC': [(3, 4)], 'Les Planes': [(2, 1)], 'Sant Feliu': [(5, 2)]} # doctesttag: +TAG=1_gen_stop_seats_D True >>> d = {} >>> dsol = gen_stop_seats_D(d) >>> len(dsol) == 0 and dsol == {} # doctesttag: +TAG=1_gen_stop_seats_D True sort_stop_seats_D ----------------- >>> from bus2 import sort_stop_seats_D >>> d = { ... 'O': [(3, 4), (1, 4), (1, 2)], ... 'A': [(3, 2), (2, 1), (1, 3)], ... } >>> sort_stop_seats_D(d) >>> dcorr = { ... 'O': [(1, 2), (1, 4), (3, 4)], ... 'A': [(1, 3), (2, 1), (3, 2)], ... } >>> d == dcorr # doctesttag: +TAG=2_sort_stop_seats_D True >>> d = {'O': [(1, 3), (10, 4), (3, 4), (2, 1), (5, 2)]} >>> sort_stop_seats_D(d) >>> dcorr = {'O': [(1, 3), (2, 1), (3, 4), (5, 2), (10, 4)]} >>> d == dcorr # doctesttag: +TAG=2_sort_stop_seats_D True >>> d = { ... 'A' : [(3, 4), (3, 2), (3, 1), (1, 4), (1, 2), (1, 1), (0, 1)], ... 'O': [(4, 1), (3, 2), (3, 1), (3, 3)], ... } >>> sort_stop_seats_D(d) >>> dcorr = {'A': [(0, 1), (1, 1), (1, 2), (1, 4), (3, 1), (3, 2), (3, 4)], 'O': [(3, 1), (3, 2), (3, 3), (4, 1)]} >>> d == dcorr # doctesttag: +TAG=2_sort_stop_seats_D True >>> d = {'LC': [(1, 3)], 'A': [(10, 4)], 'SantaC': [(3, 4)], 'Les Planes': [(2, 1)], 'Sant Feliu': [(5, 2)]} >>> dcorr = {'LC': [(1, 3)], 'A': [(10, 4)], 'SantaC': [(3, 4)], 'Les Planes': [(2, 1)], 'Sant Feliu': [(5, 2)]} >>> sort_stop_seats_D(d) >>> d == dcorr # doctesttag: +TAG=2_sort_stop_seats_D True move_passenger -------------- >>> from bus2 import move_passenger >>> d = { ... (771, 'L'): ('Vi', 1, 3, 'A'), ... (122, 'D'): ('Ba', 1, 4, 'O'), ... (563, 'P'): ('Lo', 2, 4, 'O'), ... (444, 'N'): ('Pe', 2, 1, 'A'), ... (765, 'P'): ('Es', 1, 2, 'A'), ... } >>> res = move_passenger(d, 'Vi', 2, 2) >>> dref = { ... (122, 'D'): ('Ba', 1, 4, 'O'), ... (563, 'P'): ('Lo', 2, 4, 'O'), ... (444, 'N'): ('Pe', 2, 1, 'A'), ... (765, 'P'): ('Es', 1, 2, 'A'), ... (771, 'L'): ('Vi', 2, 2, 'A'), ... } >>> res == ((771, 'L'), (2, 2)) and d == dref # doctesttag: +TAG=3_move_passenger True >>> res = move_passenger(d, 'Sanchez', 1, 1) >>> res == ((), (1, 1)) and d == dref # doctesttag: +TAG=3_move_passenger True >>> res = move_passenger(d, 'Ba', 2, 2) >>> dref = { ... (563, 'P'): ('Lo', 2, 4, 'O'), ... (444, 'N'): ('Pe', 2, 1, 'A'), ... (765, 'P'): ('Es', 1, 2, 'A'), ... (771, 'L'): ('Vi', 2, 2, 'A'), ... (122, 'D'): ('Ba', 2, 2, 'O'), ... } >>> res == ((122, 'D'), (2, 2)) and d == dref # doctesttag: +TAG=3_move_passenger True >>> d1 = {} >>> res = move_passenger(d1, 'Ba', 1, 1) >>> res == ((), (1, 1)) and d1 == {} # doctesttag: +TAG=3_move_passenger True sort_pass_L_2 ------------- >>> from bus2 import sort_pass_L_2 >>> D = { ... (771, 'L'): ('Vi', 1, 3, 'A'), ... (122, 'D'): ('Ba', 1, 4, 'O'), ... (563, 'P'): ('Lo', 2, 4, 'O'), ... (444, 'N'): ('Pe', 1, 1, 'A'), ... (765, 'P'): ('Es', 1, 2, 'A'), ... (556, 'A'): ('Ramos', 2, 2, 'A'), ... } >>> solL = sort_pass_L_2(D) >>> corrL = [ ... (556, 'A', 'Ramos', 2, 2, 'A'), ... (444, 'N', 'Pe', 1, 1, 'A'), ... (765, 'P', 'Es', 1, 2, 'A'), ... (771, 'L', 'Vi', 1, 3, 'A'), ... (563, 'P', 'Lo', 2, 4, 'O'), ... (122, 'D', 'Ba', 1, 4, 'O'), ... ] >>> solL == corrL # doctesttag: +TAG=4_sort_pass_L_2 True >>> d = {(771, 'L'): ('Vi', 1, 3, 'A'), (122, 'D'): ('Ba', 1, 4, 'O'), (563, 'P'): ('Lo', 2, 4, 'O'), (444, 'N'): ('Pe', 1, 1, 'A'), (765, 'P'): ('Es', 1, 2, 'A')} >>> solL = sort_pass_L_2(d) >>> corrL = [(444, 'N', 'Pe', 1, 1, 'A'), (765, 'P', 'Es', 1, 2, 'A'), (771, 'L', 'Vi', 1, 3, 'A'), (563, 'P', 'Lo', 2, 4, 'O'), (122, 'D', 'Ba', 1, 4, 'O')] >>> solL == corrL # doctesttag: +TAG=4_sort_pass_L_2 True >>> d = { ... (322, 'K'): ('Tulsà', 1, 1, 'Girona'), ... (771, 'L'): ('Vi', 2, 3, 'Girona'), ... (122, 'D'): ('Ba', 1, 4, 'Girona'), ... (563, 'P'): ('Lo', 2, 4, 'Girona'), ... (444, 'N'): ('Pe', 1, 1, 'Girona'), ... (765, 'P'): ('Es', 1, 2, 'A')} >>> solL = sort_pass_L_2(d) # doctesttag: +TAG=4_sort_pass_L_2 >>> corrL = [(765, 'P', 'Es', 1, 2, 'A'), (563, 'P', 'Lo', 2, 4, 'Girona'), (771, 'L', 'Vi', 2, 3, 'Girona'), (122, 'D', 'Ba', 1, 4, 'Girona'), (322, 'K', 'Tulsà', 1, 1, 'Girona'), (444, 'N', 'Pe', 1, 1, 'Girona')] >>> solL == corrL # doctesttag: +TAG=4_sort_pass_L_2 True >>> sort_pass_L_2({}) # doctesttag: +TAG=4_sort_pass_L_2 [] --------------------------------------------------------------------