本文整理汇总了Python中silver.tests.factories.ProviderFactory类的典型用法代码示例。如果您正苦于以下问题:Python ProviderFactory类的具体用法?Python ProviderFactory怎么用?Python ProviderFactory使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了ProviderFactory类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: test_put_provider_without_required_field
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.']}
开发者ID:Athenolabs,项目名称:silver,代码行数:31,代码来源:test_provider.py
示例2: test_get_provider
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]}
}
开发者ID:Athenolabs,项目名称:silver,代码行数:29,代码来源:test_provider.py
示例3: test_get_providers
def test_get_providers(self):
batch_size = 40
ProviderFactory.create_batch(batch_size)
url = reverse('provider-list')
response = self.client.get(url)
full_url = None
for field in response.data:
full_url = field.get('url', None)
if full_url:
break
if full_url:
domain = full_url.split('/')[2]
full_url = full_url.split(domain)[0] + domain + url
assert response.status_code == status.HTTP_200_OK
assert response._headers['link'] == \
('Link', '<' + full_url + '?page=2; rel="next">, ' +
'<' + full_url + '?page=1; rel="first">, ' +
'<' + full_url + '?page=2; rel="last">')
response = self.client.get(url + '?page=2')
assert response.status_code == status.HTTP_200_OK
assert response._headers['link'] == \
('Link', '<' + full_url + '; rel="prev">, ' +
'<' + full_url + '?page=1; rel="first">, ' +
'<' + full_url + '?page=2; rel="last">')
开发者ID:Athenolabs,项目名称:silver,代码行数:28,代码来源:test_provider.py
示例4: test_delete_provider
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
开发者ID:Athenolabs,项目名称:silver,代码行数:7,代码来源:test_provider.py
示例5: test_get_provider
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
开发者ID:MaxMorais,项目名称:silver,代码行数:30,代码来源:test_provider.py
示例6: test_put_provider_correctly
def test_put_provider_correctly(self):
ProviderFactory.reset_sequence(1)
provider = ProviderFactory.create()
url = reverse('provider-detail', kwargs={'pk': provider.pk})
new_data = {
'id': provider.pk,
'url': 'http://testserver/providers/%s/' % provider.pk,
'name': 'TestProvider',
'company': 'TheNewCompany',
'display_email': '[email protected]',
'notification_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': provider.pk,
'url': 'http://testserver/providers/%s/' % provider.pk,
'name': 'TestProvider',
'company': 'TheNewCompany',
'flow': 'proforma',
'display_email': '[email protected]',
'notification_email': '[email protected]',
'address_1': 'address',
'address_2': u'Addåress21',
'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]},
'payment_processors': 'http://testserver/providers/%s/payment_processors/' % provider.pk
}
开发者ID:oucsaw,项目名称:silver,代码行数:50,代码来源:test_provider.py
示例7: test_put_provider_correctly
def test_put_provider_correctly(self):
ProviderFactory.reset_sequence(1)
provider = ProviderFactory.create()
url = reverse('provider-detail', kwargs={'pk': provider.pk})
new_data = {
'id': provider.pk,
'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
self_url = build_absolute_test_url(url)
assert response.data == {
'id': provider.pk,
'url': self_url,
'name': new_data['name'],
'company': new_data['company'],
'flow': provider.flow,
'email': new_data['email'],
'address_1': new_data['address_1'],
'address_2': provider.address_2,
'city': new_data['city'],
'state': provider.state,
'zip_code': new_data['zip_code'],
'country': new_data['country'],
'extra': provider.extra,
'flow': new_data['flow'],
'invoice_series': new_data['invoice_series'],
'invoice_starting_number': new_data['invoice_starting_number'],
'proforma_series': new_data['proforma_series'],
'proforma_starting_number': new_data['proforma_starting_number'],
'meta': provider.meta,
}
开发者ID:PressLabs,项目名称:silver,代码行数:48,代码来源:test_provider.py
示例8: test_post_proforma_with_proforma_entries
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
开发者ID:PressLabs,项目名称:silver,代码行数:27,代码来源:test_proforma.py
示例9: test_issue_proforma_with_custom_issue_date
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)
开发者ID:Athenolabs,项目名称:silver,代码行数:25,代码来源:test_proforma.py
示例10: test_pay_proforma_with_provided_date
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)
开发者ID:oucsaw,项目名称:silver,代码行数:33,代码来源:test_proforma.py
示例11: test_cancel_invoice_with_provided_date
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())
开发者ID:MaxMorais,项目名称:silver,代码行数:27,代码来源:test_invoice.py
示例12: test_pay_proforma_with_provided_date
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
开发者ID:PressLabs,项目名称:silver,代码行数:33,代码来源:test_proforma.py
示例13: test_issue_invoice_with_custom_issue_date_and_due_date
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)
开发者ID:MaxMorais,项目名称:silver,代码行数:28,代码来源:test_invoice.py
示例14: test_patch_provider
def test_patch_provider(self):
ProviderFactory.reset_sequence(1)
provider = ProviderFactory.create()
url = reverse('provider-detail', kwargs={'pk': provider.pk})
new_data = {
'company': 'TheNewCompany', # The changed field
'address_1': 'Address11',
'flow': 'proforma',
'invoice_series': 'InvoiceSeries',
'invoice_starting_number': 1,
'proforma_series': 'ProformaSeries',
'proforma_starting_number': 1,
'city': 'City1',
'zip_code': '1',
'country': u'AL',
}
response = self.client.patch(url, data=new_data)
assert response.status_code == 200
self_url = build_absolute_test_url(url)
assert response.data == {
'id': provider.pk,
'url': self_url,
'name': provider.name,
'company': new_data['company'],
'flow': new_data['flow'],
'invoice_series': new_data['invoice_series'],
'invoice_starting_number': new_data['invoice_starting_number'],
'proforma_series': new_data['proforma_series'],
'proforma_starting_number': new_data['proforma_starting_number'],
'email': provider.email,
'address_1': new_data['address_1'],
'address_2': provider.address_2,
'city': new_data['city'],
'state': provider.state,
'zip_code': new_data['zip_code'],
'country': new_data['country'],
'extra': provider.extra,
'meta': provider.meta,
}
开发者ID:PressLabs,项目名称:silver,代码行数:44,代码来源:test_provider.py
示例15: test_patch_provider
def test_patch_provider(self):
ProviderFactory.reset_sequence(1)
provider = ProviderFactory.create()
url = reverse('provider-detail', kwargs={'pk': provider.pk})
new_data = {
'company': 'TheNewCompany', # The changed field
'address_1': 'Address11',
'flow': 'proforma',
'invoice_series': 'InvoiceSeries',
'invoice_starting_number': 1,
'proforma_series': 'ProformaSeries',
'proforma_starting_number': 1,
'city': 'City1',
'zip_code': '1',
'country': u'AL',
}
response = self.client.patch(url, data=new_data)
assert response.status_code == 200
assert response.data == {
'id': provider.pk,
'url': 'http://testserver/providers/%s/' % provider.pk,
'name': u'Náme1',
'company': u'TheNewCompany',
'flow': 'proforma',
'invoice_series': 'InvoiceSeries',
'invoice_starting_number': 1,
'proforma_series': 'ProformaSeries',
'proforma_starting_number': 1,
'display_email': '[email protected]',
'notification_email': '[email protected]',
'address_1': 'Address11',
'address_2': u'Addåress21',
'city': 'City1',
'state': 'State1',
'zip_code': '1',
'country': u'AL',
'extra': 'Extra1',
'meta': {u'something': [1, 2]},
'payment_processors': 'http://testserver/providers/%s/payment_processors/' % provider.pk
}
开发者ID:oucsaw,项目名称:silver,代码行数:44,代码来源:test_provider.py
示例16: test_pay_invoice_when_in_draft_state
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.'}
开发者ID:MaxMorais,项目名称:silver,代码行数:11,代码来源:test_invoice.py
示例17: test_post_proforma_without_proforma_entries
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": []
})
开发者ID:PressLabs,项目名称:silver,代码行数:52,代码来源:test_proforma.py
示例18: test_cancel_proforma_in_draft_state
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
开发者ID:oucsaw,项目名称:silver,代码行数:13,代码来源:test_proforma.py
示例19: test_post_proforma_without_proforma_entries
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'),
}
开发者ID:Athenolabs,项目名称:silver,代码行数:39,代码来源:test_proforma.py
示例20: test_post_invoice_with_invoice_entries
def test_post_invoice_with_invoice_entries(self):
CustomerFactory.create()
ProviderFactory.create()
SubscriptionFactory.create()
url = reverse('invoice-list')
data = {
'provider': 'http://testserver/providers/1/',
'customer': 'http://testserver/customers/1/',
'series': None,
'number': None,
'currency': 'RON',
'invoice_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
开发者ID:MaxMorais,项目名称:silver,代码行数:22,代码来源:test_invoice.py
注:本文中的silver.tests.factories.ProviderFactory类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论