Skip to content

Commit 94b1704

Browse files
committed
Initial unit tests for cli clever
1 parent 887ba7a commit 94b1704

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed

test/test_cli_clever.py

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
# -*- coding: utf-8 -*-
2+
3+
import os
4+
import unittest
5+
import subprocess
6+
7+
CLI_CLEVER = os.path.join(os.path.dirname(__file__), '../bin/clever ')
8+
9+
class CleverCLITestCase(unittest.TestCase):
10+
11+
def run_clever(self, args='', env=None):
12+
"""
13+
Runs the cli clever script, passes supplied args.
14+
"""
15+
process = subprocess.Popen(CLI_CLEVER + args, shell=True, env=env,
16+
stdout=subprocess.PIPE,
17+
stderr=subprocess.PIPE)
18+
19+
out, err = process.communicate()
20+
code = process.returncode
21+
return out, err, code
22+
23+
def test_help(self):
24+
# Test help on error
25+
out, err, code = self.run_clever()
26+
self.assertEqual(code, 1)
27+
# Test help on option
28+
out, err, code = self.run_clever('-h')
29+
self.assertEqual(code, 0)
30+
31+
def test_api_key(self):
32+
# Check for error when key is not provided
33+
out, err, code = self.run_clever('district all')
34+
self.assertEqual(code, 2)
35+
# Check for no error when key is provided via -k
36+
out, err, code = self.run_clever('district all -k DEMO_KEY')
37+
self.assertEqual(code, 0)
38+
# Check for no error when key is provided via CLEVER_API_KEY
39+
env = {'CLEVER_API_KEY':'DEMO_KEY'}
40+
out, err, code = self.run_clever('district all', env)
41+
self.assertEqual(code, 0)

0 commit comments

Comments
 (0)