Skip to content

Commit 6266425

Browse files
authored
Merge pull request #1 from Colum31/filesplit
2 parents a030041 + c5fa482 commit 6266425

File tree

16 files changed

+745
-680
lines changed

16 files changed

+745
-680
lines changed

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
11
# PyCharm related files
22
venv/
33
.idea
4+
build/
5+
vbbpy.egg-info/
6+
.pytest_cache/

vbbpy/main.py renamed to main.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
from vbbpy import classes
1+
from vbbpy import connections, station
22

33
def getDeparturesFromStation(time):
44

5-
testStation = classes.Station("")
5+
testStation = station.Station("")
66
testStation.getProducts()
77
testStation.getLines()
88

@@ -15,7 +15,7 @@ def getDeparturesFromStation(time):
1515

1616
def main():
1717

18-
testJourneys = classes.Connections("", "")
18+
testJourneys = connections.Connections("", "")
1919
testJourneys.getConnections()
2020

2121
for j in testJourneys.routes:

setup.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
from setuptools import setup
22

33
setup(
4-
name='vbbpy',
5-
version='1.0.0',
6-
description='A python wrapper for the VBB REST-API',
7-
author='Colum31',
8-
packages=['vbbpy'], # would be the same as name
9-
install_requires=['requests', 'datetime'] #external packages acting as dependencies
4+
name='vbbpy',
5+
version='1.1.0',
6+
description='A python wrapper for the VBB REST-API',
7+
author='Colum31',
8+
packages=['vbbpy'], # would be the same as name
9+
install_requires=['requests', 'datetime'] # external packages acting as dependencies
1010
)

vbbpy/stationId.py renamed to stationId.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
# Author Colum31, 24.2.2022
55

66
import sys
7-
from vbbpy import classes
8-
from vbbpy.classes import Modes
7+
8+
from vbbpy import station
99

1010

1111
def main():
@@ -14,8 +14,7 @@ def main():
1414
print("usage: {} [Station name]".format(sys.argv[0]))
1515
sys.exit(1)
1616

17-
apiResponse = classes.makeStationsRequest(sys.argv[1], Modes.STATIONS_QUERY, fuzzy=True, completion=True)
18-
resultList = classes.parseStationResponse(apiResponse.json(), None, Modes.STATIONS_QUERY)
17+
resultList = station.Station.queryStations(sys.argv[1])
1918

2019
if resultList is None:
2120
return 1

tests/test_helperFunctions.py

Lines changed: 6 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1-
from unittest import TestCase
2-
from vbbpy import classes
31
import datetime
2+
from unittest import TestCase
3+
4+
from vbbpy import vbbHelper
45

56

67
def gen_timestring(i):
@@ -30,7 +31,7 @@ def test_hourMinuteString(self):
3031
"2020-11-23T01:31:01+02:00": "01:31", "2020-11-23T01:31:01": "01:31"}
3132

3233
for data in testData.items():
33-
self.assertEqual(data[1], classes.getDateTimeHourMinuteString(data[0]),
34+
self.assertEqual(data[1], vbbHelper.VbbHelper.getDateTimeHourMinuteString(data[0]),
3435
"returned not correct hourMinute string!")
3536

3637
def test_minutesToDepartures(self):
@@ -41,57 +42,7 @@ def test_minutesToDepartures(self):
4142
:return: None
4243
"""
4344
for i in range(20):
44-
self.assertEqual(i, classes.getMinutesToDepartures(gen_timestring(i), 0),
45+
self.assertEqual(i, vbbHelper.VbbHelper.getMinutesToDepartures(gen_timestring(i), 0),
4546
"returned wrong amount of minutes (without delay)")
46-
self.assertEqual(2 * i, classes.getMinutesToDepartures(gen_timestring(i), i * 60),
47+
self.assertEqual(2 * i, vbbHelper.VbbHelper.getMinutesToDepartures(gen_timestring(i), i * 60),
4748
"returned wrong amount of minutes (with delay)")
48-
49-
def test_parseStationRequest_emptyResponse(self):
50-
"""
51-
Tests if parseStationRequests returns None, if the response is empty.
52-
53-
:return: None
54-
"""
55-
56-
testData = "{}"
57-
self.assertEqual(None, classes.parseStationResponse(testData, None, classes.Modes.STATIONS_ID),
58-
"expected to return None on empty response")
59-
self.assertEqual(None, classes.parseStationResponse(testData, None, classes.Modes.STATIONS_QUERY),
60-
"expected to return None on empty response")
61-
62-
def test_parseStationRequest_stationQuery_parse_id_name(self):
63-
"""
64-
Tests if parseStationRequests correctly parses name and id of response in Query mode.
65-
66-
:return: None
67-
"""
68-
69-
testSet1 = {"id": "12345", "name": "test1"}
70-
testSet2 = {"id": "67890", "name": "test2"}
71-
72-
testSetComplete = {testSet1["id"]: testSet1, testSet2["id"]: testSet2}
73-
74-
results = classes.parseStationResponse(testSetComplete, None, classes.Modes.STATIONS_QUERY)
75-
76-
if type(results) is not list:
77-
self.fail("Expected to return a list")
78-
79-
self.assertEqual(len(testSetComplete), len(results), "Expected to have as many results as test data sets")
80-
81-
for result in results:
82-
83-
resId = result.stationId
84-
name = result.name
85-
86-
dataSet = testSetComplete.get(resId)
87-
88-
if dataSet is None:
89-
self.fail("Did not find data in test set")
90-
91-
if dataSet["id"] is not resId:
92-
self.fail("rid of data does not match test data")
93-
94-
if dataSet["name"] is not name:
95-
self.fail("name of data does not match test data")
96-
97-
testSetComplete.pop(resId)

tests/test_station.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
from unittest import TestCase
2+
from vbbpy import station, modes
3+
4+
5+
class StationClass(TestCase):
6+
7+
def test_parseStationRequest_emptyResponse(self):
8+
"""
9+
Tests if parseStationRequests returns None, if the response is empty.
10+
11+
:return: None
12+
"""
13+
14+
testStation = station.Station("", getName=False)
15+
testData = "{}"
16+
self.assertEqual(None, testStation.parseStationResponse(testData, None, modes.Modes.STATIONS_ID),
17+
"expected to return None on empty response")

vbbpy/__init__.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +0,0 @@
1-
from vbbpy import classes

0 commit comments

Comments
 (0)