Browse Source

Pylint house-keeping

master
David Winterbottom 13 years ago
parent
commit
436f608aa6

+ 41
- 24
oscar/apps/voucher/abstract_models.py View File

16
     (c) Once per customer
16
     (c) Once per customer
17
     """
17
     """
18
     name = models.CharField(_("Name"), max_length=128,
18
     name = models.CharField(_("Name"), max_length=128,
19
-        help_text=_("""This will be shown in the checkout and basket once the voucher is entered"""))
20
-    code = models.CharField(_("Code"), max_length=128, db_index=True, unique=True,
19
+        help_text=_("This will be shown in the checkout and basket "
20
+                    "once the voucher is entered"))
21
+    code = models.CharField(_("Code"), max_length=128,
22
+                            db_index=True, unique=True,
21
         help_text=_("""Case insensitive / No spaces allowed"""))
23
         help_text=_("""Case insensitive / No spaces allowed"""))
22
-    offers = models.ManyToManyField('offer.ConditionalOffer', related_name='vouchers', verbose_name=_("Offers"),
23
-                                    limit_choices_to={'offer_type': "Voucher"})
24
+    offers = models.ManyToManyField(
25
+        'offer.ConditionalOffer', related_name='vouchers',
26
+        verbose_name=_("Offers"), limit_choices_to={'offer_type': "Voucher"})
24
 
27
 
25
-    SINGLE_USE, MULTI_USE, ONCE_PER_CUSTOMER = ('Single use', 'Multi-use', 'Once per customer')
28
+    SINGLE_USE, MULTI_USE, ONCE_PER_CUSTOMER = (
29
+        'Single use', 'Multi-use', 'Once per customer')
26
     USAGE_CHOICES = (
30
     USAGE_CHOICES = (
27
         (SINGLE_USE, _("Can be used once by one customer")),
31
         (SINGLE_USE, _("Can be used once by one customer")),
28
         (MULTI_USE, _("Can be used multiple times by multiple customers")),
32
         (MULTI_USE, _("Can be used multiple times by multiple customers")),
29
         (ONCE_PER_CUSTOMER, _("Can only be used once per customer")),
33
         (ONCE_PER_CUSTOMER, _("Can only be used once per customer")),
30
     )
34
     )
31
-    usage = models.CharField(_("Usage"), max_length=128, choices=USAGE_CHOICES, default=MULTI_USE)
35
+    usage = models.CharField(_("Usage"), max_length=128,
36
+                             choices=USAGE_CHOICES, default=MULTI_USE)
32
 
37
 
33
     start_date = models.DateField(_('Start Date'))
38
     start_date = models.DateField(_('Start Date'))
34
     end_date = models.DateField(_('End Date'))
39
     end_date = models.DateField(_('End Date'))
35
 
40
 
36
     # Audit information
41
     # Audit information
37
-    num_basket_additions = models.PositiveIntegerField(_("Times added to basket"), default=0)
42
+    num_basket_additions = models.PositiveIntegerField(
43
+        _("Times added to basket"), default=0)
38
     num_orders = models.PositiveIntegerField(_("Times on orders"), default=0)
44
     num_orders = models.PositiveIntegerField(_("Times on orders"), default=0)
39
-    total_discount = models.DecimalField(_("Total discount"), decimal_places=2, max_digits=12, default=Decimal('0.00'))
40
-    
45
+    total_discount = models.DecimalField(
46
+        _("Total discount"), decimal_places=2, max_digits=12,
47
+        default=Decimal('0.00'))
48
+
41
     date_created = models.DateField(auto_now_add=True)
49
     date_created = models.DateField(auto_now_add=True)
42
 
50
 
43
     class Meta:
51
     class Meta:
50
         return self.name
58
         return self.name
51
 
59
 
52
     def clean(self):
60
     def clean(self):
53
-        if self.start_date and self.end_date and self.start_date > self.end_date:
54
-            raise exceptions.ValidationError(_('End date should be later than start date'))
61
+        if (self.start_date and self.end_date and
62
+            self.start_date > self.end_date):
63
+            raise exceptions.ValidationError(
64
+                _('End date should be later than start date'))
55
 
65
 
56
     def save(self, *args, **kwargs):
66
     def save(self, *args, **kwargs):
