From d08de50053653b53dc445258fad5491b940a39e2 Mon Sep 17 00:00:00 2001
From: Piotr Maslanka <piotr.maslanka@henrietta.com.pl>
Date: Fri, 8 Dec 2017 20:50:15 +0100
Subject: [PATCH] ok

---
 firanka/series/range.py         | 5 +++--
 tests/test_series/test_range.py | 4 ++++
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/firanka/series/range.py b/firanka/series/range.py
index 5f153bf..ffc0859 100644
--- a/firanka/series/range.py
+++ b/firanka/series/range.py
@@ -25,8 +25,9 @@ class Range(object):
     def __init__(self, *args):
         if len(args) == 1:
             rs, = args
-            assert rs[0] in '<('
-            assert rs[-1] in '>)'
+
+            if (rs[0] not in '<(') or (rs[-1] not in '>)'):
+                raise ValueError('Must start with < or ( and end with ) or >')
 
             lend_inclusive = rs[0] == '<'
             rend_inclusive = rs[-1] == '>'
diff --git a/tests/test_series/test_range.py b/tests/test_series/test_range.py
index 4482699..f0eca70 100644
--- a/tests/test_series/test_range.py
+++ b/tests/test_series/test_range.py
@@ -14,6 +14,10 @@ class TestRange(unittest.TestCase):
     def test_str(self):
         self.assertEqual(str(Range(-1, 1, True, True)), '<-1;1>')
 
+    def test_constructor(self):
+        self.assertRaises(ValueError, lambda: Range('#2;3>'))
+        self.assertRaises(ValueError, lambda: Range('(2;3!'))
+
     def test_contains(self):
         self.assertFalse(-1 in Range('<-10;-1)'))
         self.assertTrue(-10 in Range('<-10;-1)'))
-- 
GitLab