Merge lp:~marcoceppi/charm-tools/fix-juju-test into lp:charm-tools/1.2

Proposed by Marco Ceppi
Status: Merged
Merged at revision: 301
Proposed branch: lp:~marcoceppi/charm-tools/fix-juju-test
Merge into: lp:charm-tools/1.2
Diff against target: 88 lines (+21/-6)
3 files modified
charmtools/test.py (+11/-3)
setup.py (+2/-2)
tests/test_juju_test.py (+8/-1)
To merge this branch: bzr merge lp:~marcoceppi/charm-tools/fix-juju-test
Reviewer Review Type Date Requested Status
charmers Pending
Review via email: mp+201694@code.launchpad.net

Description of the change

Fixed juju test load point and destroy-environment

https://codereview.appspot.com/52460043/

To post a comment you must log in.
Revision history for this message
Marco Ceppi (marcoceppi) wrote :
Download full text (4.4 KiB)

Reviewers: mp+201694_code.launchpad.net,

Message:
Please take a look.

Description:
Fixed juju test load point and destroy-environment

https://code.launchpad.net/~marcoceppi/charm-tools/fix-juju-test/+merge/201694

(do not edit description out of merge proposal)

Please review this at https://codereview.appspot.com/52460043/

Affected files (+23, -6 lines):
   A [revision details]
   M charmtools/test.py
   M setup.py
   M tests/test_juju_test.py

Index: [revision details]
=== added file '[revision details]'
--- [revision details] 2012-01-01 00:00:00 +0000
+++ [revision details] 2012-01-01 00:00:00 +0000
@@ -0,0 +1,2 @@
+Old revision: <email address hidden>
+New revision: <email address hidden>

Index: setup.py
=== modified file 'setup.py'
--- setup.py 2014-01-14 03:21:31 +0000
+++ setup.py 2014-01-15 00:18:41 +0000
@@ -34,7 +34,7 @@
              'charm = charmtools:charm',
              'juju-charm = charmtools:charm',
              'juju-bundle = charmtools:bundle',
- 'juju-test = charmtools:test',
+ 'juju-test = charmtools.test:main',
              'charm-get = charmtools.get:main',
              'charm-getall = charmtools.getall:main',
              'charm-proof = charmtools.proof:main',
@@ -49,7 +49,7 @@
              'charm-update = charmtools.update:main',
              'charm-version = charmtools.version:main',
              'charm-help = charmtools.cli:usage',
- 'charm-test = charmtools:test',
+ 'charm-test = charmtools.test:main',
              'charm-info = charmtools.info:main',
              'charm-generate = charmtools.generate:main',
              'charm-add = charmtools.generate:main',

Index: charmtools/test.py
=== modified file 'charmtools/test.py'
--- charmtools/test.py 2014-01-09 20:15:59 +0000
+++ charmtools/test.py 2014-01-15 00:18:41 +0000
@@ -184,8 +184,14 @@

      def destroy(self, juju_env):
          self.log.debug('Tearing down %s juju environment' % juju_env)
- cmd = ['juju', 'destroy-environment', '-e', juju_env]
+ cmd = ['juju', 'destroy-environment']
+
          if self.juju_version.major > 0:
+ if self.juju_version.minor < 17:
+ cmd.extend(['-y', '-e', juju_env])
+ else:
+ cmd.extend(['-y', juju_env])
+
              self.log.debug('Calling "%s"' % ' '.join(cmd))
              try:
                  subprocess.check_call(cmd)
@@ -194,6 +200,7 @@
          else:
              # Probably should use Popen instead of Shell=True. I'm just not
              # confident on properly mocking a Popen call just yet.
+ cmd.extend(['-e', juju_env])
              pycmd = 'echo y | %s' % ' '.join(cmd)
              self.log.debug('Calling "%s"' % pycmd)
              try:
@@ -234,8 +241,8 @@
                  if status['machines'][0]['agent-state'] == 'running':
                      bootstrapped = True

