File tree 3 files changed +48
-0
lines changed
3 files changed +48
-0
lines changed Original file line number Diff line number Diff line change 16
16
/117 /README.md
17
17
/64 /README.md
18
18
/128 /README.md
19
+ /19 /README.md
Original file line number Diff line number Diff line change
1
+ from datetime import datetime
2
+
3
+ NOW = datetime .now ()
4
+
5
+ # print(datetime.strptime("11-11-2018", "%d-%m-%Y")-NOW)
6
+
7
+
8
+ class Promo :
9
+
10
+ def __init__ (self , name , expiredate ):
11
+ self .name = name
12
+ self .expiredate = expiredate .strftime ("%d/%m/%Y" )
13
+ self ._expired = self .expired
14
+
15
+ @property
16
+ def expired (self ):
17
+ return datetime .strptime (self .expiredate , "%d/%m/%Y" ) < NOW
18
+
19
+ @expired .setter
20
+ def expired (self , expiredate ):
21
+ if expiredate - NOW < 0 :
22
+ self .expired = 1
23
+ else :
24
+ self .expired = 0
25
+
26
+
27
+ # print(Promo("dead", "22/12/2020").expired)
Original file line number Diff line number Diff line change
1
+ from datetime import timedelta
2
+ import inspect
3
+
4
+ from simple_property import Promo , NOW
5
+
6
+
7
+ def test_promo_expired ():
8
+ past_time = NOW - timedelta (seconds = 3 )
9
+ twitter_promo = Promo ('twitter' , past_time )
10
+ assert twitter_promo .expired
11
+
12
+
13
+ def test_promo_not_expired ():
14
+ future_date = NOW + timedelta (days = 1 )
15
+ newsletter_promo = Promo ('newsletter' , future_date )
16
+ assert not newsletter_promo .expired
17
+
18
+
19
+ def test_uses_property ():
20
+ assert 'property' in inspect .getsource (Promo )
You can’t perform that action at this time.
0 commit comments