Skip to content

Commit d63f3c2

Browse files
author
Brian Luft
committed
gets coverage up to 100%
1 parent f25f969 commit d63f3c2

File tree

2 files changed

+15
-7
lines changed

2 files changed

+15
-7
lines changed

pyflot/graph.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -104,9 +104,9 @@ def __getattr__(self, value):
104104
provides shortcut methods for adding series using a particular line type
105105
"""
106106
if value.startswith('add_'):
107-
if not value.split('_')[1] in LINE_TYPES:
108-
raise AttributeError
109-
return partial(self.add_series_type, value[4:])
107+
if value.split('_')[1] in LINE_TYPES:
108+
return partial(self.add_series_type, value[4:])
109+
raise AttributeError
110110

111111
def add_series_type(self, line_type, series, label=None, **kwargs):
112112
method = getattr(self, 'add_series')

pyflot/tests/__init__.py

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
from datetime import date, timedelta
2+
from functools import partial
3+
from types import InstanceType, MethodType
24
import json
35
import unittest
46

@@ -113,11 +115,17 @@ def test_add_time_series(self):
113115
self.assertEqual(self.flot._options['xaxis'],
114116
{'mode': 'time'})
115117

116-
117118
def test_bogus_call(self):
118-
"test a bogus method on __getattr__"
119-
self.assertRaises(AttributeError, lambda: self.add_shrimp)
120-
119+
"""make sure explicit and dynamic instance methods work, and that
120+
bogus attribute access fails as expected"""
121+
self.assertRaises(AttributeError, lambda: self.flot.add_shrimp)
122+
self.assertRaises(AttributeError, lambda: self.flot.minus_bars)
123+
self.assertRaises(AttributeError, lambda: self.flot.asdf)
124+
self.assertTrue(isinstance(self.flot.add_bars, partial))
125+
self.assertTrue(isinstance(self.flot.add_line, partial))
126+
self.assertTrue(isinstance(self.flot.add_points, partial))
127+
self.assertTrue(isinstance(self.flot.add_series, MethodType))
128+
121129
def test_empty_options_json(self):
122130
"make sure conversion to JSON works for default options"
123131
self.assertEqual("{}", self.flot.options_json)

0 commit comments

Comments
 (0)