Skip to content

Commit 6fd7d0a

Browse files
committed
Adds support for replay.is_ladder and replay.is_private boolean flags and updates tests
1 parent 78bd289 commit 6fd7d0a

File tree

3 files changed

+12
-4
lines changed

3 files changed

+12
-4
lines changed

sc2reader/parsers.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,12 @@ def load(self, replay, filecontents):
9898

9999
#Get global settings first
100100
replay.speed = data[16]['Game Speed']
101+
102+
#TODO: Do we need the category variable at this point?
101103
replay.category = data[16]['Category']
104+
replay.is_ladder = (replay.category == "Ladder")
105+
replay.is_private = (replay.category == "Private")
106+
102107
replay.type = data[16]['Game Type']
103108

104109
#Set player attributes as available, requires already populated player list

sc2reader/replay.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ def __init__(self, replay, partial_parse=True, full_parse=True):
1515
self.build = ""
1616
self.type = ""
1717
self.category = ""
18+
self.is_ladder = False
19+
self.is_private = False
1820
self.map = ""
1921
self.realm = ""
2022
self.events = list()

test_replays/test_all.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,9 @@ def test_1():
4040
assert replay.release_string == "1.2.2.17811"
4141
assert replay.speed == "Faster"
4242
assert replay.type == "1v1"
43-
# TODO: library should probably provide helper functions and/or constants to check this
44-
assert replay.category == "Ladder"
43+
44+
assert replay.is_ladder == True
45+
assert replay.is_private == False
4546

4647
assert len(replay.players) == 2
4748
assert replay.player[1].name == "Emperor"
@@ -100,8 +101,8 @@ def test_1():
100101
def test_private_category():
101102
replay = Replay("test_replays/build17811/2.sc2replay")
102103

103-
# TODO: library should probably provide helper functions and/or constants to check this
104-
assert replay.category == "Private"
104+
assert replay.is_private == True
105+
assert replay.is_ladder == False
105106

106107
def test_3v3():
107108
replay = Replay("test_replays/build17811/3.sc2replay")

0 commit comments

Comments
 (0)