本文整理汇总了Python中silver.tests.factories.ProviderFactory.create方法的典型用法代码示例。如果您正苦于以下问题:Python ProviderFactory.create方法的具体用法?Python ProviderFactory.create怎么用?Python ProviderFactory.create使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类silver.tests.factories.ProviderFactory
的用法示例。
在下文中一共展示了ProviderFactory.create方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_get_provider
# 需要导入模块: from silver.tests.factories import ProviderFactory [as 别名]
# 或者: from silver.tests.factories.ProviderFactory import create [as 别名]
def test_get_provider(self):
ProviderFactory.reset_sequence(1)
ProviderFactory.create()
url = reverse('provider-detail', kwargs={'pk': 1})
response = self.client.get(url)
assert response.status_code == 200
assert response.data == {
'id': 1,
'url': 'http://testserver/providers/1/',
'name': 'Name1',
'company': 'Company1',
'flow': 'proforma',
'invoice_series': 'InvoiceSeries',
'invoice_starting_number': 1,
'proforma_series': 'ProformaSeries',
'proforma_starting_number': 1,
'email': '[email protected]',
'address_1': 'Address11',
'address_2': 'Address21',
'city': 'City1',
'state': 'State1',
'zip_code': '1',
'country': u'AL',
'extra': 'Extra1',
'meta': {u'something': [1, 2]}
}
示例2: test_put_provider_without_required_field
# 需要导入模块: from silver.tests.factories import ProviderFactory [as 别名]
# 或者: from silver.tests.factories.ProviderFactory import create [as 别名]
def test_put_provider_without_required_field(self):
"""
.. note::
The test does not verify each required field, because the test
test_create_provider_without_required_fields does this and since the
creation will fail the update will fail too. This is more of a
sanity test, to check if the correct view is called and if it does
what's supposed to do for at least one field.
"""
ProviderFactory.create()
url = reverse('provider-detail', kwargs={'pk': 1})
new_data = {
'id': 1,
'url': 'http://testserver/providers/1/',
'email': '[email protected]',
'address_1': 'address',
'city': 'City',
'zip_code': '1',
'country': 'RO',
'flow': 'invoice',
'invoice_series': 'NSeries',
'invoice_starting_number': 2,
}
response = self.client.put(url, data=new_data)
assert response.status_code == status.HTTP_400_BAD_REQUEST
assert response.data == {'name': ['This field is required.']}
示例3: test_delete_provider
# 需要导入模块: from silver.tests.factories import ProviderFactory [as 别名]
# 或者: from silver.tests.factories.ProviderFactory import create [as 别名]
def test_delete_provider(self):
ProviderFactory.create()
url = reverse('provider-detail', kwargs={'pk': 1})
response = self.client.delete(url)
assert response.status_code == status.HTTP_204_NO_CONTENT
示例4: test_issue_proforma_with_custom_issue_date
# 需要导入模块: from silver.tests.factories import ProviderFactory [as 别名]
# 或者: from silver.tests.factories.ProviderFactory import create [as 别名]
def test_issue_proforma_with_custom_issue_date(self):
provider = ProviderFactory.create()
customer = CustomerFactory.create()
ProformaFactory.create(provider=provider, customer=customer)
url = reverse('proforma-state', kwargs={'pk': 1})
data = {'state': 'issued', 'issue_date': '2014-01-01'}
response = self.client.put(url, data=json.dumps(data),
content_type='application/json')
assert response.status_code == status.HTTP_200_OK
due_date = timezone.now().date() + timedelta(days=PAYMENT_DUE_DAYS)
mandatory_content = {
'issue_date': '2014-01-01',
'due_date': due_date.strftime('%Y-%m-%d'),
'state': 'issued'
}
assert response.status_code == status.HTTP_200_OK
assert all(item in response.data.items()
for item in mandatory_content.iteritems())
assert response.data.get('archived_provider', {}) != {}
assert response.data.get('archived_customer', {}) != {}
assert Invoice.objects.count() == 0
proforma = get_object_or_None(Proforma, pk=1)
示例5: test_pay_proforma_with_provided_date
# 需要导入模块: from silver.tests.factories import ProviderFactory [as 别名]
# 或者: from silver.tests.factories.ProviderFactory import create [as 别名]
def test_pay_proforma_with_provided_date(self):
provider = ProviderFactory.create()
customer = CustomerFactory.create()
proforma = ProformaFactory.create(provider=provider, customer=customer)
proforma.issue()
url = reverse('proforma-state', kwargs={'pk': proforma.pk})
data = {
'state': 'paid',
'paid_date': '2014-05-05'
}
response = self.client.put(url, data=json.dumps(data), content_type='application/json')
proforma.refresh_from_db()
assert response.status_code == status.HTTP_200_OK
due_date = timezone.now().date() + timedelta(days=PAYMENT_DUE_DAYS)
invoice_url = build_absolute_test_url(reverse('invoice-detail',
[proforma.related_document.pk]))
mandatory_content = {
'issue_date': timezone.now().date().strftime('%Y-%m-%d'),
'due_date': due_date.strftime('%Y-%m-%d'),
'paid_date': '2014-05-05',
'state': 'paid',
'invoice': invoice_url
}
assert response.status_code == status.HTTP_200_OK
assert all(item in list(response.data.items())
for item in mandatory_content.items())
invoice = Invoice.objects.all()[0]
assert proforma.related_document == invoice
assert invoice.related_document == proforma
示例6: test_post_proforma_with_proforma_entries
# 需要导入模块: from silver.tests.factories import ProviderFactory [as 别名]
# 或者: from silver.tests.factories.ProviderFactory import create [as 别名]
def test_post_proforma_with_proforma_entries(self):
customer = CustomerFactory.create()
provider = ProviderFactory.create()
SubscriptionFactory.create()
url = reverse('proforma-list')
provider_url = build_absolute_test_url(reverse('provider-detail', [provider.pk]))
customer_url = build_absolute_test_url(reverse('customer-detail', [customer.pk]))
data = {
'provider': provider_url,
'customer': customer_url,
'series': None,
'number': None,
'currency': 'RON',
'transaction_xe_rate': 1,
'proforma_entries': [{
"description": "Page views",
"unit_price": 10.0,
"quantity": 20
}]
}
response = self.client.post(url, data=json.dumps(data),
content_type='application/json')
assert response.status_code == status.HTTP_201_CREATED
示例7: test_pay_proforma_with_provided_date
# 需要导入模块: from silver.tests.factories import ProviderFactory [as 别名]
# 或者: from silver.tests.factories.ProviderFactory import create [as 别名]
def test_pay_proforma_with_provided_date(self):
provider = ProviderFactory.create()
customer = CustomerFactory.create()
proforma = ProformaFactory.create(provider=provider, customer=customer)
proforma.issue()
proforma.save()
url = reverse('proforma-state', kwargs={'pk': proforma.pk})
data = {
'state': 'paid',
'paid_date': '2014-05-05'
}
response = self.client.put(url, data=json.dumps(data), content_type='application/json')
proforma.refresh_from_db()
assert response.status_code == status.HTTP_200_OK
due_date = timezone.now().date() + timedelta(days=PAYMENT_DUE_DAYS)
mandatory_content = {
'issue_date': timezone.now().date().strftime('%Y-%m-%d'),
'due_date': due_date.strftime('%Y-%m-%d'),
'paid_date': '2014-05-05',
'state': 'paid',
'invoice': 'http://testserver/invoices/%s/' % proforma.invoice.pk
}
assert response.status_code == status.HTTP_200_OK
assert all(item in response.data.items()
for item in mandatory_content.iteritems())
invoice = Invoice.objects.all()[0]
assert proforma.invoice == invoice
assert invoice.proforma == proforma
invoice = get_object_or_None(Invoice, proforma=proforma)
示例8: test_get_provider
# 需要导入模块: from silver.tests.factories import ProviderFactory [as 别名]
# 或者: from silver.tests.factories.ProviderFactory import create [as 别名]
def test_get_provider(self):
ProviderFactory.reset_sequence(1)
provider = ProviderFactory.create()
url = reverse('provider-detail', kwargs={'pk': 1})
response = self.client.get(url)
assert response.status_code == 200
expected = {
'id': 1,
'url': 'http://testserver/providers/1/',
'name': provider.name,
'company': provider.company,
'flow': provider.flow,
'invoice_series': provider.invoice_series,
'invoice_starting_number': provider.invoice_starting_number,
'proforma_series': provider.proforma_series,
'proforma_starting_number': provider.proforma_starting_number,
'email': provider.email,
'address_1': provider.address_1,
'address_2': provider.address_2,
'city': provider.city,
'state': provider.state,
'zip_code': provider.zip_code,
'country': provider.country,
'extra': provider.extra,
'meta': {u'something': [1, 2]}
}
assert response.data == expected
示例9: test_cancel_invoice_with_provided_date
# 需要导入模块: from silver.tests.factories import ProviderFactory [as 别名]
# 或者: from silver.tests.factories.ProviderFactory import create [as 别名]
def test_cancel_invoice_with_provided_date(self):
provider = ProviderFactory.create()
customer = CustomerFactory.create()
invoice = InvoiceFactory.create(provider=provider, customer=customer)
invoice.issue()
invoice.save()
url = reverse('invoice-state', kwargs={'pk': 1})
data = {
'state': 'canceled',
'cancel_date': '2014-10-10'
}
response = self.client.put(url, data=json.dumps(data),
content_type='application/json')
assert response.status_code == status.HTTP_200_OK
due_date = timezone.now().date() + timedelta(days=PAYMENT_DUE_DAYS)
mandatory_content = {
'issue_date': timezone.now().date().strftime('%Y-%m-%d'),
'due_date': due_date.strftime('%Y-%m-%d'),
'cancel_date': '2014-10-10',
'state': 'canceled'
}
assert response.status_code == status.HTTP_200_OK
assert all(item in response.data.items()
for item in mandatory_content.iteritems())
示例10: test_issue_invoice_with_custom_issue_date_and_due_date
# 需要导入模块: from silver.tests.factories import ProviderFactory [as 别名]
# 或者: from silver.tests.factories.ProviderFactory import create [as 别名]
def test_issue_invoice_with_custom_issue_date_and_due_date(self):
provider = ProviderFactory.create()
customer = CustomerFactory.create()
InvoiceFactory.create(provider=provider, customer=customer)
url = reverse('invoice-state', kwargs={'pk': 1})
data = {
'state': 'issued',
'issue_date': '2014-01-01',
'due_date': '2014-01-20'
}
response = self.client.put(url, data=json.dumps(data),
content_type='application/json')
assert response.status_code == status.HTTP_200_OK
mandatory_content = {
'issue_date': '2014-01-01',
'due_date': '2014-01-20',
'state': 'issued'
}
assert response.status_code == status.HTTP_200_OK
assert all(item in response.data.items()
for item in mandatory_content.iteritems())
assert response.data.get('archived_provider', {}) != {}
assert response.data.get('archived_customer', {}) != {}
invoice = get_object_or_None(Invoice, pk=1)
示例11: test_put_provider_correctly
# 需要导入模块: from silver.tests.factories import ProviderFactory [as 别名]
# 或者: from silver.tests.factories.ProviderFactory import create [as 别名]
def test_put_provider_correctly(self):
ProviderFactory.reset_sequence(1)
ProviderFactory.create()
url = reverse('provider-detail', kwargs={'pk': 1})
new_data = {
'id': 1,
'url': 'http://testserver/providers/1/',
'name': 'TestProvider',
'company': 'TheNewCompany',
'email': '[email protected]',
'address_1': 'address',
'city': 'City',
'zip_code': '1',
'country': 'RO',
'flow': 'proforma',
'invoice_series': 'NewSeries',
'invoice_starting_number': 1,
'proforma_series': 'ProformaSeries',
'proforma_starting_number': 1
# TODO: add new meta JSON value
}
response = self.client.put(url, data=new_data)
assert response.status_code == status.HTTP_200_OK
assert response.data == {
'id': 1,
'url': 'http://testserver/providers/1/',
'name': 'TestProvider',
'company': 'TheNewCompany',
'flow': 'proforma',
'email': '[email protected]',
'address_1': 'address',
'address_2': 'Address21',
'city': 'City',
'state': 'State1',
'zip_code': '1',
'country': 'RO',
'extra': 'Extra1',
'flow': 'proforma',
'invoice_series': 'NewSeries',
'invoice_starting_number': 1,
'proforma_series': 'ProformaSeries',
'proforma_starting_number': 1,
'meta': {u'something': [1, 2]}
}
示例12: test_pay_invoice_when_in_draft_state
# 需要导入模块: from silver.tests.factories import ProviderFactory [as 别名]
# 或者: from silver.tests.factories.ProviderFactory import create [as 别名]
def test_pay_invoice_when_in_draft_state(self):
provider = ProviderFactory.create()
customer = CustomerFactory.create()
InvoiceFactory.create(provider=provider, customer=customer)
url = reverse('invoice-state', kwargs={'pk': 1})
data = {'state': 'paid'}
response = self.client.put(url, data=json.dumps(data),
content_type='application/json')
assert response.status_code == status.HTTP_403_FORBIDDEN
assert response.data == {'detail': 'An invoice can be paid only if it is in issued state.'}
示例13: test_post_proforma_without_proforma_entries
# 需要导入模块: from silver.tests.factories import ProviderFactory [as 别名]
# 或者: from silver.tests.factories.ProviderFactory import create [as 别名]
def test_post_proforma_without_proforma_entries(self):
customer = CustomerFactory.create()
provider = ProviderFactory.create()
SubscriptionFactory.create()
url = reverse('proforma-list')
provider_url = build_absolute_test_url(reverse('provider-detail', [provider.pk]))
customer_url = build_absolute_test_url(reverse('customer-detail', [customer.pk]))
data = {
'provider': provider_url,
'customer': customer_url,
'series': "",
'number': "",
'currency': 'RON',
'proforma_entries': []
}
response = self.client.post(url, data=data)
self.assertEqual(response.status_code, status.HTTP_201_CREATED)
proforma = get_object_or_None(Proforma, id=response.data["id"])
self.assertTrue(proforma)
self.assertEqual(response.data, {
"id": response.data["id"],
"series": "ProformaSeries",
"number": None,
"provider": provider_url,
"customer": customer_url,
"archived_provider": '{}',
"archived_customer": '{}',
"due_date": None,
"issue_date": None,
"paid_date": None,
"cancel_date": None,
"sales_tax_name": "VAT",
"sales_tax_percent": "1.00",
"currency": "RON",
"transaction_currency": proforma.transaction_currency,
"transaction_xe_rate": (str(proforma.transaction_xe_rate)
if proforma.transaction_xe_rate else None),
"transaction_xe_date": proforma.transaction_xe_date,
"pdf_url": None,
"state": "draft",
"invoice": None,
"proforma_entries": [],
"total": 0,
"total_in_transaction_currency": 0,
"transactions": []
})
示例14: test_post_proforma_without_proforma_entries
# 需要导入模块: from silver.tests.factories import ProviderFactory [as 别名]
# 或者: from silver.tests.factories.ProviderFactory import create [as 别名]
def test_post_proforma_without_proforma_entries(self):
CustomerFactory.create()
ProviderFactory.create()
SubscriptionFactory.create()
url = reverse('proforma-list')
data = {
'provider': 'http://testserver/providers/1/',
'customer': 'http://testserver/customers/1/',
'series': "",
'number': "",
'currency': 'RON',
'proforma_entries': []
}
response = self.client.post(url, data=data)
assert response.status_code == status.HTTP_201_CREATED
assert response.data == {
"id": 1,
"series": "ProformaSeries",
"number": 1,
"provider": "http://testserver/providers/1/",
"customer": "http://testserver/customers/1/",
"archived_provider": {},
"archived_customer": {},
"due_date": None,
"issue_date": None,
"paid_date": None,
"cancel_date": None,
"sales_tax_name": "VAT",
"sales_tax_percent": '1.00',
"currency": "RON",
'pdf_url': None,
"state": "draft",
"invoice": None,
"proforma_entries": [],
"total": Decimal('0.00'),
}
示例15: test_cancel_proforma_in_draft_state
# 需要导入模块: from silver.tests.factories import ProviderFactory [as 别名]
# 或者: from silver.tests.factories.ProviderFactory import create [as 别名]
def test_cancel_proforma_in_draft_state(self):
provider = ProviderFactory.create()
customer = CustomerFactory.create()
proforma = ProformaFactory.create(provider=provider, customer=customer)
url = reverse('proforma-state', kwargs={'pk': proforma.pk})
data = {'state': 'canceled'}
response = self.client.put(url, data=json.dumps(data), content_type='application/json')
assert response.status_code == status.HTTP_403_FORBIDDEN
assert response.data == {'detail': 'A proforma can be canceled only if it is in issued state.'}
assert Invoice.objects.count() == 0