57
         self.code = self.code.upper()
67
         self.code = self.code.upper()
68
     def is_available_to_user(self, user=None):
78
     def is_available_to_user(self, user=None):
69
         """
79
         """
70
         Test whether this voucher is available to the passed user.
80
         Test whether this voucher is available to the passed user.
71
-        
72
-        Returns a tuple of a boolean for whether it is successulf, and a message
81
+
82
+        Returns a tuple of a boolean for whether it is successulf, and a
83
+        message
73
         """
84
         """
74
         is_available, message = False, ''
85
         is_available, message = False, ''
75
         if self.usage == self.SINGLE_USE:
86
         if self.usage == self.SINGLE_USE:
81
         elif self.usage == self.ONCE_PER_CUSTOMER:
92
         elif self.usage == self.ONCE_PER_CUSTOMER:
82
             if not user.is_authenticated():
93
             if not user.is_authenticated():
83
                 is_available = False
94
                 is_available = False
84
-                message = _("This voucher is only available to signed in users")
95
+                message = _(
96
+                    "This voucher is only available to signed in users")
85
             else:
97
             else:
86
-                is_available = self.applications.filter(voucher=self, user=user).count() == 0
98
+                is_available = self.applications.filter(
99
+                    voucher=self, user=user).count() == 0
87
                 if not is_available:
100
                 if not is_available:
88
-                    message = _("You have already used this voucher in a previous order")
101
+                    message = _("You have already used this voucher in "
102
+                                "a previous order")
89
         return is_available, message
103
         return is_available, message
90
-    
104
+
91
     def record_usage(self, order, user):
105
     def record_usage(self, order, user):
92
         """
106
         """
93
         Records a usage of this voucher in an order.
107
         Records a usage of this voucher in an order.
109
     @property
123
     @property
110
     def benefit(self):
124
     def benefit(self):
111
         return self.offers.all()[0].benefit
125
         return self.offers.all()[0].benefit
112
-        
113
-        
126
+
127
+
114
 class AbstractVoucherApplication(models.Model):
128
 class AbstractVoucherApplication(models.Model):
115
     """
129
     """
116
     For tracking how often a voucher has been used
130
     For tracking how often a voucher has been used
117
     """
131
     """
118
-    voucher = models.ForeignKey('voucher.Voucher', related_name="applications", verbose_name=_("Voucher"))
119
-
120
-    # It is possible for an anonymous user to apply a voucher so we need to allow
121
-    # the user to be nullable
122
-    user = models.ForeignKey('auth.User', blank=True, null=True, verbose_name=_("User"))
132
+    voucher = models.ForeignKey(
133
+        'voucher.Voucher', related_name="applications",
134
+        verbose_name=_("Voucher"))
135
+
136
+    # It is possible for an anonymous user to apply a voucher so we need to
137
+    # allow the user to be nullable
138
+    user = models.ForeignKey('auth.User', blank=True, null=True,
139
+                             verbose_name=_("User"))
123
     order = models.ForeignKey('order.Order', verbose_name=_("Order"))
140
     order = models.ForeignKey('order.Order', verbose_name=_("Order"))
124
     date_created = models.DateField(_("Date Creted"), auto_now_add=True)
141
     date_created = models.DateField(_("Date Creted"), auto_now_add=True)
125
 
142
 

+ 9
- 11
oscar/apps/voucher/admin.py View File

4
 Voucher = get_model('voucher', 'Voucher')
4
 Voucher = get_model('voucher', 'Voucher')
5
 VoucherApplication = get_model('voucher', 'VoucherApplication')
5
 VoucherApplication = get_model('voucher', 'VoucherApplication')
6
 
6
 
7
-    
7
+
8
 class VoucherAdmin(admin.ModelAdmin):
8
 class VoucherAdmin(admin.ModelAdmin):
9
-    list_display = ('name', 'code', 'usage', 'num_basket_additions', 'num_orders', 'total_discount')    
9
+    list_display = ('name', 'code', 'usage', 'num_basket_additions',
10
+                    'num_orders', 'total_discount')
10
     readonly_fields = ('num_basket_additions', 'num_orders', 'total_discount')
11
     readonly_fields = ('num_basket_additions', 'num_orders', 'total_discount')
11
     fieldsets = (
12
     fieldsets = (
12
         (None, {
13
         (None, {
13
-            'fields': ('name', 'code', 'usage', 'start_date', 'end_date')
14
-        }),
14
+            'fields': ('name', 'code', 'usage', 'start_date', 'end_date')}),
15
         ('Benefit', {
15
         ('Benefit', {
16
-            'fields': ('offers',)
17
-        }),
16
+            'fields': ('offers',)}),
18
         ('Usage', {
17
         ('Usage', {
19
-            'fields': ('num_basket_additions', 'num_orders', 'total_discount')
20
-        }),
21
-        
18
+            'fields': ('num_basket_additions', 'num_orders',
19
+                       'total_discount')}),
22
     )
20
     )
23
-    
21
+
24
 
22
 
25
 class VoucherApplicationAdmin(admin.ModelAdmin):
23
 class VoucherApplicationAdmin(admin.ModelAdmin):
26
     list_display = ('voucher', 'user', 'order', 'date_created')
24
     list_display = ('voucher', 'user', 'order', 'date_created')
27
-    readonly_fields = ('voucher', 'user', 'order')        
25
+    readonly_fields = ('voucher', 'user', 'order')
28
 
26
 
29
 
27
 
30
 admin.site.register(Voucher, VoucherAdmin)
28
 admin.site.register(Voucher, VoucherAdmin)

+ 2
- 1
oscar/apps/voucher/models.py View File

1
-from oscar.apps.voucher.abstract_models import AbstractVoucher, AbstractVoucherApplication
1
+from oscar.apps.voucher.abstract_models import (
2
+    AbstractVoucher, AbstractVoucherApplication)
2
 
3
 
3
 
4
 
4
 class Voucher(AbstractVoucher):
5
 class Voucher(AbstractVoucher):

+ 5
- 4
oscar/apps/voucher/reports.py View File

6
 from oscar.core.loading import get_class
6
 from oscar.core.loading import get_class
7
 
7
 
8
 ReportGenerator = get_class('dashboard.reports.reports', 'ReportGenerator')
8
 ReportGenerator = get_class('dashboard.reports.reports', 'ReportGenerator')
9
-ReportCSVFormatter = get_class('dashboard.reports.reports', 'ReportCSVFormatter')
10
-ReportHTMLFormatter = get_class('dashboard.reports.reports', 'ReportHTMLFormatter')
9
+ReportCSVFormatter = get_class(
10
+    'dashboard.reports.reports', 'ReportCSVFormatter')
11
+ReportHTMLFormatter = get_class(
12
+    'dashboard.reports.reports', 'ReportHTMLFormatter')
11
 Voucher = get_model('voucher', 'Voucher')
13
 Voucher = get_model('voucher', 'Voucher')
12
 
14
 
13
 
15
 
41
 
43
 
42
     formatters = {
44
     formatters = {
43
         'CSV_formatter': VoucherReportCSVFormatter,
45
         'CSV_formatter': VoucherReportCSVFormatter,
44
-        'HTML_formatter': VoucherReportHTMLFormatter
45
-    }
46
+        'HTML_formatter': VoucherReportHTMLFormatter}
46
 
47
 
47
     def generate(self):
48
     def generate(self):
48
         vouchers = Voucher._default_manager.all()
49
         vouchers = Voucher._default_manager.all()

+ 2
- 1
oscar/test/__init__.py View File

65
         self.assertEqual(httplib.OK, response.status_code)
65
         self.assertEqual(httplib.OK, response.status_code)
66
 
66
 
67
     def assertInContext(self, response, key):
67
     def assertInContext(self, response, key):
68
-        self.assertTrue(key in response.context, "Context should contain a variable '%s'" % key)
68
+        self.assertTrue(key in response.context,
69
+                        "Context should contain a variable '%s'" % key)
69
 
70
 
70
 
71
 
71
 class WebTestCase(WebTest):
72
 class WebTestCase(WebTest):

+ 9
- 7
oscar/test/decorators.py View File

1
 def dataProvider(fn_data_provider):
1
 def dataProvider(fn_data_provider):
2
     """
2
     """
