generated from nullndr/pyproj
chore: add Counter class
This commit is contained in:
20
src/counter.py
Normal file
20
src/counter.py
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
|
||||||
|
class Counter:
|
||||||
|
def __init__(self, val=0):
|
||||||
|
self.reset_on = val
|
||||||
|
self.val = val
|
||||||
|
|
||||||
|
def __repr__(self):
|
||||||
|
return f"Counter: {self.val} [reset on {self.reset_on}]"
|
||||||
|
|
||||||
|
def incr(self):
|
||||||
|
self.val += 1
|
||||||
|
return self.val
|
||||||
|
|
||||||
|
def decr(self):
|
||||||
|
self.val -= 1
|
||||||
|
return self.val
|
||||||
|
|
||||||
|
def reset(self):
|
||||||
|
self.val = self.reset_on
|
||||||
|
return self.val
|
||||||
25
src/main.py
25
src/main.py
@@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
from strings import *
|
from strings import *
|
||||||
from tree import *
|
from tree import *
|
||||||
|
from counter import *
|
||||||
|
|
||||||
def trees():
|
def trees():
|
||||||
t = build_tree((1,
|
t = build_tree((1,
|
||||||
@@ -73,8 +74,30 @@ def trees():
|
|||||||
assert number_of_nodes(build_tree((0, (1, None, None), (2, None, None)))) == 3
|
assert number_of_nodes(build_tree((0, (1, None, None), (2, None, None)))) == 3
|
||||||
assert number_of_nodes(build_tree((0, (1, (3, None, None), None), (2, None, None)))) == 4
|
assert number_of_nodes(build_tree((0, (1, (3, None, None), None), (2, None, None)))) == 4
|
||||||
|
|
||||||
def main():
|
def counter():
|
||||||
|
c = Counter()
|
||||||
|
assert c.incr() == 1
|
||||||
|
assert c.decr() == 0
|
||||||
|
assert c.decr() == -1
|
||||||
|
assert c.reset() == 0
|
||||||
|
|
||||||
|
c = Counter(5)
|
||||||
|
c.incr()
|
||||||
|
c.incr()
|
||||||
|
c.incr()
|
||||||
|
assert c.val == 8
|
||||||
|
c.reset()
|
||||||
|
assert c.val == 5
|
||||||
|
|
||||||
|
c = Counter(-1)
|
||||||
|
assert c.val == -1
|
||||||
|
c.incr()
|
||||||
|
c.incr()
|
||||||
|
assert c.val == 1
|
||||||
|
|
||||||
|
|
||||||
|
def main():
|
||||||
|
counter()
|
||||||
pass
|
pass
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
|||||||
Reference in New Issue
Block a user