今天就参加,但是我无法将解决方案添加到Visual Studio论坛中:https : //developercommunity.visualstudio.com/content/problem/17952/team-explorer-git-compare-with-unmodified-not-work .html
我无法通过“与未修改的比较”上下文菜单或在“更改”视图中双击文件来比较对未修改版本的更改。
解决方案如下。
我是 Python 新手,但我已经用 C# 和 JavaScript 进行了大量单元测试。我在弄清楚 Python 中的模拟框架时遇到了麻烦。这是我所拥有的(精简):
发票业务.py
import ims.repository.invoice_repository as invoiceRepository
import logging
logger = logging.getLogger(__name__)
def update_invoice_statuses(invoices):
for invoice in invoices:
dbInvoice = invoiceRepository.get(invoice.invoice_id)
print("dbInvoice is %s" % dbInvoice) #prints <MagicMock etc.>
if dbInvoice is None:
logger.error("Unable to update status for invoice %d" % invoice.invoice_id)
continue;
Run Code Online (Sandbox Code Playgroud)
test_invoice_business.py
from unittest import TestCase, mock
import logging
import ims.business.invoice_business as business
class UpdateInvoiceTests(TestCase):
@mock.patch("ims.business.invoice_business.invoiceRepository")
@mock.patch("ims.business.invoice_business.logger")
def test_invoiceDoesNotExist_logsErrorAndContinues(self, invoiceRepoMock, loggerMock):
#Arrange
invoice = Invoice(123)
invoice.set_status(InvoiceStatus.Filed, None)
invoiceRepoMock.get.return_value(33)
#Act
business.update_invoice_statuses([invoice])
#Assert …Run Code Online (Sandbox Code Playgroud)