Example #1
0
 def test_layer_add_fail_2(self):
     with stdchannels_redirected():
         self.assertIsNone(main(['xd', 'init']))
     os.chmod('.git/refs/heads', stat.S_IREAD)
     with stdchannels_redirected():
         self.assertIsNotNone(main(['xd', 'layer', 'add', 'build/core']))
     os.chmod('.git/refs/heads', stat.S_IRWXU)
Example #2
0
 def test_layer_status_1_layer(self):
     with stdchannels_redirected():
         self.assertIsNone(main(['xd', 'init']))
         self.assertIsNone(main(['xd', 'layer', 'add', 'build/core']))
         self.assertIsNone(main(['xd', 'layer', 'status']))
     stdout_lines = sys.stdout.getvalue().splitlines()
     self.assertRegex(stdout_lines[-1], 'build/core .*')
Example #3
0
 def test_layer_status_non_layer_submodule(self):
     with stdchannels_redirected():
         self.assertIsNone(main(['xd', 'init']))
         self.assertIsNone(main(['xd', 'layer', 'add', 'build/core']))
         os.unlink(os.path.join('build', 'core', '.xd'))
         self.assertIsNone(main(['xd', 'layer', 'status']))
     stdout_lines = sys.stdout.getvalue().splitlines()
     self.assertNotRegex(stdout_lines[-1], '%sbuild/core .*'%(os.linesep))
Example #4
0
 def test_init_twice(self):
     with stdchannels_redirected():
         self.assertIsNone(main(['xd', 'init']))
     self.assertTrue(os.path.isdir('.git'))
     self.assertTrue(os.path.isfile('.xd'))
     with stdchannels_redirected():
         self.assertIsNone(main(['xd', '-d', 'init']))
     self.assertTrue(os.path.isdir('.git'))
     self.assertTrue(os.path.isfile('.xd'))
Example #5
0
 def test_layer_status_manifest_layer(self):
     with stdchannels_redirected():
         self.assertIsNone(main(['xd', 'init']))
         config = configparser.ConfigParser()
         config.read('.xd')
         config.add_section('layer')
         with open('.xd', 'w') as f:
             config.write(f)
         sh.git.remote.add('origin', 'URL')
         self.assertIsNone(main(['xd', 'layer', 'status']))
     stdout_lines = sys.stdout.getvalue().splitlines()
     self.assertRegex(stdout_lines[-1], '. +URL')
Example #6
0
 def test_main_no_args(self):
     main(['xd'])
Example #7
0
 def test_main_early_args(self):
     with stdchannels_redirected():
         main(['xd', '-d'])
Example #8
0
 def test_init_fail_4(self):
     sh.git.init()
     os.chmod('.git/refs/heads', stat.S_IREAD)
     with stdchannels_redirected():
         self.assertNotEqual(main(['xd', 'init']), None)
Example #9
0
 def test_init_fail_3(self):
     os.chmod('.', stat.S_IREAD|stat.S_IEXEC)
     with stdchannels_redirected():
         self.assertNotEqual(main(['xd', 'init']), None)
Example #10
0
 def test_init_fail_2(self):
     with open('.git', 'w') as f:
         f.write('foobar')
     with open('.xd', 'w') as f:
         f.write('foobar')
     self.assertNotEqual(main(['xd', 'init']), None)
Example #11
0
 def test_init_fail_1(self):
     with open('.git', 'w') as f:
         f.write('foobar')
     with stdchannels_redirected():
         self.assertNotEqual(main(['xd', 'init']), None)
Example #12
0
 def test_layer_status_empty(self):
     with stdchannels_redirected():
         self.assertIsNone(main(['xd', 'init']))
         self.assertIsNone(main(['xd', 'layer', 'status']))
Example #13
0
 def test_layer_nosubcmd(self):
     main(['xd', 'layer'])
     self.assertRegex(sys.stdout.getvalue(), 'usage: ')
Example #14
0
 def test_layer_list(self):
     with stdchannels_redirected():
         self.assertIsNone(main(['xd', 'init']))
         self.assertIsNone(main(['xd', 'layer', 'list']))
Example #15
0
 def test_layer_add_unknown(self):
     with stdchannels_redirected():
         self.assertIsNone(main(['xd', 'init']))
         self.assertIsNotNone(main(['xd', 'layer', 'add', 'FOOBAR']))
Example #16
0
 def test_layer_add_none(self):
     with stdchannels_redirected():
         self.assertIsNone(main(['xd', 'init']))
         with self.assertRaises(SystemExit):
             main(['xd', 'layer', 'add'])
Example #17
0
 def test_layer_add(self):
     with stdchannels_redirected():
         self.assertIsNone(main(['xd', 'init']))
         self.assertIsNone(main(['xd', 'layer', 'add', 'build/core']))
Example #18
0
 def test_layer_list_no_manifest(self):
     with self.assertLogs('xd.tool.cmd.layer', level='ERROR') as logs:
         with stdchannels_redirected():
             self.assertEqual(main(['xd', 'layer', 'list']), 1)
     self.assertEqual(logs.records[0].message, 'Manifest not found')