3
-    Data provider decorator, allows another callable to provide the data for the test.  
4
-    This is a nice feature from PHPUnit which is very useful.  Am sticking with the JUnit style
5
-    naming as unittest does this already.
6
-    
7
-    Implementation based on http://melp.nl/2011/02/phpunit-style-dataprovider-in-python-unit-test/#more-525
3
+    Data provider decorator, allows another callable to provide the data for
4
+    the test.  This is a nice feature from PHPUnit which is very useful.  Am
5
+    sticking with the JUnit style naming as unittest does this already.
6
+
7
+    Implementation based on
8
+    http://melp.nl/2011/02/phpunit-style-dataprovider-in-python-unit-test/#more-525
8
     """
9
     """
9
     def test_decorator(test_method):
10
     def test_decorator(test_method):
10
         def execute_test_method_with_each_data_set(self):
11
         def execute_test_method_with_each_data_set(self):
11
             for data in fn_data_provider():
12
             for data in fn_data_provider():
12
-                if len(data) == 2 and isinstance(data[0], tuple) and isinstance(data[1], dict):
13
+                if (len(data) == 2 and isinstance(data[0], tuple) and
14
+                    isinstance(data[1], dict)):
13
                     # Both args and kwargs being provided
15
                     # Both args and kwargs being provided
14
                     args, kwargs = data[:]
16
                     args, kwargs = data[:]
15
                 else:
17
                 else:
19
                 except AssertionError, e:
21
                 except AssertionError, e:
20
                     self.fail("%s (Provided data: %s, %s)" % (e, args, kwargs))
22
                     self.fail("%s (Provided data: %s, %s)" % (e, args, kwargs))
21
         return execute_test_method_with_each_data_set
23
         return execute_test_method_with_each_data_set
22
-    return test_decorator
24
+    return test_decorator

+ 19
- 14
oscar/test/helpers.py View File

8
 Free = get_class('shipping.methods', 'Free')
8
 Free = get_class('shipping.methods', 'Free')
9
 Voucher = get_class('voucher.models', 'Voucher')
9
 Voucher = get_class('voucher.models', 'Voucher')
10
 OrderCreator = get_class('order.utils', 'OrderCreator')
10
 OrderCreator = get_class('order.utils', 'OrderCreator')
11
-OrderTotalCalculator = get_class('checkout.calculators', 'OrderTotalCalculator')
11
+OrderTotalCalculator = get_class('checkout.calculators',
12
+                                 'OrderTotalCalculator')
12
 Partner, StockRecord = get_classes('partner.models', ('Partner',
13
 Partner, StockRecord = get_classes('partner.models', ('Partner',
13
                                                       'StockRecord'))
14
                                                       'StockRecord'))
14
 (ProductClass,
15
 (ProductClass,
26
                                          'Condition', 'Benefit'))
27
                                          'Condition', 'Benefit'))
27
 
28
 
28
 
29
 
29
-def create_product(price=None, title="Dummy title", product_class="Dummy item class",
30
+def create_product(price=None, title="Dummy title",
31
+                   product_class="Dummy item class",
30
         partner="Dummy partner", partner_sku=None, upc=None, num_in_stock=10,
32
         partner="Dummy partner", partner_sku=None, upc=None, num_in_stock=10,
31
         attributes=None, **kwargs):
33
         attributes=None, **kwargs):
32
     """
34
     """
33
     Helper method for creating products that are used in tests.
35
     Helper method for creating products that are used in tests.
34
     """
36
     """
35
-    ic,_ = ProductClass._default_manager.get_or_create(name=product_class)
37
+    ic, __ = ProductClass._default_manager.get_or_create(name=product_class)
36
     item = Product._default_manager.create(title=title, product_class=ic,
38
     item = Product._default_manager.create(title=title, product_class=ic,
37
                                            upc=upc, **kwargs)
39
                                            upc=upc, **kwargs)
38
     if price is not None or partner_sku or num_in_stock is not None:
40
     if price is not None or partner_sku or num_in_stock is not None:
41
         if price is None:
43
         if price is None:
42
             price = D('10.00')
44
             price = D('10.00')
43
 
45
 