- def load_environments_yaml(self, juju_home='~'):
- env_yaml_file =
os.path.join(os.path.expanduser(juju_home), '.juju',
+ def load_environments_yaml(self, juju_home='~/.juju'):
+ env_yaml_file = os.path.join(os.path.expandus...

Read more...

Revision history for this message
Benjamin Saller (bcsaller) wrote :
Revision history for this message
Marco Ceppi (marcoceppi) wrote :

*** Submitted:

Fixed juju test load point and destroy-environment

R=benjamin.saller
CC=
https://codereview.appspot.com/52460043

https://codereview.appspot.com/52460043/

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'charmtools/test.py'
2--- charmtools/test.py 2014-01-09 20:15:59 +0000
3+++ charmtools/test.py 2014-01-15 00:20:52 +0000
4@@ -184,8 +184,14 @@
5
6 def destroy(self, juju_env):
7 self.log.debug('Tearing down %s juju environment' % juju_env)
8- cmd = ['juju', 'destroy-environment', '-e', juju_env]
9+ cmd = ['juju', 'destroy-environment']
10+
11 if self.juju_version.major > 0:
12+ if self.juju_version.minor < 17:
13+ cmd.extend(['-y', '-e', juju_env])
14+ else:
15+ cmd.extend(['-y', juju_env])
16+
17 self.log.debug('Calling "%s"' % ' '.join(cmd))
18 try:
19 subprocess.check_call(cmd)
20@@ -194,6 +200,7 @@
21 else:
22 # Probably should use Popen instead of Shell=True. I'm just not
23 # confident on properly mocking a Popen call just yet.
24+ cmd.extend(['-e', juju_env])
25 pycmd = 'echo y | %s' % ' '.join(cmd)
26 self.log.debug('Calling "%s"' % pycmd)
27 try:
28@@ -234,8 +241,8 @@
29 if status['machines'][0]['agent-state'] == 'running':
30 bootstrapped = True
31
32- def load_environments_yaml(self, juju_home='~'):
33- env_yaml_file = os.path.join(os.path.expanduser(juju_home), '.juju',
34+ def load_environments_yaml(self, juju_home='~/.juju'):
35+ env_yaml_file = os.path.join(os.path.expanduser(juju_home),
36 'environments.yaml')
37 if not os.path.exists(env_yaml_file):
38 raise IOError("%s file does not exist" % env_yaml_file)
39@@ -624,6 +631,7 @@
40 def main():
41 p = setup_parser()
42 args = p.parse_args()
43+ test_cfg = None
44 if args.description:
45 print p.description
46 sys.exit()
47
48=== modified file 'setup.py'
49--- setup.py 2014-01-14 03:21:31 +0000
50+++ setup.py 2014-01-15 00:20:52 +0000
51@@ -34,7 +34,7 @@
52 'charm = charmtools:charm',
53 'juju-charm = charmtools:charm',
54 'juju-bundle = charmtools:bundle',
55- 'juju-test = charmtools:test',
56+ 'juju-test = charmtools.test:main',
57 'charm-get = charmtools.get:main',
58 'charm-getall = charmtools.getall:main',
59 'charm-proof = charmtools.proof:main',
60@@ -49,7 +49,7 @@
61 'charm-update = charmtools.update:main',
62 'charm-version = charmtools.version:main',
63 'charm-help = charmtools.cli:usage',
64- 'charm-test = charmtools:test',
65+ 'charm-test = charmtools.test:main',
66 'charm-info = charmtools.info:main',
67 'charm-generate = charmtools.generate:main',
68 'charm-add = charmtools.generate:main',
69
70=== modified file 'tests/test_juju_test.py'
71--- tests/test_juju_test.py 2014-01-08 21:35:31 +0000
72+++ tests/test_juju_test.py 2014-01-15 00:20:52 +0000
73@@ -203,7 +203,14 @@
74 c.destroy(good_env)
75
76 mock_check_call.assert_called_once_with(['juju', 'destroy-environment',
77- '-e', good_env])
78+ '-y', '-e', good_env])
79+
80+ mock_check_call.reset_mock()
81+ c.juju_version = juju_test.JujuVersion(major=1, minor=17, patch=0)
82+ c.destroy(good_env)
83+
84+ mock_check_call.assert_called_once_with(['juju', 'destroy-environment',
85+ '-y', good_env])
86
87 mock_check_call.reset_mock()
88 c.juju_version = juju_test.JujuVersion(major=0, minor=8, patch=0)

Subscribers

People subscribed via source and target branches

to all changes: