def test_pull_one_part_only_from_3(self): fake_logger = fixtures.FakeLogger(level=logging.ERROR) self.useFixture(fake_logger) parts = self.make_snapcraft_yaml(n=3) pull.main(['pull1', ]) self.assertTrue(os.path.exists(common.get_partsdir()), 'Expected a parts directory') self.assertTrue(os.path.exists(parts[1]['part_dir']), 'Expected a part directory for the pull1 part') self.assertTrue(os.path.exists(parts[1]['state_file']), 'Expected a state file for the pull1 part') with open(parts[1]['state_file']) as sf: state = sf.readlines() self.assertEqual(len(state), 1, 'Expected only one line in the state ' 'file for the pull1 part') self.assertEqual(state[0], 'pull', "Expected the state file for pull1 " "to be 'pull'") for i in [0, 2]: self.assertFalse(os.path.exists(parts[i]['part_dir']), 'Pulled wrong part') self.assertFalse(os.path.exists(parts[i]['state_file']), 'Expected for only to be a state file for pull1')
def test_pull_invalid_part(self): fake_logger = fixtures.FakeLogger(level=logging.ERROR) self.useFixture(fake_logger) self.make_snapcraft_yaml() with self.assertRaises(EnvironmentError) as raised: pull.main(['no-pull', ]) self.assertEqual( raised.exception.__str__(), "The part named 'no-pull' is not defined in 'snapcraft.yaml'")
def test_pull_defaults(self): fake_logger = fixtures.FakeLogger(level=logging.ERROR) self.useFixture(fake_logger) parts = self.make_snapcraft_yaml() pull.main() self.assertTrue(os.path.exists(common.get_partsdir()), 'Expected a parts directory') self.assertTrue(os.path.exists(parts[0]['part_dir']), 'Expected a part directory for the pull0 part') self.verify_state('pull0', parts[0]['state_dir'], 'pull')
def test_pull_one_part_only_from_3(self): fake_logger = fixtures.FakeLogger(level=logging.ERROR) self.useFixture(fake_logger) parts = self.make_snapcraft_yaml(n=3) pull.main(['pull1', ]) self.assertTrue(os.path.exists(common.get_partsdir()), 'Expected a parts directory') self.assertTrue(os.path.exists(parts[1]['part_dir']), 'Expected a part directory for the pull1 part') self.verify_state('pull1', parts[1]['state_dir'], 'pull') for i in [0, 2]: self.assertFalse(os.path.exists(parts[i]['part_dir']), 'Pulled wrong part') self.assertFalse(os.path.exists(parts[i]['state_dir']), 'Expected for only to be a state file for pull1')
def test_pull_defaults(self): fake_logger = fixtures.FakeLogger(level=logging.ERROR) self.useFixture(fake_logger) parts = self.make_snapcraft_yaml() pull.main() self.assertTrue(os.path.exists(common.get_partsdir()), 'Expected a parts directory') self.assertTrue(os.path.exists(parts[0]['part_dir']), 'Expected a part directory for the pull0 part') self.assertTrue(os.path.exists(parts[0]['state_file']), 'Expected a state file for the pull0 part') with open(parts[0]['state_file']) as sf: state = sf.readlines() self.assertEqual(len(state), 1, 'Expected only one line in the state ' 'file for the pull0 part') self.assertEqual(state[0], 'pull', "Expected the state file for pull0 " "to be 'pull'")