44
-        partner,_ = Partner._default_manager.get_or_create(name=partner)
46
+        partner, __ = Partner._default_manager.get_or_create(name=partner)
45
         StockRecord._default_manager.create(product=item, partner=partner,
47
         StockRecord._default_manager.create(product=item, partner=partner,
46
                                             partner_sku=partner_sku,
48
                                             partner_sku=partner_sku,
47
-                                            price_excl_tax=price, num_in_stock=num_in_stock)
49
+                                            price_excl_tax=price,
50
+                                            num_in_stock=num_in_stock)
48
     if attributes:
51
     if attributes:
49
         for key, value in attributes.items():
52
         for key, value in attributes.items():
50
-            attr,_ = ProductAttribute.objects.get_or_create(name=key, code=key)
51
-            ProductAttributeValue.objects.create(product=item, attribute=attr, value=value)
53
+            attr, __ = ProductAttribute.objects.get_or_create(
54
+                name=key, code=key)
55
+            ProductAttributeValue.objects.create(
56
+                product=item, attribute=attr, value=value)
52
 
57
 
53
     return item
58
     return item
54
 
59
 
55
 
60
 
56
-def create_order(number=None, basket=None, user=None, shipping_address=None, shipping_method=None,
57
-        billing_address=None, total_incl_tax=None, total_excl_tax=None, **kwargs):
61
+def create_order(number=None, basket=None, user=None, shipping_address=None,
62
+                 shipping_method=None, billing_address=None,
63
+                 total_incl_tax=None, total_excl_tax=None, **kwargs):
58
     """
64
     """
59
     Helper method for creating an order for testing
65
     Helper method for creating an order for testing
60
     """
66
     """
87
     """
93
     """
88
     Helper method for creating an offer
94
     Helper method for creating an offer
89
     """
95
     """
90
-    range = Range.objects.create(name="All products range", includes_all_products=True)
96
+    range = Range.objects.create(name="All products range",
97
+                                 includes_all_products=True)
91
     condition = Condition.objects.create(range=range,
98
     condition = Condition.objects.create(range=range,
92
                                          type=Condition.COUNT,
99
                                          type=Condition.COUNT,
93
                                          value=1)
100
                                          value=1)
98
         name='Dummy offer',
105
         name='Dummy offer',
99
         offer_type='Site',
106
         offer_type='Site',
100
         condition=condition,
107
         condition=condition,
101
-        benefit=benefit
102
-    )
108
+        benefit=benefit)
103
     return offer
109
     return offer
104
 
110
 
105
 
111
 
111
         name="Test voucher",
117
         name="Test voucher",
112
         code="test",
118
         code="test",
113
         start_date=datetime.date.today(),
119
         start_date=datetime.date.today(),
114
-        end_date=datetime.date.today() + datetime.timedelta(days=12)
115
-    )
120
+        end_date=datetime.date.today() + datetime.timedelta(days=12))
116
     voucher.offers.add(create_offer())
121
     voucher.offers.add(create_offer())
117
     return voucher
122
     return voucher

+ 4
- 2
oscar/views/generic.py View File

15
         if 'action' in self.request.POST:
15
         if 'action' in self.request.POST:
16
             model = self.get_object()
16
             model = self.get_object()
17
             # The do_* method is required to do what it needs to with the model
17
             # The do_* method is required to do what it needs to with the model
18
-            # it is passed, and then to assign the HTTP response to self.response.
18
+            # it is passed, and then to assign the HTTP response to
19
+            # self.response.
19
             method_name = "do_%s" % self.request.POST['action'].lower()
20
             method_name = "do_%s" % self.request.POST['action'].lower()
20
             if hasattr(self, method_name):
21
             if hasattr(self, method_name):
21
                 getattr(self, method_name)(model)
22
                 getattr(self, method_name)(model)
70
         ids = map(int, ids)
71
         ids = map(int, ids)
71
         if not ids:
72
         if not ids:
72
             messages.error(
73
             messages.error(
73
-                self.request, _("You need to select some %ss") % self.get_checkbox_object_name())
74
+                self.request,
75
+                _("You need to select some %ss") % self.get_checkbox_object_name())
74
             return HttpResponseRedirect(self.get_error_url(request))
76
             return HttpResponseRedirect(self.get_error_url(request))
75
 
77
 
76
         objects = self.get_objects(ids)
78
         objects = self.get_objects(ids)

Loading…
Cancel
Save