summaryrefslogtreecommitdiff
path: root/tests/test_parse.py
diff options
context:
space:
mode:
authorYuval Adam <_@yuv.al>2018-03-13 21:47:50 +0200
committerYuval Adam <_@yuv.al>2018-03-13 21:47:50 +0200
commit46901c04955ea94c746ae96d09734143af63c51d (patch)
treed39162f9ea6777e641868db8d2d99f04de749e1d /tests/test_parse.py
parent2f3a1e2fa48c39a190997fd60fce99ed1f9b7bca (diff)
Add skeleton support for RGBA, datetime and unit parsingv0.3.0
Diffstat (limited to 'tests/test_parse.py')
-rw-r--r--tests/test_parse.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/tests/test_parse.py b/tests/test_parse.py
index cb0a354..56f36c9 100644
--- a/tests/test_parse.py
+++ b/tests/test_parse.py
@@ -1,5 +1,6 @@
import pytest
+from datetime import datetime
from os import walk
from os.path import join
from viewstate import *
@@ -40,6 +41,10 @@ class TestParse(object):
vs = ViewState(raw=b'\xff\x01\n\x01\x02')
assert vs.decode() == 'Color: unknown' # all colors are unknown for now
+ def test_rgba(self):
+ vs = ViewState(raw=b'\xff\x01\x09\x10\x20\x30\x40')
+ assert vs.decode() == 'RGBA(16,32,48,64)'
+
def test_formatted_string(self):
vs = ViewState()
s1 = 'System.Int64, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
@@ -47,6 +52,14 @@ class TestParse(object):
vs.raw = b'\xff\x01()' + bytes([len(s1)]) + s1.encode() + bytes([len(s2)]) + s2.encode()
assert vs.decode() == 'Formatted string: {} {}'.format(s2, s1)
+ @pytest.mark.skip(reason='Datetime parsing not yet supported')
+ def test_datetime(self):
+ vs = ViewState()
+ vs.raw = b'\xff\x01\x06\x000Po\x9b\x87\xd5\x88'
+ assert vs.decode() == datetime(2018, 3, 11, 22)
+ vs.raw = b'\xff\x01\x06\x00\xf0\xb9\x99d\x88\xd5\x88'
+ assert vs.decode() == datetime(2018, 3, 12, 22)
+
def test_complex_pair(self):
vs = ViewState()
vs.raw = b'\xff\x01\x0f\x67\x0f\x68\x66'