def test_report_changes_diff(self, run_cmd): """Test deploy_server_local.report_changes. @param run_cmd: Mock of subprocess call used. """ before = { 'autotest': ('/usr/local/autotest', 'auto_before'), 'autotest_private': ('/dir/autotest_private', '78b9626'), 'other': ('/fake/unchanged', 'constant_hash'), } after = { 'autotest': ('/usr/local/autotest', 'auto_after'), 'autotest_tools': ('/dir/autotest_tools', 'a1598f7'), 'other': ('/fake/unchanged', 'constant_hash'), } run_cmd.return_value = 'hash1 Fix change.\nhash2 Bad change.\n' result = dsl.report_changes(before, after) self.assertEqual( result, """autotest: hash1 Fix change. hash2 Bad change. autotest_private: Removed. autotest_tools: Added. other: No Change. """) run_cmd.assert_called_with( ['git', 'log', 'auto_before..auto_after', '--oneline'], cwd='/usr/local/autotest', stderr=subprocess.STDOUT)
def test_report_changes_no_update(self, run_cmd): """Test deploy_server_local.report_changes. @param run_cmd: Mock of subprocess call used. """ before = { 'autotest': ('/usr/local/autotest', 'auto_before'), 'autotest_private': ('/dir/autotest_private', '78b9626'), 'other': ('/fake/unchanged', 'constant_hash'), } run_cmd.return_value = 'hash1 Fix change.\nhash2 Bad change.\n' result = dsl.report_changes(before, None) self.assertEqual(result, """autotest: auto_before autotest_private: 78b9626 other: constant_hash """) self.assertFalse(run_cmd.called)