mirror of
https://github.com/ae-utbm/sith.git
synced 2024-12-22 07:41:14 +00:00
Fix tests
This commit is contained in:
parent
e5c085c706
commit
b4c3f2f4dc
@ -2,32 +2,41 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
import accounting.models
|
||||
from django.conf import settings
|
||||
import accounting.models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('club', '__first__'),
|
||||
('core', '0001_initial'),
|
||||
('club', '0001_initial'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='AccountingType',
|
||||
fields=[
|
||||
('id', models.AutoField(primary_key=True, auto_created=True, serialize=False, verbose_name='ID')),
|
||||
('code', models.CharField(max_length=16, verbose_name='code')),
|
||||
('label', models.CharField(max_length=60, verbose_name='label')),
|
||||
('movement_type', models.CharField(max_length=12, verbose_name='movement type', choices=[('credit', 'Credit'), ('debit', 'Debit'), ('neutral', 'Neutral')])),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='BankAccount',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, verbose_name='ID', serialize=False, primary_key=True)),
|
||||
('name', models.CharField(verbose_name='name', max_length=30)),
|
||||
('rib', models.CharField(verbose_name='rib', max_length=255)),
|
||||
('number', models.CharField(verbose_name='account number', max_length=255)),
|
||||
('id', models.AutoField(primary_key=True, auto_created=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.CharField(max_length=30, verbose_name='name')),
|
||||
('rib', models.CharField(max_length=255, verbose_name='rib', blank=True)),
|
||||
('number', models.CharField(max_length=255, verbose_name='account number', blank=True)),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='ClubAccount',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, verbose_name='ID', serialize=False, primary_key=True)),
|
||||
('name', models.CharField(verbose_name='name', max_length=30)),
|
||||
('id', models.AutoField(primary_key=True, auto_created=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.CharField(max_length=30, verbose_name='name')),
|
||||
('bank_account', models.ForeignKey(related_name='club_accounts', to='accounting.BankAccount')),
|
||||
('club', models.OneToOneField(related_name='club_accounts', to='club.Club')),
|
||||
],
|
||||
@ -35,8 +44,8 @@ class Migration(migrations.Migration):
|
||||
migrations.CreateModel(
|
||||
name='Customer',
|
||||
fields=[
|
||||
('user', models.OneToOneField(primary_key=True, to=settings.AUTH_USER_MODEL, serialize=False)),
|
||||
('account_id', models.CharField(verbose_name='account id', unique=True, max_length=10)),
|
||||
('user', models.OneToOneField(to=settings.AUTH_USER_MODEL, primary_key=True, serialize=False)),
|
||||
('account_id', models.CharField(max_length=10, verbose_name='account id', unique=True)),
|
||||
],
|
||||
options={
|
||||
'verbose_name_plural': 'customers',
|
||||
@ -46,10 +55,10 @@ class Migration(migrations.Migration):
|
||||
migrations.CreateModel(
|
||||
name='GeneralJournal',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, verbose_name='ID', serialize=False, primary_key=True)),
|
||||
('id', models.AutoField(primary_key=True, auto_created=True, serialize=False, verbose_name='ID')),
|
||||
('start_date', models.DateField(verbose_name='start date')),
|
||||
('end_date', models.DateField(default=None, verbose_name='end date', null=True, blank=True)),
|
||||
('name', models.CharField(verbose_name='name', max_length=30)),
|
||||
('end_date', models.DateField(null=True, default=None, verbose_name='end date', blank=True)),
|
||||
('name', models.CharField(max_length=30, verbose_name='name')),
|
||||
('closed', models.BooleanField(default=False, verbose_name='is closed')),
|
||||
('club_account', models.ForeignKey(related_name='journals', to='accounting.ClubAccount')),
|
||||
],
|
||||
@ -57,36 +66,42 @@ class Migration(migrations.Migration):
|
||||
migrations.CreateModel(
|
||||
name='Operation',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, verbose_name='ID', serialize=False, primary_key=True)),
|
||||
('name', models.CharField(verbose_name='name', max_length=100)),
|
||||
('id', models.AutoField(primary_key=True, auto_created=True, serialize=False, verbose_name='ID')),
|
||||
('date', models.DateField(verbose_name='date')),
|
||||
('remark', models.TextField(max_length=255, verbose_name='remark')),
|
||||
('mode', models.CharField(max_length=255, verbose_name='payment method', choices=[('cheque', 'Chèque'), ('cash', 'Espèce'), ('transfert', 'Virement'), ('card', 'Carte banquaire')])),
|
||||
('cheque_number', models.IntegerField(verbose_name='cheque number')),
|
||||
('invoice', models.FileField(null=True, upload_to='invoices', blank=True)),
|
||||
('done', models.BooleanField(default=False, verbose_name='is done')),
|
||||
('journal', models.ForeignKey(related_name='invoices', to='accounting.GeneralJournal')),
|
||||
('type', models.ForeignKey(related_name='operations', to='accounting.AccountingType')),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Product',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, verbose_name='ID', serialize=False, primary_key=True)),
|
||||
('name', models.CharField(verbose_name='name', max_length=30)),
|
||||
('description', models.TextField(blank=True, verbose_name='description')),
|
||||
('code', models.CharField(verbose_name='code', max_length=10)),
|
||||
('purchase_price', accounting.models.CurrencyField(verbose_name='purchase price', decimal_places=2, max_digits=12)),
|
||||
('selling_price', accounting.models.CurrencyField(verbose_name='selling price', decimal_places=2, max_digits=12)),
|
||||
('special_selling_price', accounting.models.CurrencyField(verbose_name='special selling price', decimal_places=2, max_digits=12)),
|
||||
('icon', models.ImageField(blank=True, null=True, upload_to='products')),
|
||||
('id', models.AutoField(primary_key=True, auto_created=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.CharField(max_length=30, verbose_name='name')),
|
||||
('description', models.TextField(verbose_name='description', blank=True)),
|
||||
('code', models.CharField(max_length=10, verbose_name='code')),
|
||||
('purchase_price', accounting.models.CurrencyField(max_digits=12, decimal_places=2, verbose_name='purchase price')),
|
||||
('selling_price', accounting.models.CurrencyField(max_digits=12, decimal_places=2, verbose_name='selling price')),
|
||||
('special_selling_price', accounting.models.CurrencyField(max_digits=12, decimal_places=2, verbose_name='special selling price')),
|
||||
('icon', models.ImageField(null=True, upload_to='products', blank=True)),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='ProductType',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, verbose_name='ID', serialize=False, primary_key=True)),
|
||||
('name', models.CharField(verbose_name='name', max_length=30)),
|
||||
('description', models.TextField(blank=True, verbose_name='description', null=True)),
|
||||
('icon', models.ImageField(blank=True, null=True, upload_to='products')),
|
||||
('id', models.AutoField(primary_key=True, auto_created=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.CharField(max_length=30, verbose_name='name')),
|
||||
('description', models.TextField(null=True, verbose_name='description', blank=True)),
|
||||
('icon', models.ImageField(null=True, upload_to='products', blank=True)),
|
||||
],
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='product',
|
||||
name='product_type',
|
||||
field=models.ForeignKey(blank=True, related_name='products', null=True, to='accounting.ProductType'),
|
||||
field=models.ForeignKey(null=True, to='accounting.ProductType', related_name='products', blank=True),
|
||||
),
|
||||
]
|
||||
|
@ -1,24 +0,0 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('accounting', '0001_initial'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='bankaccount',
|
||||
name='number',
|
||||
field=models.CharField(max_length=255, blank=True, verbose_name='account number'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='bankaccount',
|
||||
name='rib',
|
||||
field=models.CharField(max_length=255, blank=True, verbose_name='rib'),
|
||||
),
|
||||
]
|
@ -40,7 +40,6 @@ Welcome to the wiki page!
|
||||
|
||||
# Here we add a lot of test datas, that are not necessary for the Sith, but that provide a basic development environment
|
||||
if not options['prod']:
|
||||
print("Dev mode, adding some test data")
|
||||
# Adding user Skia
|
||||
s = User(username='skia', last_name="Kia", first_name="S'",
|
||||
email="skia@git.an",
|
||||
@ -95,14 +94,14 @@ Cette page vise à documenter la syntaxe *Markdown* utilisée sur le site.
|
||||
guyut = Club(name="Guy'UT", unix_name="guyut",
|
||||
address="42 de la Boustifaille", parent=ae)
|
||||
guyut.save()
|
||||
troll = Club(name="Troll Penché", unix_name="troll",
|
||||
address="Terre Du Milieu", parent=ae)
|
||||
troll.save()
|
||||
Club(name="Woenzel'UT", unix_name="woenzel",
|
||||
address="Woenzel", parent=guyut).save()
|
||||
Club(name="BdF", unix_name="bdf",
|
||||
address="Guyéuéyuéyuyé").save()
|
||||
Membership(user=s, club=ae, role=3, description="").save()
|
||||
troll = Club(name="Troll Penché", unix_name="troll",
|
||||
address="Terre Du Milieu", parent=ae)
|
||||
troll.save()
|
||||
|
||||
# Accounting test values:
|
||||
Customer(user=s, account_id="6568j").save()
|
||||
|
@ -128,24 +128,25 @@ class User(AbstractBaseUser, PermissionsMixin):
|
||||
if group_name == settings.SITH_GROUPS['public']['name']:
|
||||
return True
|
||||
if group_name == settings.SITH_MAIN_MEMBERS_GROUP: # We check the subscription if asked
|
||||
try: # TODO: change for a test in settings.INSTALLED_APP
|
||||
if 'subscription' in settings.INSTALLED_APPS:
|
||||
from subscription import Subscriber
|
||||
s = Subscriber.objects.filter(pk=self.pk).first()
|
||||
if s is not None and s.is_subscribed():
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
except Exception as e:
|
||||
print(e)
|
||||
else:
|
||||
return False
|
||||
if group_name[-6:] == settings.SITH_BOARD_SUFFIX:
|
||||
try: # TODO: change for a test in settings.INSTALLED_APP
|
||||
if 'club' in settings.INSTALLED_APPS:
|
||||
from club.models import Club
|
||||
name = group_name[:-6]
|
||||
c = Club.objects.filter(unix_name=name).first()
|
||||
return c.get_membership_for(self).role >= 2
|
||||
except Exception as e:
|
||||
print(e)
|
||||
mem = c.get_membership_for(self)
|
||||
if mem:
|
||||
return mem.role >= 2
|
||||
return False
|
||||
else:
|
||||
return False
|
||||
return self.groups.filter(name=group_name).exists()
|
||||
|
||||
|
@ -8,21 +8,21 @@ class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('club', '0001_initial'),
|
||||
('accounting', '0001_initial'),
|
||||
('core', '0001_initial'),
|
||||
('accounting', '0001_initial'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='Counter',
|
||||
fields=[
|
||||
('id', models.AutoField(primary_key=True, serialize=False, verbose_name='ID', auto_created=True)),
|
||||
('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True, serialize=False)),
|
||||
('name', models.CharField(max_length=30, verbose_name='name')),
|
||||
('type', models.CharField(max_length=255, verbose_name='subscription type', choices=[('BAR', 'Bar'), ('OFFICE', 'Office')])),
|
||||
('club', models.ForeignKey(to='club.Club', related_name='counters')),
|
||||
('edit_groups', models.ManyToManyField(to='core.Group', blank=True, related_name='editable_counters')),
|
||||
('products', models.ManyToManyField(to='accounting.Product', blank=True, related_name='counters')),
|
||||
('view_groups', models.ManyToManyField(to='core.Group', blank=True, related_name='viewable_counters')),
|
||||
('edit_groups', models.ManyToManyField(blank=True, related_name='editable_counters', to='core.Group')),
|
||||
('products', models.ManyToManyField(blank=True, related_name='counters', to='accounting.Product')),
|
||||
('view_groups', models.ManyToManyField(blank=True, related_name='viewable_counters', to='core.Group')),
|
||||
],
|
||||
),
|
||||
]
|
||||
|
Loading…
Reference in New Issue
Block a user