Ejemplo n.º 1
0
    def setUp(self):
        """ initialisatie van de test case """

        self.account_admin = self.e2e_create_account_admin()
        self.account_admin.is_BB = True
        self.account_admin.save()

        sporter = Sporter(lid_nr=100000,
                          voornaam='Ad',
                          achternaam='de Admin',
                          geboorte_datum='1966-06-06',
                          sinds_datum='2020-02-02',
                          account=self.account_admin)
        sporter.save()

        # maak een test vereniging
        self.nhbver1 = NhbVereniging(ver_nr=1000,
                                     naam="Grote Club",
                                     regio=NhbRegio.objects.get(regio_nr=112))
        self.nhbver1.save()

        self.functie_hwl = maak_functie('HWL Ver 1000', 'HWL')
        self.functie_hwl.nhb_ver = self.nhbver1
        self.functie_hwl.accounts.add(self.account_admin)
        self.functie_hwl.save()

        self.nhbver2 = NhbVereniging(ver_nr=1001,
                                     naam="Kleine Club",
                                     regio=NhbRegio.objects.get(regio_nr=112))
        self.nhbver2.save()
Ejemplo n.º 2
0
    def _prep_beheerder_lid(self, voornaam):
        lid_nr = self._next_lid_nr
        self._next_lid_nr += 1

        sporter = Sporter(
                    lid_nr=lid_nr,
                    geslacht="M",
                    voornaam=voornaam,
                    achternaam="Tester",
                    email=voornaam.lower() + "@nhb.test",
                    geboorte_datum=datetime.date(year=1972, month=3, day=4),
                    sinds_datum=datetime.date(year=2010, month=11, day=12),
                    bij_vereniging=self.nhbver_101)
        sporter.save()

        return self.e2e_create_account(lid_nr, sporter.email, sporter.voornaam, accepteer_vhpg=True)
Ejemplo n.º 3
0
    def setUp(self):
        """ initialisatie van de test case """
        self.account_normaal = self.e2e_create_account('normaal', '*****@*****.**', 'Normaal')
        self.account_100001 = self.e2e_create_account('100001', '*****@*****.**', 'Norma de Schutter')

        self.sporter_100001 = Sporter(lid_nr=100001,
                                      voornaam='Norma',
                                      achternaam='de Schutter',
                                      account=self.account_100001,
                                      geboorte_datum='1980-01-08',
                                      sinds_datum='2008-01-08')
        self.sporter_100001.save()

        # maak nog een sporter aan die niet gekoppeld is aan een account
        self.sporter_100002 = Sporter(lid_nr=100002,
                                      voornaam='Andere',
                                      achternaam='Schutter',
                                      account=None,
                                      geboorte_datum='1980-01-09',
                                      sinds_datum='2008-01-09')
        self.sporter_100002.save()
Ejemplo n.º 4
0
    def setUp(self):

        self.lid_nr = 123456

        now = datetime.datetime.now()

        self.sporter = sporter = Sporter(
                                    lid_nr=self.lid_nr,
                                    voornaam='Tester',
                                    achternaam='De tester',
                                    unaccented_naam='test',
                                    email='*****@*****.**',
                                    geboorte_datum=datetime.date(year=1972, month=3, day=4),
                                    sinds_datum=datetime.date(year=2010, month=11, day=12),
                                    geslacht='M',
                                    # bij_vereniging
                                    lid_tot_einde_jaar=now.year)
        self.account = self.e2e_create_account(self.lid_nr, sporter.email, sporter.voornaam)
        sporter.account = self.account
        sporter.save()
Ejemplo n.º 5
0
    def _maak_many_histcomp(self):
        # maak veel histcomp records aan
        # zodat de AG-vaststellen bulk-create limiet van 500 gehaald wordt

        lid_nr = 190000
        records = list()
        sporters = list()

        geboorte_datum = datetime.date(year=1970, month=3, day=4)
        sinds_datum = datetime.date(year=2001, month=11, day=12)

        for lp in range(550):
            sporter = Sporter(lid_nr=lid_nr + lp,
                              geslacht='V',
                              geboorte_datum=geboorte_datum,
                              sinds_datum=sinds_datum)
            sporters.append(sporter)

            rec = HistCompetitieIndividueel(histcompetitie=self.histcomp,
                                            boogtype='R',
                                            rank=lp,
                                            schutter_nr=sporter.lid_nr,
                                            vereniging_nr=1000,
                                            score1=1,
                                            score2=2,
                                            score3=3,
                                            score4=4,
                                            score5=5,
                                            score6=6,
                                            score7=250,
                                            totaal=270,
                                            gemiddelde=5.5)
            records.append(rec)
        # for

        Sporter.objects.bulk_create(sporters)
        HistCompetitieIndividueel.objects.bulk_create(records)
Ejemplo n.º 6
0
    def setUp(self):
        """ initialisatie van de test case """

        # NhbLib
        sporter = Sporter()
        sporter.lid_nr = 123457
        sporter.voornaam = 'Petra'
        sporter.achternaam = 'Schutter'
        sporter.email = '*****@*****.**'
        sporter.geboorte_datum = parse_date('1970-01-30')
        sporter.woon_straatnaam = 'Arnhem'
        sporter.geslacht = 'V'
        sporter.sinds_datum = parse_date("1991-02-05") # Y-M-D
        sporter.save()

        # Record 42
        rec = IndivRecord()
        rec.volg_nr = 42
        rec.discipline = DISCIPLINE[0][0]   # OD
        rec.soort_record = 'Test record'
        rec.geslacht = GESLACHT[0][0]   # M
        rec.leeftijdscategorie = LEEFTIJDSCATEGORIE[0][0]   # M
        rec.materiaalklasse = MATERIAALKLASSE[0][0]     # R
        rec.sporter = sporter
        rec.naam = 'Top Schutter'
        rec.datum = parse_date('2017-08-27')
        rec.plaats = 'Papendal'
        rec.land = 'Nederland'
        rec.score = 1234
        rec.max_score = 5678
        rec.x_count = 56
        rec.save()
Ejemplo n.º 7
0
    def setUp(self):
        """ initialisatie van de test case """

        self.account_admin = self.e2e_create_account_admin(accepteer_vhpg=False)
        self.account_normaal = self.e2e_create_account('normaal', '*****@*****.**', 'Normaal')
        self.account_geenlid = self.e2e_create_account('geenlid', '*****@*****.**', 'Geen')

        regio_111 = NhbRegio.objects.get(regio_nr=111)

        self.functie_rcl = maak_functie("RCL test", "RCL")
        self.functie_rcl.nhb_regio = regio_111
        self.functie_rcl.save()

        # maak een test vereniging
        ver = NhbVereniging()
        ver.naam = "Grote Club"
        ver.ver_nr = "1000"
        ver.regio = regio_111
        # secretaris kan nog niet ingevuld worden
        ver.save()

        self.functie_sec = maak_functie("SEC test", "SEC")
        self.functie_sec.nhb_ver = ver
        self.functie_sec.save()

        self.functie_hwl = maak_functie("HWL test", "HWL")
        self.functie_hwl.nhb_ver = ver
        self.functie_hwl.save()

        self.functie_wl = maak_functie("WL test", "WL")
        self.functie_wl.nhb_ver = ver
        self.functie_wl.save()

        # maak een test lid aan
        sporter = Sporter()
        sporter.lid_nr = 100001
        sporter.geslacht = "M"
        sporter.voornaam = "Ramon"
        sporter.achternaam = "de Tester"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.account = self.account_normaal
        sporter.email = sporter.account.email
        sporter.save()

        # maak een test vereniging zonder HWL rol
        ver2 = NhbVereniging()
        ver2.naam = "Grote Club"
        ver2.ver_nr = "1001"
        ver2.regio = regio_111
        # secretaris kan nog niet ingevuld worden
        ver2.save()

        self.functie_bko = maak_functie("BKO test", "BKO")

        self.functie_rko = maak_functie("RKO test", "RKO")
        self.functie_rko.nhb_rayon = NhbRayon.objects.get(rayon_nr=1)
        self.functie_rko.save()
Ejemplo n.º 8
0
    def setUp(self):
        """ initialisatie van de test case """
        self.account_normaal = self.e2e_create_account('normaal',
                                                       '*****@*****.**',
                                                       'Normaal')

        # maak een test lid aan
        sporter = Sporter()
        sporter.lid_nr = 100001
        sporter.geslacht = "M"
        sporter.voornaam = "Ramon"
        sporter.achternaam = "de Tester"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.save()

        # maak een sporterboog aan
        self.sporterboog = SporterBoog(
            boogtype=BoogType.objects.get(afkorting='R'), sporter=sporter)
        self.sporterboog.save()
Ejemplo n.º 9
0
class TestOverigActiviteit(E2EHelpers, TestCase):

    """ tests voor de Overig applicatie; module Account Activiteit """

    test_after = ('Account.test_login',)

    url_activiteit = '/overig/activiteit/'

    testdata = None

    @classmethod
    def setUpTestData(cls):
        cls.testdata = testdata.TestData()
        cls.testdata.maak_accounts()

    def setUp(self):
        """ initialisatie van de test case """
        self.account_normaal = self.e2e_create_account('normaal', '*****@*****.**', 'Normaal')
        self.account_100001 = self.e2e_create_account('100001', '*****@*****.**', 'Norma de Schutter')

        self.sporter_100001 = Sporter(lid_nr=100001,
                                      voornaam='Norma',
                                      achternaam='de Schutter',
                                      account=self.account_100001,
                                      geboorte_datum='1980-01-08',
                                      sinds_datum='2008-01-08')
        self.sporter_100001.save()

        # maak nog een sporter aan die niet gekoppeld is aan een account
        self.sporter_100002 = Sporter(lid_nr=100002,
                                      voornaam='Andere',
                                      achternaam='Schutter',
                                      account=None,
                                      geboorte_datum='1980-01-09',
                                      sinds_datum='2008-01-09')
        self.sporter_100002.save()

    def test_anon(self):
        # geen inlog = geen toegang
        self.e2e_logout()
        with self.assert_max_queries(20):
            resp = self.client.get(self.url_activiteit)
        self.assert403(resp)

    def test_normaal(self):
        # inlog maar geen rechten
        self.e2e_login(self.account_normaal)
        with self.assert_max_queries(20):
            resp = self.client.get(self.url_activiteit)
        self.assert403(resp)

    def test_bb(self):
        # inlog met rechten
        self.account_normaal.is_BB = True
        self.account_normaal.save()
        self.e2e_account_accepteert_vhpg(self.account_normaal)
        self.e2e_login_and_pass_otp(self.account_normaal)
        self.e2e_wisselnaarrol_bb()
        self.e2e_check_rol('BB')

        with self.assert_max_queries(20):
            resp = self.client.get(self.url_activiteit)
        self.assertEqual(resp.status_code, 200)  # 200 = OK
        self.assert_html_ok(resp)
        self.assert_template_used(resp, ('overig/activiteit.dtl', 'plein/site_layout.dtl'))

        self.e2e_assert_other_http_commands_not_supported(self.url_activiteit)

    def test_zoek(self):
        self.e2e_login_and_pass_otp(self.testdata.account_admin)
        self.e2e_wisselnaarrol_bb()
        self.e2e_check_rol('BB')

        # te korte zoekterm
        with self.assert_max_queries(20):
            resp = self.client.get(self.url_activiteit, {'zoekterm': 'x'})
        self.assertEqual(resp.status_code, 200)  # 200 = OK
        self.assert_html_ok(resp)
        self.assert_template_used(resp, ('overig/activiteit.dtl', 'plein/site_layout.dtl'))

        # erg lange zoekterm
        with self.assert_max_queries(20):
            resp = self.client.get(self.url_activiteit, {'zoekterm': 'ramon' * 50})
        self.assertEqual(resp.status_code, 200)  # 200 = OK
        self.assert_html_ok(resp)
        self.assert_template_used(resp, ('overig/activiteit.dtl', 'plein/site_layout.dtl'))

        # zoek op naam, 0 hits want geen sporter
        with self.assert_max_queries(20):
            resp = self.client.get(self.url_activiteit, {'zoekterm': 'normaal'})
        self.assertEqual(resp.status_code, 200)  # 200 = OK
        self.assert_html_ok(resp)
        self.assert_template_used(resp, ('overig/activiteit.dtl', 'plein/site_layout.dtl'))

        # zoek op naam, 1 hit
        with self.assert_max_queries(20):
            resp = self.client.get(self.url_activiteit, {'zoekterm': 'norm'})
        self.assertEqual(resp.status_code, 200)  # 200 = OK
        self.assert_html_ok(resp)
        self.assert_template_used(resp, ('overig/activiteit.dtl', 'plein/site_layout.dtl'))

        # zoek op naam, 1 hit
        with self.assert_max_queries(20):
            resp = self.client.get(self.url_activiteit, {'zoekterm': 'norm'})
        self.assertEqual(resp.status_code, 200)  # 200 = OK
        self.assert_html_ok(resp)
        self.assert_template_used(resp, ('overig/activiteit.dtl', 'plein/site_layout.dtl'))

        # maak wat wijzigingen
        email = self.account_100001.accountemail_set.all()[0]
        email.email_is_bevestigd = False
        email.save()

        self.e2e_account_accepteert_vhpg(self.account_100001)

        self.account_100001 = Account.objects.get(pk=self.account_100001.pk)
        self.account_100001.otp_is_actief = False
        self.account_100001.save()

        # zoek op nhb nummer  --> geen functies, dus geen 2FA nodig
        with self.assert_max_queries(20):
            resp = self.client.get(self.url_activiteit, {'zoekterm': '100001'})
        self.assertEqual(resp.status_code, 200)  # 200 = OK
        self.assert_html_ok(resp)
        self.assert_template_used(resp, ('overig/activiteit.dtl', 'plein/site_layout.dtl'))

        # maak nog wat wijzigingen
        functie = maak_functie('Test functie', 'HWL')
        functie.accounts.add(self.account_100001)

        # zoek op nhb nummer --> wel functie, dus wel 2FA nodig
        with self.assert_max_queries(21):
            resp = self.client.get(self.url_activiteit, {'zoekterm': '100001'})
        self.assertEqual(resp.status_code, 200)  # 200 = OK
        self.assert_html_ok(resp)
        self.assert_template_used(resp, ('overig/activiteit.dtl', 'plein/site_layout.dtl'))

        vhpg = self.account_100001.vhpg
        vhpg.acceptatie_datum -= datetime.timedelta(days=365)
        vhpg.save()

        # zoek op naam, 2 hits --> VHPG verlopen
        with self.assert_max_queries(20):
            resp = self.client.get(self.url_activiteit, {'zoekterm': 'schutter'})
        self.assertEqual(resp.status_code, 200)  # 200 = OK
        self.assert_html_ok(resp)
        self.assert_template_used(resp, ('overig/activiteit.dtl', 'plein/site_layout.dtl'))

        # maak nog wat wijzigingen
        vhpg.delete()

        # zoek op nhb nummer --> geen VHPG record
        with self.assert_max_queries(21):
            resp = self.client.get(self.url_activiteit, {'zoekterm': '100001'})
        self.assertEqual(resp.status_code, 200)  # 200 = OK
        self.assert_html_ok(resp)
        self.assert_template_used(resp, ('overig/activiteit.dtl', 'plein/site_layout.dtl'))

    def test_hulp(self):
        self.e2e_login_and_pass_otp(self.testdata.account_admin)
        self.e2e_wisselnaarrol_bb()
        self.e2e_check_rol('BB')

        functie = maak_functie('Test functie 1', 'HWL')
        functie.accounts.add(self.account_100001)

        functie = maak_functie('Test functie 2', 'WL')
        functie.accounts.add(self.account_100001)

        with self.assert_max_queries(20):
            resp = self.client.get(self.url_activiteit)
        self.assertEqual(resp.status_code, 200)  # 200 = OK
        self.assert_html_ok(resp)
        self.assert_template_used(resp, ('overig/activiteit.dtl', 'plein/site_layout.dtl'))

        self.account_100001.otp_is_actief = False
        self.account_100001.save()

        with self.assert_max_queries(20):
            resp = self.client.get(self.url_activiteit)
        self.assertEqual(resp.status_code, 200)  # 200 = OK
        self.assert_html_ok(resp)
        self.assert_template_used(resp, ('overig/activiteit.dtl', 'plein/site_layout.dtl'))

        # maak dat het account geen hulp nodig heeft: 2FA gekoppeld en VHPG geaccepteerd
        self.account_100001.otp_is_actief = True
        self.account_100001.save()

        self.e2e_account_accepteert_vhpg(self.account_100001)

        with self.assert_max_queries(20):
            resp = self.client.get(self.url_activiteit)
        self.assertEqual(resp.status_code, 200)  # 200 = OK
        self.assert_html_ok(resp)
        self.assert_template_used(resp, ('overig/activiteit.dtl', 'plein/site_layout.dtl'))
Ejemplo n.º 10
0
    def _doe_inschrijven(self, comp):

        url_inschrijven = '/bondscompetities/deelnemen/leden-aanmelden/%s/' % comp.pk

        # meld een bak leden aan voor de competitie
        self.e2e_wisselnaarrol_bb()

        # klassengrenzen vaststellen
        url_klassengrenzen = '/bondscompetities/%s/klassengrenzen/vaststellen/'
        with self.assert_max_queries(86):
            resp = self.client.post(url_klassengrenzen % self.comp_18.pk)
            self.assert_is_redirect_not_plein(resp)  # check for success
        with self.assert_max_queries(86):
            resp = self.client.post(url_klassengrenzen % self.comp_25.pk)
            self.assert_is_redirect_not_plein(resp)  # check for success
        # nu in fase A2

        # zet de datum voor inschrijven op vandaag
        for comp in Competitie.objects.filter(is_afgesloten=False):
            zet_competitie_fase(comp, 'B')
        # for

        lid_nr = 110000
        recurve_boog_pk = BoogType.objects.get(afkorting='R').pk
        compound_boog_pk = BoogType.objects.get(afkorting='C').pk
        barebow_boog_pk = BoogType.objects.get(afkorting='BB').pk

        # doorloop de 2 verenigingen in deze regio
        for nhb_ver in NhbVereniging.objects.filter(regio=self.regio_101):
            # wordt HWL om voorkeuren aan te kunnen passen en in te kunnen schrijven
            functie_hwl = nhb_ver.functie_set.filter(rol='HWL').all()[0]
            self.e2e_wissel_naar_functie(functie_hwl)

            post_params = dict()

            # maak 3 leden aan
            for lp in range(3):
                lid_nr += 1
                sporter = Sporter()
                sporter.lid_nr = lid_nr
                sporter.voornaam = "Lid %s" % lid_nr
                sporter.achternaam = "de Tester"
                sporter.bij_vereniging = nhb_ver
                sporter.is_actief_lid = True
                if barebow_boog_pk:
                    sporter.geboorte_datum = datetime.date(2019-12, 1, 1)   # aspirant
                else:
                    sporter.geboorte_datum = datetime.date(2000, 1, 1)      # senior
                sporter.sinds_datum = datetime.date(2010, 1, 1)
                sporter.geslacht = 'M'
                sporter.save()

                # haal de sporter voorkeuren op, zodat de sporterboog records aangemaakt worden
                url_voorkeuren = '/sporter/voorkeuren/%s/' % lid_nr
                with self.assert_max_queries(20):
                    resp = self.client.get(url_voorkeuren)
                self.assertEqual(resp.status_code, 200)     # 200 = OK

                # zet de recurve boog aan
                if lp == 1:
                    # zet de DT voorkeur aan voor een paar sporters
                    with self.assert_max_queries(20):
                        resp = self.client.post(url_voorkeuren, {'sporter_pk': lid_nr,
                                                                 'schiet_R': 'on',
                                                                 'voorkeur_eigen_blazoen': 'on'})
                    # onthoud deze sporterboog om straks in bulk aan te melden
                    # 'lid_NNNNNN_boogtype_MM'
                    post_params['lid_%s_boogtype_%s' % (lid_nr, recurve_boog_pk)] = 'on'
                elif lp == 2:
                    with self.assert_max_queries(20):
                        resp = self.client.post(url_voorkeuren, {'sporter_pk': lid_nr,
                                                                 'schiet_C': 'on'})
                    post_params['lid_%s_boogtype_%s' % (lid_nr, compound_boog_pk)] = 'on'
                elif barebow_boog_pk:
                    with self.assert_max_queries(20):
                        resp = self.client.post(url_voorkeuren, {'sporter_pk': lid_nr,
                                                                 'schiet_BB': 'on'})
                    post_params['lid_%s_boogtype_%s' % (lid_nr, barebow_boog_pk)] = 'on'
                    barebow_boog_pk = None
                else:
                    with self.assert_max_queries(20):
                        resp = self.client.post(url_voorkeuren, {'sporter_pk': lid_nr,
                                                                 'schiet_R': 'on'})
                    post_params['lid_%s_boogtype_%s' % (lid_nr, recurve_boog_pk)] = 'on'

                self.assert_is_redirect_not_plein(resp)         # check for success
            # for

            # schrijf in voor de competitie
            with self.assert_max_queries(23):
                resp = self.client.post(url_inschrijven, post_params)
            self.assert_is_redirect_not_plein(resp)         # check for success
Ejemplo n.º 11
0
    def setUp(self):
        """ eenmalige setup voor alle tests
            wordt als eerste aangeroepen
        """
        self.regio_111 = NhbRegio.objects.get(regio_nr=111)

        # maak een test vereniging
        ver = NhbVereniging()
        ver.naam = "Grote Club"
        ver.ver_nr = "1000"
        ver.regio = self.regio_111
        # secretaris kan nog niet ingevuld worden
        ver.save()
        self.nhbver1 = ver

        # maak de HWL functie
        self.functie_hwl = maak_functie("HWL test", "HWL")
        self.functie_hwl.nhb_ver = ver
        self.functie_hwl.save()

        self.functie_wl = maak_functie("WL test", "WL")
        self.functie_wl.nhb_ver = ver
        self.functie_wl.save()

        # maak de SEC functie
        self.functie_sec = maak_functie("SEC test", "SEC")
        self.functie_sec.nhb_ver = ver
        self.functie_sec.save()

        # maak het lid aan dat HWL wordt
        sporter = Sporter()
        sporter.lid_nr = 100001
        sporter.geslacht = "M"
        sporter.voornaam = "Ramon"
        sporter.achternaam = "de Tester"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.save()

        self.account_hwl = self.e2e_create_account(sporter.lid_nr, sporter.email, sporter.voornaam, accepteer_vhpg=True)
        self.functie_hwl.accounts.add(self.account_hwl)

        sporter.account = self.account_hwl
        sporter.save()
        self.sporter_100001 = sporter

        jaar = timezone.now().year

        # maak een jeugdlid aan
        sporter = Sporter()
        sporter.lid_nr = 100002
        sporter.geslacht = "V"
        sporter.voornaam = "Ramona"
        sporter.achternaam = "de Jeugdschutter"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=jaar-10, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=jaar-3, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.account = self.e2e_create_account(sporter.lid_nr, sporter.email, sporter.voornaam)  # heeft last_login=None
        sporter.save()
        self.sporter_100002 = sporter

        # maak nog een jeugdlid aan, in dezelfde leeftijdsklasse
        sporter = Sporter()
        sporter.lid_nr = 100012
        sporter.geslacht = "V"
        sporter.voornaam = "Andrea"
        sporter.achternaam = "de Jeugdschutter"
        sporter.email = ""
        sporter.geboorte_datum = datetime.date(year=jaar-10, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=jaar-3, month=10, day=10)
        sporter.bij_vereniging = ver
        sporter.save()
        self.sporter_100012 = sporter

        # maak een jeugd lid aan
        sporter = Sporter()
        sporter.lid_nr = 100004
        sporter.geslacht = "M"
        sporter.voornaam = "Cadet"
        sporter.achternaam = "de Jeugd"
        sporter.email = ""
        sporter.geboorte_datum = datetime.date(year=jaar-13, month=3, day=4)    # 13=asp, maar 14 in 2e jaar competitie!
        sporter.sinds_datum = datetime.date(year=jaar-3, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.save()
        self.sporter_100004 = sporter

        # maak een senior lid aan, om inactief te maken
        sporter = Sporter()
        sporter.lid_nr = 100003
        sporter.geslacht = "V"
        sporter.voornaam = "Ramona"
        sporter.achternaam = "de Testerin"
        sporter.email = ""
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=jaar-4, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.save()
        self.sporter_100003 = sporter

        # maak een lid aan van een andere vereniging
        # maak een test vereniging
        ver2 = NhbVereniging()
        ver2.naam = "Andere Club"
        ver2.ver_nr = "1222"
        ver2.regio = self.regio_111
        # secretaris kan nog niet ingevuld worden
        ver2.save()
        self.nhbver2 = ver2

        # maak een senior lid aan, om inactief te maken
        sporter = Sporter()
        sporter.lid_nr = 102000
        sporter.geslacht = "M"
        sporter.voornaam = "Andre"
        sporter.achternaam = "Club"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=jaar-4, month=11, day=12)
        sporter.bij_vereniging = ver2
        sporter.save()
        self.sporter_102000 = sporter

        self.account_sec = self.e2e_create_account(sporter.lid_nr, sporter.email, sporter.voornaam, accepteer_vhpg=True)
        self.functie_sec.accounts.add(self.account_sec)

        # maak de competitie aan die nodig is voor deze tests
        self._create_histcomp()
        self._create_competitie()

        # fake een deelnemerslijst voor de RK
        deelcomp_rk = DeelCompetitie.objects.get(competitie=self.comp_25,
                                                 laag=LAAG_RK,
                                                 nhb_rayon=self.regio_111.rayon)
        deelcomp_rk.heeft_deelnemerslijst = True
        deelcomp_rk.save()
Ejemplo n.º 12
0
    def setUp(self):
        """ initialisatie van de test case """
        self.account_normaal = self.e2e_create_account('normaal', '*****@*****.**', 'Normaal')
        self.account_100001 = self.e2e_create_account('100001', '*****@*****.**', 'Ramon')

        self.functie_bko = maak_functie('BKO Test', 'BKO')

        self.functie_rko = maak_functie('RKO Test', 'RKO')
        self.functie_rko.nhb_rayon = NhbRayon.objects.get(rayon_nr=3)
        self.functie_rko.save()

        self.functie_rcl = maak_functie('RCL Test', 'RCL')
        self.functie_rcl.nhb_regio = NhbRegio.objects.get(regio_nr=111)
        self.functie_rcl.save()

        # maak een test vereniging
        ver = NhbVereniging()
        ver.naam = "Grote Club"
        ver.ver_nr = "1000"
        ver.regio = NhbRegio.objects.get(regio_nr=111)
        # secretaris kan nog niet ingevuld worden
        ver.save()

        self.functie_sec = maak_functie('Secretaris vereniging 1000', 'SEC')
        self.functie_sec.nhb_ver = ver
        self.functie_sec.save()

        self.functie_hwl = maak_functie('Hoofdwedstrijdleider 1000', 'HWL')
        self.functie_hwl.nhb_ver = ver
        self.functie_hwl.save()

        self.functie_wl = maak_functie('Wedstrijdleider 1000', 'WL')
        self.functie_wl.nhb_ver = ver
        self.functie_wl.save()

        # maak een test lid aan
        sporter = Sporter()
        sporter.lid_nr = 100001
        sporter.geslacht = "M"
        sporter.voornaam = "Ramon"
        sporter.achternaam = "de Tester"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.account = self.account_100001
        sporter.email = sporter.account.email
        sporter.save()

        # maak een lid aan voor de admin
        sporter = Sporter()
        sporter.lid_nr = 100002
        sporter.geslacht = "M"
        sporter.voornaam = "Ad"
        sporter.achternaam = "Min"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.account = self.testdata.account_admin
        sporter.email = sporter.account.email
        sporter.save()
    def setUp(self):
        """ eenmalige setup voor alle tests
            wordt als eerste aangeroepen
        """
        self.regio_111 = NhbRegio.objects.get(regio_nr=111)

        # maak een test vereniging
        ver = NhbVereniging()
        ver.naam = "Grote Club"
        ver.ver_nr = "1000"
        ver.regio = self.regio_111
        # secretaris kan nog niet ingevuld worden
        ver.save()
        self.nhbver1 = ver

        # maak de SEC functie
        self.functie_sec = maak_functie("SEC test", "SEC")
        self.functie_sec.nhb_ver = ver
        self.functie_sec.save()

        # maak de HWL functie
        self.functie_hwl = maak_functie("HWL test", "HWL")
        self.functie_hwl.nhb_ver = ver
        self.functie_hwl.save()

        # maak de WL functie
        self.functie_wl = maak_functie("WL test", "WL")
        self.functie_wl.nhb_ver = ver
        self.functie_wl.save()

        # maak het lid aan dat WL wordt
        sporter = Sporter()
        sporter.lid_nr = 100001
        sporter.geslacht = "M"
        sporter.voornaam = "Ramon"
        sporter.achternaam = "de Tester"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.save()

        self.account_wl = self.e2e_create_account(sporter.lid_nr, sporter.email, sporter.voornaam, accepteer_vhpg=True)
        self.functie_wl.accounts.add(self.account_wl)

        sporter.account = self.account_wl
        sporter.save()
        self.sporter_100001 = sporter

        boog_r = BoogType.objects.get(afkorting='R')
        sporterboog = SporterBoog(sporter=sporter,
                                  boogtype=boog_r,
                                  voor_wedstrijd=True)
        sporterboog.save()
        self.sporterboog_100001 = sporterboog

        voorkeuren = SporterVoorkeuren(sporter=self.sporter_100001,
                                       opmerking_para_sporter="test para opmerking")
        voorkeuren.save()

        # maak een jeugdlid aan
        sporter = Sporter()
        sporter.lid_nr = 100002
        sporter.geslacht = "V"
        sporter.voornaam = "Ramona"
        sporter.achternaam = "de Jeugdschutter"
        sporter.email = ""
        sporter.geboorte_datum = datetime.date(year=2010, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.save()
        self.sporter_100002 = sporter

        # maak nog een jeugdlid aan, in dezelfde leeftijdsklasse
        sporter = Sporter()
        sporter.lid_nr = 100012
        sporter.geslacht = "V"
        sporter.voornaam = "Andrea"
        sporter.achternaam = "de Jeugdschutter"
        sporter.email = ""
        sporter.geboorte_datum = datetime.date(year=2010, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=10, day=10)
        sporter.bij_vereniging = ver
        sporter.save()
        self.sporter_100012 = sporter

        # maak het lid aan dat HWL wordt
        sporter = Sporter()
        sporter.lid_nr = 100003
        sporter.geslacht = "V"
        sporter.voornaam = "Ramona"
        sporter.achternaam = "de Testerin"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver

        self.account_hwl = self.e2e_create_account(sporter.lid_nr, sporter.email, sporter.voornaam, accepteer_vhpg=True)
        self.functie_hwl.accounts.add(self.account_hwl)

        sporter.account = self.account_hwl
        sporter.save()
        self.sporter_100003 = sporter

        # maak het lid aan dat SEC wordt
        sporter = Sporter()
        sporter.lid_nr = 100004
        sporter.geslacht = "M"
        sporter.voornaam = "Ramon"
        sporter.achternaam = "de Secretaris"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=1971, month=5, day=28)
        sporter.sinds_datum = datetime.date(year=2000, month=1, day=31)
        sporter.bij_vereniging = ver
        sporter.save()

        self.account_sec = self.e2e_create_account(sporter.lid_nr, sporter.email, sporter.voornaam, accepteer_vhpg=True)
        self.functie_sec.accounts.add(self.account_sec)

        sporter.account = self.account_sec
        sporter.save()
        self.lid_100004 = sporter

        # maak een lid aan van een andere vereniging
        # maak een test vereniging
        ver2 = NhbVereniging()
        ver2.naam = "Andere Club"
        ver2.ver_nr = "1222"
        ver2.regio = self.regio_111
        # secretaris kan nog niet ingevuld worden
        ver2.save()
        self.nhbver2 = ver2

        # BB worden
        self.e2e_login_and_pass_otp(self.testdata.account_bb)
        self.e2e_wisselnaarrol_bb()
        self.e2e_check_rol('BB')

        # maak de competitie aan die nodig is voor deze tests
        self._maak_competitie()
        self._maak_wedstrijden()
        self._maak_inschrijvingen()
Ejemplo n.º 14
0
    def _prep_beheerder_lid(self, voornaam):
        lid_nr = self._next_lid_nr
        self._next_lid_nr += 1

        lid = Sporter()
        lid.lid_nr = lid_nr
        lid.geslacht = "M"
        lid.voornaam = voornaam
        lid.achternaam = "Tester"
        lid.email = voornaam.lower() + "@nhb.test"
        lid.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        lid.sinds_datum = datetime.date(year=2010, month=11, day=12)
        lid.bij_vereniging = self._ver
        lid.save()

        return self.e2e_create_account(lid_nr,
                                       lid.email,
                                       E2EHelpers.WACHTWOORD,
                                       accepteer_vhpg=True)
Ejemplo n.º 15
0
    def setUp(self):
        """ initialisatie van de test case """

        self.account_admin = self.e2e_create_account_admin()
        self.account_normaal = self.e2e_create_account('normaal',
                                                       '*****@*****.**',
                                                       'Normaal')
        self.account_same = self.e2e_create_account('same', '*****@*****.**',
                                                    'same')

        sporter = Sporter()
        sporter.lid_nr = 100042
        sporter.geslacht = "M"
        sporter.voornaam = "Beh"
        sporter.achternaam = "eerder"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.account = self.account_normaal
        sporter.email = sporter.account.email
        sporter.save()

        LogboekRegel.objects.all().delete()

        schrijf_in_logboek(self.account_normaal, 'Logboek unittest',
                           'test setUp')
        schrijf_in_logboek(None, 'Logboek unittest', 'zonder account')
        schrijf_in_logboek(None, 'Records', 'import gelukt')
        schrijf_in_logboek(None, 'Rollen', 'Jantje is de baas')
        schrijf_in_logboek(None, 'NhbStructuur', 'weer een nieuw lid')
        schrijf_in_logboek(None, 'Uitrol', 'Rollen met die hap')
        schrijf_in_logboek(self.account_normaal, 'OTP controle',
                           'alweer verkeerd')
        schrijf_in_logboek(self.account_same, 'Testafdeling',
                           'Afdeling gesloten')
        schrijf_in_logboek(self.account_same, 'Competitie',
                           'Klassengrenzen vastgesteld')
        schrijf_in_logboek(self.account_same, 'Accommodaties',
                           'Weer een clubhuis')
        schrijf_in_logboek(self.account_same, 'Clusters', 'Groepeer ze maar')
        schrijf_in_logboek(None, 'Iets anders', 'Valt onder Rest')
        schrijf_in_logboek(None, 'oude_site_overnemen (command line)',
                           'Valt onder Import')
Ejemplo n.º 16
0
    def setUp(self):
        """ initialisatie van de test case """
        regio_111 = NhbRegio.objects.get(pk=111)

        boog_r = BoogType.objects.get(afkorting='R')
        boog_bb = BoogType.objects.get(afkorting='BB')
        boog_ib = BoogType.objects.get(afkorting='IB')

        teamtype_r = TeamType.objects.get(afkorting='R')

        datum = datetime.date(year=2000, month=1, day=1)

        comp = Competitie(
                    beschrijving='Test',
                    afstand='18',
                    begin_jaar=2000,
                    uiterste_datum_lid=datum,
                    begin_aanmeldingen=datum,
                    einde_aanmeldingen=datum,
                    einde_teamvorming=datum,
                    eerste_wedstrijd=datum,
                    laatst_mogelijke_wedstrijd=datum,
                    datum_klassengrenzen_rk_bk_teams=datum,
                    rk_eerste_wedstrijd=datum,
                    rk_laatste_wedstrijd=datum,
                    bk_eerste_wedstrijd=datum,
                    bk_laatste_wedstrijd=datum)
        comp.save()
        self.comp = comp

        deelcomp = DeelCompetitie(
                            competitie=comp,
                            laag=LAAG_REGIO,
                            nhb_regio=regio_111)
        deelcomp.save()

        indiv_r1 = IndivWedstrijdklasse.objects.filter(boogtype=boog_r)[1]
        indiv_r2 = IndivWedstrijdklasse.objects.filter(boogtype=boog_r)[2]
        indiv_ib = IndivWedstrijdklasse.objects.filter(boogtype=boog_ib)[0]
        indiv_bb = IndivWedstrijdklasse.objects.filter(boogtype=boog_bb)[0]

        klasse_r1 = CompetitieKlasse(
                        competitie=comp,
                        indiv=indiv_r1,
                        min_ag=2.0)
        klasse_r1.save()

        CompetitieKlasse(
                competitie=comp,
                indiv=indiv_r2,
                min_ag=1.0).save()

        CompetitieKlasse(
                competitie=comp,
                indiv=indiv_bb,
                min_ag=0.0).save()

        klasse_ib = CompetitieKlasse(
                        competitie=comp,
                        indiv=indiv_ib,
                        min_ag=0.0)
        klasse_ib.save()

        # maak een test vereniging
        ver = NhbVereniging()
        ver.naam = "Grote Club met een naam langer dan 30 tekens"
        ver.ver_nr = "1000"
        ver.regio = regio_111
        ver.save()

        # maak een test lid aan
        sporter = Sporter()
        sporter.lid_nr = 123456
        sporter.geslacht = "M"
        sporter.voornaam = "Ramon"
        sporter.achternaam = "de Tester"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.account = None
        sporter.email = ''
        sporter.save()
        self.sporter = sporter

        sporterboog_r = SporterBoog(
                            sporter=sporter,
                            boogtype=boog_r,
                            voor_wedstrijd=True)
        sporterboog_r.save()
        self.sporterboog_r = sporterboog_r

        sporterboog_ib = SporterBoog(
                            sporter=sporter,
                            boogtype=boog_ib,
                            voor_wedstrijd=False)
        sporterboog_ib.save()
        self.sporterboog_ib = sporterboog_ib

        sporterboog_bb = SporterBoog(
                            sporter=sporter,
                            boogtype=boog_bb,
                            voor_wedstrijd=False)
        sporterboog_bb.save()
        self.sporterboog_bb = sporterboog_bb

        deelnemer_r = RegioCompetitieSchutterBoog(
                            deelcompetitie=deelcomp,
                            sporterboog=sporterboog_r,
                            bij_vereniging=ver,
                            klasse=klasse_r1,
                            aantal_scores=1)
        deelnemer_r.save()
        self.deelnemer_r = deelnemer_r

        deelnemer_ib = RegioCompetitieSchutterBoog(
                            deelcompetitie=deelcomp,
                            sporterboog=sporterboog_ib,
                            bij_vereniging=ver,
                            klasse=klasse_ib,
                            aantal_scores=2)
        deelnemer_ib.save()
        self.deelnemer_ib = deelnemer_ib

        team = RegiocompetitieTeam(
                            deelcompetitie=deelcomp,
                            vereniging=ver,
                            volg_nr=1,
                            team_type=teamtype_r,
                            team_naam='Test')
        team.save()
        self.team = team

        team.gekoppelde_schutters.add(deelnemer_ib)
Ejemplo n.º 17
0
    def setUp(self):
        """ eenmalige setup voor alle tests
            wordt als eerste aangeroepen
        """
        # deze test is afhankelijk van de standaard regio's
        self.regio_101 = regio = NhbRegio.objects.get(regio_nr=101)

        # maak een test vereniging
        ver = NhbVereniging()
        ver.naam = "Grote Club"
        ver.ver_nr = 1000
        ver.regio = regio
        # secretaris kan nog niet ingevuld worden
        ver.save()

        # maak een volwassen test lid aan (komt in groep met klasse onbekend)
        sporter = Sporter()
        sporter.lid_nr = 100001
        sporter.geslacht = "M"
        sporter.voornaam = "Ramon"
        sporter.achternaam = "de Tester"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        self.account_lid = self.e2e_create_account(sporter.lid_nr,
                                                   sporter.email,
                                                   sporter.voornaam)
        sporter.account = self.account_lid
        sporter.save()
        self.sporter_100001 = sporter

        self.functie_hwl = maak_functie('HWL test', 'HWL')
        self.functie_hwl.nhb_ver = ver
        self.functie_hwl.save()
        self.functie_hwl.accounts.add(self.account_lid)

        # maak een jeugdlid aan (komt in BB jeugd zonder klasse onbekend)
        sporter = Sporter()
        sporter.lid_nr = 100002
        sporter.geslacht = "M"
        sporter.voornaam = "Ramon"
        sporter.achternaam = "het Testertje"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=2008, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2015, month=11, day=12)
        sporter.bij_vereniging = ver
        self.account_jeugdlid = self.e2e_create_account(
            sporter.lid_nr, sporter.email, sporter.voornaam)
        sporter.account = self.account_jeugdlid
        sporter.save()
        self.sporter_100002 = sporter

        boog_bb = BoogType.objects.get(afkorting='BB')
        boog_ib = BoogType.objects.get(afkorting='IB')

        # maak een sporterboog aan voor het jeugdlid (nodig om aan te melden)
        sporterboog = SporterBoog(sporter=self.sporter_100002,
                                  boogtype=boog_bb,
                                  voor_wedstrijd=False)
        sporterboog.save()
        self.sporterboog_100002 = sporterboog

        sporter = Sporter()
        sporter.lid_nr = 100003
        sporter.geslacht = "V"
        sporter.voornaam = "Zus"
        sporter.achternaam = "de Testerin"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=2008, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2015, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.save()
        self.sporter_100003 = sporter

        # maak een sporterboog aan voor het lid (nodig om aan te melden)
        sporterboog = SporterBoog(sporter=self.sporter_100003,
                                  boogtype=boog_bb,
                                  voor_wedstrijd=True)
        sporterboog.save()
        self.sporterboog_100003 = sporterboog

        # maak een sporterboog aan voor het lid (nodig om aan te melden)
        sporterboog = SporterBoog(sporter=self.sporter_100001,
                                  boogtype=boog_ib,
                                  voor_wedstrijd=True)
        sporterboog.save()

        # (strategisch gekozen) historische data om klassengrenzen uit te bepalen
        histcomp = HistCompetitie()
        histcomp.seizoen = '2018/2019'
        histcomp.comp_type = '18'
        histcomp.klasse = 'Testcurve1'  # TODO: kan de klasse een spatie bevatten?
        histcomp.is_team = False
        histcomp.save()
        self.histcomp = histcomp

        # een ouder seizoen dat niet gebruikt moet worden
        histcomp2 = HistCompetitie()
        histcomp2.seizoen = '2017/2018'
        histcomp2.comp_type = '18'
        histcomp2.klasse = 'Testcurve2'
        histcomp2.is_team = False
        histcomp2.save()

        # record voor het volwassen lid
        rec = HistCompetitieIndividueel()
        rec.histcompetitie = histcomp
        rec.rank = 1
        rec.schutter_nr = self.sporter_100001.lid_nr
        rec.schutter_naam = self.sporter_100001.volledige_naam()
        rec.vereniging_nr = ver.ver_nr
        rec.vereniging_naam = ver.naam
        rec.boogtype = 'R'
        rec.score1 = 10
        rec.score2 = 20
        rec.score3 = 30
        rec.score4 = 40
        rec.score5 = 50
        rec.score6 = 60
        rec.score7 = 70
        rec.totaal = 80
        rec.gemiddelde = 5.321
        rec.save()

        # nog een record voor het volwassen lid
        rec = HistCompetitieIndividueel()
        rec.histcompetitie = histcomp2
        rec.rank = 1
        rec.schutter_nr = self.sporter_100001.lid_nr
        rec.schutter_naam = self.sporter_100001.volledige_naam()
        rec.vereniging_nr = ver.ver_nr
        rec.vereniging_naam = ver.naam
        rec.boogtype = 'R'
        rec.score1 = 11
        rec.score2 = 21
        rec.score3 = 31
        rec.score4 = 41
        rec.score5 = 51
        rec.score6 = 61
        rec.score7 = 71
        rec.totaal = 81
        rec.gemiddelde = 6.12
        rec.save()

        # nog een record voor het volwassen lid
        rec = HistCompetitieIndividueel()
        rec.histcompetitie = histcomp
        rec.rank = 100
        rec.schutter_nr = self.sporter_100001.lid_nr
        rec.schutter_naam = self.sporter_100001.volledige_naam()
        rec.vereniging_nr = ver.ver_nr
        rec.vereniging_naam = ver.naam
        rec.boogtype = 'IB'
        rec.score1 = 11
        rec.score2 = 21
        rec.score3 = 31
        rec.score4 = 41
        rec.score5 = 51
        rec.score6 = 61
        rec.score7 = 71
        rec.totaal = 81
        rec.gemiddelde = 6.12
        rec.save()

        # maak een record aan zonder eindgemiddelde
        rec = HistCompetitieIndividueel()
        rec.histcompetitie = histcomp
        rec.rank = 1
        rec.schutter_nr = self.sporter_100002.lid_nr
        rec.schutter_naam = self.sporter_100002.volledige_naam()
        rec.vereniging_nr = ver.ver_nr
        rec.vereniging_naam = ver.naam
        rec.boogtype = 'C'
        rec.score1 = 0
        rec.score2 = 0
        rec.score3 = 0
        rec.score4 = 0
        rec.score5 = 0
        rec.score6 = 0
        rec.score7 = 0
        rec.totaal = 0
        rec.gemiddelde = 0.0
        rec.save()

        # record voor het jeugdlid
        rec = HistCompetitieIndividueel()
        rec.histcompetitie = histcomp
        rec.rank = 1
        rec.schutter_nr = self.sporter_100002.lid_nr
        rec.schutter_naam = self.sporter_100002.volledige_naam()
        rec.vereniging_nr = ver.ver_nr
        rec.vereniging_naam = ver.naam
        rec.boogtype = 'BB'
        rec.score1 = 10
        rec.score2 = 20
        rec.score3 = 30
        rec.score4 = 40
        rec.score5 = 50
        rec.score6 = 60
        rec.score7 = 70
        rec.totaal = 80
        rec.gemiddelde = 5.321
        rec.save()

        # maak een record aan voor iemand die geen lid meer is
        rec = HistCompetitieIndividueel()
        rec.histcompetitie = histcomp
        rec.rank = 1
        rec.schutter_nr = 991111
        rec.schutter_naam = "Die is weg"
        rec.vereniging_nr = ver.ver_nr
        rec.vereniging_naam = ver.naam
        rec.boogtype = 'BB'
        rec.score1 = 10
        rec.score2 = 20
        rec.score3 = 30
        rec.score4 = 40
        rec.score5 = 50
        rec.score6 = 60
        rec.score7 = 70
        rec.totaal = 80
        rec.gemiddelde = 5.321
        rec.save()
Ejemplo n.º 18
0
    def _maak_leden(self):
        """
            Maak voor elke vereniging een aantal leden aan: een mix van alle wedstrijdklassen en boogtypen.

            Aspirant <13, Aspirant 13-14, Cadet 15-17, Junior 18-20, Senior 21-49, Master 50-59, Veteraan 60+
        """

        huidige_jaar = timezone.now().year
        lid_sinds_datum = datetime.date(year=huidige_jaar - 1,
                                        month=11,
                                        day=12)

        soorten = [
            # wedstrijdleeftijd, geslacht, voornaam, boogtype, account
            (10, 'M', 'Asp10', 'R', False),
            (10, 'V', 'Asp10', 'R', False),
            (11, 'M', 'Asp11', 'R', False),
            (12, 'V', 'Asp12', 'R', False),
            (13, 'M', 'Asp13', 'R', False),
            (14, 'M', 'Cad14', 'R', False),
            (14, 'M', 'Cad14b', 'C', False),
            (14, 'M', 'Cad15', 'c',
             False),  # kleine letter: geen voorkeur voor de competitie
            (15, 'V', 'Cad15', 'R', False),
            (15, 'M', 'Cad15b', 'BB', False),
            (15, 'V', 'Cad15b', 'C', False),
            (16, 'M', 'Cad16', 'R', False),
            (16, 'M', 'Cad16b', 'C', False),
            (16, 'M', 'Cad16c', 'BB', False),
            (17, 'V', 'Cad17', 'R', True),  # account
            (17, 'V', 'Cad17b', 'C', False),
            (17, 'V', 'Cad17c', 'BB', False),
            (18, 'M', 'Jun18', 'R', False),
            (18, 'M', 'Jun18b', 'C', False),
            (18, 'M', 'Jun18c', 'BB', False),
            (18, 'V', 'Jun18', 'BB', False),
            (19, 'V', 'Jun19', 'R', False),
            (19, 'V', 'Jun19b', 'C', True),  # account
            (20, 'M', 'Jun20', 'R', False),
            (20, 'M', 'Jun20b', 'LB', False),
            (21, 'V', 'Sen21', 'R', False),
            (21, 'V', 'Sen21b', 'C', False),
            (22, 'M', 'Sen22', 'R', False),
            (22, 'M', 'Sen22b', 'C', False),
            (22, 'M', 'Sen23', 'r',
             False),  # kleine letter: geen voorkeur voor de competitie
            (31, 'V', 'Sen31', 'R', False),
            (32, 'M', 'Sen32', 'C', False),
            (32, 'M', 'Sen32b', 'BB', True),  # account
            (33, 'V', 'Sen33', 'R', False),
            (33, 'V', 'Sen33b', 'BB', False),
            (34, 'M', 'Sen34', 'LB', True),  # Sen34 = HWL
            (35, 'V', 'Sen35', 'R', False),
            (36, 'M', 'Sen36', 'C', False),
            (36, 'M', 'Sen36b', 'BB', False),
            (37, 'V', 'Sen37', 'R', False),
            (38, 'M', 'Sen38', 'LB', False),
            (39, 'V', 'Sen39', 'R', True),  # Sen39 = BKO/RKO/RCL
            (40, 'M', 'Sen40', 'C', False),
            (41, 'V', 'Sen41', 'R', False),
            (42, 'M', 'Sen42', 'R', False),
            (42, 'M', 'Sen42b', 'C', False),
            (49, 'V', 'Sen49', 'R', False),
            (49, 'V', 'Sen49b', 'BB', False),
            (50, 'M', 'Mas50', 'R', True),  # Mas50 = SEC
            (51, 'V', 'Mas51', 'R', True),  # account
            (51, 'V', 'Mas51b', 'C', False),
            (51, 'V', 'Mas52', 'r',
             False),  # kleine letter: geen voorkeur voor de competitie
            (59, 'M', 'Mas59', 'R', False),
            (59, 'M', 'Mas59b', 'LB', False),
            (60, 'V', 'Vet60', 'R', False),
            (60, 'V', 'Vet60b', 'C', False),
            (60, 'V', 'Vet60c', 'LB', True),  # account
            (61, 'M', 'Vet61', 'C', False),
            (61, 'M', 'Vet61b', 'C', False),
            (80, 'V', 'Vet80', 'R', False),
        ]

        geslacht_voornaam2boogtype = dict()
        for _, geslacht, voornaam, boogtype, _ in soorten:
            try:
                _ = geslacht_voornaam2boogtype[geslacht + voornaam]
            except KeyError:
                geslacht_voornaam2boogtype[geslacht + voornaam] = boogtype
            else:
                raise IndexError(
                    'TestData: combinatie geslacht %s + voornaam %s komt meerdere keren voor'
                    % (geslacht, voornaam))  # pragma: no cover
        # for

        # maak voor elke vereniging een paar accounts aan
        lid_nr = 300000
        bulk = list()
        for ver in self.vereniging.values():
            self.regio_ver_nrs[ver.regio.regio_nr] = ver.ver_nr

            for _, _, voornaam, _, maak_account in soorten:
                lid_nr += 1

                if maak_account:
                    account = Account(username=str(lid_nr),
                                      otp_code=self.OTP_CODE,
                                      otp_is_actief=True)
                    account.set_password(self.WACHTWOORD)
                    bulk.append(account)

                    if len(bulk) > 100:  # pragma: no branch
                        Account.objects.bulk_create(bulk)

                        # maak e-mails aan
                        bulk2 = list()
                        for account in bulk:
                            # let op: e-mailadres moet overeenkomen met het Sporter.email
                            email = AccountEmail(
                                account=account,
                                email_is_bevestigd=True,
                                bevestigde_email='*****@*****.**' %
                                account.username)
                            bulk2.append(email)
                        # for

                        AccountEmail.objects.bulk_create(bulk2)
                        del bulk2

                        bulk = list()
            # for
        # for

        if len(bulk) > 0:  # pragma: no branch
            Account.objects.bulk_create(bulk)

            # maak e-mails aan
            bulk2 = list()
            for account in bulk:
                email = AccountEmail(account=account,
                                     email_is_bevestigd=True,
                                     bevestigde_email='*****@*****.**' %
                                     account.username)
                bulk2.append(email)
            # for

            AccountEmail.objects.bulk_create(bulk2)
            del bulk2

        del bulk

        # cache de aangemaakte accounts
        lid_nr2account = dict()
        for account in Account.objects.all():
            lid_nr2account[account.username] = account
        # for

        lid_nr = 300000
        bulk = list()
        for ver in self.vereniging.values():

            self.ver_sporters[ver.ver_nr] = list()
            self.ver_sporters_met_account[ver.ver_nr] = list()

            for wleeftijd, geslacht, voornaam, _, _ in soorten:
                lid_nr += 1
                achternaam = "Lid%s van Club%s" % (ver.ver_nr, lid_nr)
                geboortedatum = datetime.date(year=huidige_jaar - wleeftijd,
                                              month=3,
                                              day=24)

                try:
                    account = lid_nr2account[str(lid_nr)]
                except KeyError:
                    account = None

                sporter = Sporter(lid_nr=lid_nr,
                                  voornaam=voornaam,
                                  achternaam=achternaam,
                                  unaccented_naam=voornaam + ' ' + achternaam,
                                  email='*****@*****.**' % lid_nr,
                                  geboorte_datum=geboortedatum,
                                  geslacht=geslacht,
                                  para_classificatie='',
                                  is_actief_lid=True,
                                  sinds_datum=lid_sinds_datum,
                                  bij_vereniging=ver,
                                  account=account,
                                  lid_tot_einde_jaar=huidige_jaar)
                bulk.append(sporter)

                if len(bulk) > 250:  # pragma: no branch
                    Sporter.objects.bulk_create(bulk)
                    bulk = list()
            # for
        # for

        if len(bulk) > 0:  # pragma: no branch
            Sporter.objects.bulk_create(bulk)
        del bulk
        del lid_nr2account

        # maak voor elke Sporter nu de SporterBoog records aan
        boogtypen = self.afkorting2boogtype.values()

        bulk_voorkeuren = list()
        bulk_sporter = list()
        for sporter in (Sporter.objects.select_related(
                'account', 'bij_vereniging').all()):

            ver_nr = sporter.bij_vereniging.ver_nr

            self.ver_sporters[ver_nr].append(sporter)
            if sporter.account:
                self.ver_sporters_met_account[ver_nr].append(sporter)

            gewenst_boogtype = geslacht_voornaam2boogtype[sporter.geslacht +
                                                          sporter.voornaam]

            # voorkeuren
            voorkeuren = SporterVoorkeuren(sporter=sporter)

            if gewenst_boogtype.islower():
                voorkeuren.voorkeur_meedoen_competitie = False
                gewenst_boogtype = gewenst_boogtype.upper()

            # alle junioren willen een eigen blazoen
            if gewenst_boogtype == 'R' and sporter.voornaam.startswith('Jun'):
                voorkeuren.voorkeur_eigen_blazoen = True

            bulk_voorkeuren.append(voorkeuren)
            if len(bulk_voorkeuren) > 100:
                SporterVoorkeuren.objects.bulk_create(bulk_voorkeuren)
                bulk_voorkeuren = list()

            # sporterboog
            for boogtype in boogtypen:
                sporterboog = SporterBoog(
                    sporter=sporter,
                    # heeft_interesse=True
                    # voor_wedstrijd=False
                    boogtype=boogtype)

                if boogtype.afkorting == gewenst_boogtype:
                    sporterboog.voor_wedstrijd = True

                bulk_sporter.append(sporterboog)

                if len(bulk_sporter) > 250:
                    SporterBoog.objects.bulk_create(bulk_sporter)
                    bulk_sporter = list()
            # for
        # for

        if len(bulk_voorkeuren):  # pragma: no branch
            SporterVoorkeuren.objects.bulk_create(bulk_voorkeuren)
        del bulk_voorkeuren

        if len(bulk_sporter):  # pragma: no branch
            SporterBoog.objects.bulk_create(bulk_sporter)
        del bulk_sporter
Ejemplo n.º 19
0
    def setUp(self):
        """ eenmalige setup voor alle tests
            wordt als eerste aangeroepen
        """
        self.regio_111 = NhbRegio.objects.get(regio_nr=111)

        # maak een test vereniging
        ver = NhbVereniging()
        ver.naam = "Grote Club"
        ver.ver_nr = "1000"
        ver.regio = self.regio_111
        # secretaris kan nog niet ingevuld worden
        ver.save()
        self.nhbver1 = ver

        # maak de HWL functie
        self.functie_hwl = maak_functie("HWL test", "HWL")
        self.functie_hwl.nhb_ver = ver
        self.functie_hwl.save()

        # maak de WL functie
        self.functie_wl = maak_functie("WL test", "WL")
        self.functie_wl.nhb_ver = ver
        self.functie_wl.save()

        # maak het lid aan dat WL wordt
        sporter = Sporter()
        sporter.lid_nr = 100001
        sporter.geslacht = "M"
        sporter.voornaam = "Ramon"
        sporter.achternaam = "de Tester"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.save()

        self.account_wl = self.e2e_create_account(sporter.lid_nr,
                                                  sporter.email,
                                                  sporter.voornaam,
                                                  accepteer_vhpg=True)
        self.functie_wl.accounts.add(self.account_wl)

        sporter.account = self.account_wl
        sporter.save()
        self.sporter_100001 = sporter

        # maak een jeugdlid aan
        sporter = Sporter()
        sporter.lid_nr = 100002
        sporter.geslacht = "V"
        sporter.voornaam = "Ramona"
        sporter.achternaam = "de Jeugdschutter"
        sporter.email = ""
        sporter.geboorte_datum = datetime.date(year=2010, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.save()
        self.sporter_100002 = sporter

        # maak nog een jeugdlid aan, in dezelfde leeftijdsklasse
        sporter = Sporter()
        sporter.lid_nr = 100012
        sporter.geslacht = "V"
        sporter.voornaam = "Andrea"
        sporter.achternaam = "de Jeugdschutter"
        sporter.email = ""
        sporter.geboorte_datum = datetime.date(year=2010, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=10, day=10)
        sporter.bij_vereniging = ver
        sporter.save()
        self.sporter_100012 = sporter

        # maak een senior lid aan, om inactief te maken
        sporter = Sporter()
        sporter.lid_nr = 100003
        sporter.geslacht = "V"
        sporter.voornaam = "Ramona"
        sporter.achternaam = "de Testerin"
        sporter.email = ""
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.save()
        self.sporter_100003 = sporter

        # maak een lid aan van een andere vereniging
        # maak een test vereniging
        ver2 = NhbVereniging()
        ver2.naam = "Andere Club"
        ver2.ver_nr = "1222"
        ver2.regio = self.regio_111
        # secretaris kan nog niet ingevuld worden
        ver2.save()
        self.nhbver2 = ver2

        # maak de competitie aan die nodig is voor deze tests
        self._create_histcomp()
        self._create_competitie()
Ejemplo n.º 20
0
    def setUp(self):
        """ initialisatie van de test case """
        self.account_normaal = self.e2e_create_account('normaal', '*****@*****.**', 'Normaal')
        self.account_geenlid = self.e2e_create_account('geenlid', '*****@*****.**', 'Geen')
        self.account_twee = self.e2e_create_account('twee', '*****@*****.**', 'Twee')

        # afhankelijk van de rayon/regio's aangemaakt door NhbStructuur migratie

        # maak een test vereniging
        ver = NhbVereniging()
        ver.naam = "Grote Club"
        ver.ver_nr = "1000"
        ver.regio = NhbRegio.objects.get(pk=111)
        # secretaris kan nog niet ingevuld worden
        ver.save()
        self.nhbver = ver

        # maak een test lid aan
        sporter = Sporter()
        sporter.lid_nr = 100001
        sporter.geslacht = "M"
        sporter.voornaam = "Ramon"
        sporter.achternaam = "de Tester"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.account = self.account_normaal
        sporter.email = sporter.account.email
        sporter.save()
        self.sporter1 = sporter

        # maak een test lid aan
        sporter = Sporter()
        sporter.lid_nr = 100002
        sporter.geslacht = "V"
        sporter.voornaam = "Twee"
        sporter.achternaam = "de Tester"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.account = self.account_twee
        sporter.email = sporter.account.email
        sporter.save()

        # maak een test lid aan
        sporter = Sporter()
        sporter.lid_nr = 100003
        sporter.geslacht = "V"
        sporter.voornaam = "Geen"
        sporter.achternaam = "Lid"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.account = self.account_geenlid
        sporter.email = sporter.account.email
        sporter.save()
Ejemplo n.º 21
0
    def setUp(self):
        """ initialisatie van de test case """
        self.account_admin = self.e2e_create_account_admin()
        self.account_normaal = self.e2e_create_account('normaal',
                                                       '*****@*****.**',
                                                       'Normaal')
        self.account_hwl = self.e2e_create_account('hwl', '*****@*****.**',
                                                   'Secretaris')
        self.e2e_account_accepteert_vhpg(self.account_hwl)

        # maak een test vereniging
        ver = NhbVereniging()
        ver.naam = "Grote Club"
        ver.ver_nr = "1000"
        ver.regio = NhbRegio.objects.get(regio_nr=111)
        ver.save()
        self.nhbver1 = ver

        self.functie_hwl = maak_functie('HWL 1000', 'HWL')
        self.functie_hwl.nhb_ver = ver
        self.functie_hwl.save()
        self.functie_hwl.accounts.add(self.account_hwl)

        # maak een test lid aan
        sporter = Sporter()
        sporter.lid_nr = 100001
        sporter.geslacht = "M"
        sporter.voornaam = "Ramon"
        sporter.achternaam = "de Tester"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.account = self.account_normaal
        sporter.email = sporter.account.email
        sporter.save()
        self.sporter_100001 = sporter

        self.boog_r = BoogType.objects.get(afkorting='R')
        self.boog_c = BoogType.objects.get(afkorting='C')

        # maak 2 schutterboog aan
        sporterboog = SporterBoog(sporter=sporter,
                                  boogtype=self.boog_c,
                                  voor_wedstrijd=True)
        sporterboog.save()
        self.sporterboog_100001c = sporterboog

        sporterboog = SporterBoog(sporter=sporter,
                                  boogtype=self.boog_r,
                                  voor_wedstrijd=True)
        sporterboog.save()
        self.sporterboog_100001r = sporterboog

        # maak een AG aan
        score_indiv_ag_opslaan(sporterboog, 18, 9.123, None, 'test melding')

        score_indiv_ag_opslaan(sporterboog, 25, 9.251, self.account_hwl,
                               'test melding')

        self._maak_uitslag(sporterboog)
Ejemplo n.º 22
0
    def _maak_leden_aan(self):
        sporter = Sporter()
        sporter.lid_nr = 100001
        sporter.geslacht = "M"
        sporter.voornaam = "Ramon"
        sporter.achternaam = "de Tester"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = self.ver
        self.account_lid = self.e2e_create_account(sporter.lid_nr,
                                                   sporter.email,
                                                   sporter.voornaam)
        sporter.account = self.account_lid
        sporter.save()
        self.sporter_100001 = sporter
        sporterboog = SporterBoog(sporter=self.sporter_100001,
                                  boogtype=self.boog_r,
                                  voor_wedstrijd=True)  # TODO: migrate
        sporterboog.save()
        self.sporterboog_100001 = sporterboog

        sporter = Sporter()
        sporter.lid_nr = 100002
        sporter.geslacht = "M"
        sporter.voornaam = "Ramon"
        sporter.achternaam = "het Testertje"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=2008, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2015, month=11, day=12)
        sporter.bij_vereniging = self.ver
        self.account_jeugdlid = self.e2e_create_account(
            sporter.lid_nr, sporter.email, sporter.voornaam)
        sporter.account = self.account_jeugdlid
        sporter.save()
        self.sporter_100002 = sporter
        sporterboog = SporterBoog(sporter=self.sporter_100002,
                                  boogtype=self.boog_r,
                                  voor_wedstrijd=True)  # TODO: migrate
        sporterboog.save()
        self.sporterboog_100002 = sporterboog

        sporter = Sporter()
        sporter.lid_nr = 100003
        sporter.geslacht = "M"
        sporter.voornaam = "Geen"
        sporter.achternaam = "Vereniging"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=2008, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2015, month=11, day=12)
        # lid.bij_vereniging =
        sporter.account = self.e2e_create_account(sporter.lid_nr,
                                                  sporter.email,
                                                  sporter.voornaam)
        sporter.save()

        sporter = Sporter()
        sporter.lid_nr = 100004
        sporter.geslacht = "V"
        sporter.voornaam = "Juf"
        sporter.achternaam = "de Schutter"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=1988, month=12, day=4)
        sporter.sinds_datum = datetime.date(year=2015, month=7, day=15)
        sporter.bij_vereniging = self.ver
        sporter.account = self.e2e_create_account(sporter.lid_nr,
                                                  sporter.email,
                                                  sporter.voornaam)
        sporter.save()
        self.sporter_100004 = sporter
        sporterboog = SporterBoog(sporter=self.sporter_100004,
                                  boogtype=self.boog_r,
                                  voor_wedstrijd=True)  # TODO: migrate
        sporterboog.save()
        self.sporterboog_100004 = sporterboog

        sporter = Sporter()
        sporter.lid_nr = 100005
        sporter.geslacht = "V"
        sporter.voornaam = "Jans"
        sporter.achternaam = "de Schutter"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=1977, month=12, day=4)
        sporter.sinds_datum = datetime.date(year=2015, month=7, day=15)
        sporter.bij_vereniging = self.ver
        sporter.account = self.e2e_create_account(sporter.lid_nr,
                                                  sporter.email,
                                                  sporter.voornaam)
        sporter.save()
        self.sporter_100005 = sporter
        sporterboog = SporterBoog(sporter=self.sporter_100005,
                                  boogtype=self.boog_r,
                                  voor_wedstrijd=True)  # TODO: migrate
        sporterboog.save()
        self.sporterboog_100005 = sporterboog
Ejemplo n.º 23
0
    def test_check_beheerders(self):
        f1 = io.StringIO()
        f2 = io.StringIO()
        with self.assert_max_queries(20):
            management.call_command('check_beheerders', stderr=f1, stdout=f2)
        self.assertTrue(f1.getvalue() == '')  # geen foutmeldingen

        # koppel een account aan een functie, maar geen sporter
        self.functie_hwl.accounts.add(self.account_normaal)

        f1 = io.StringIO()
        f2 = io.StringIO()
        with self.assert_max_queries(20):
            management.call_command('check_beheerders', stderr=f1, stdout=f2)
        self.assertTrue(f1.getvalue() == '')
        self.assertTrue("LET OP: geen koppeling met NHB lid" in f2.getvalue())

        # maak account ook nhblid
        sporter = Sporter(lid_nr=100042,
                          voornaam='Kees',
                          achternaam='Pijlpunt',
                          email='*****@*****.**',
                          geboorte_datum='1900-10-20',
                          geslacht='M',
                          para_classificatie='',
                          is_actief_lid=False,
                          sinds_datum='2020-02-20',
                          bij_vereniging=None,
                          lid_tot_einde_jaar=0,
                          account=self.account_normaal)
        sporter.save()

        f1 = io.StringIO()
        f2 = io.StringIO()
        with self.assert_max_queries(20):
            management.call_command('check_beheerders', stderr=f1, stdout=f2)
        self.assertTrue(f1.getvalue() == '')
        self.assertTrue(
            "LET OP: geen lid meer bij een vereniging" in f2.getvalue())

        # maak lid bij een andere vereniging
        ver = NhbVereniging(ver_nr=1042,
                            naam="Andere club",
                            plaats="Overkantje",
                            regio=self.nhbver1.regio)
        ver.save()
        sporter.is_actief_lid = True
        sporter.bij_vereniging = ver
        sporter.save()

        f1 = io.StringIO()
        f2 = io.StringIO()
        with self.assert_max_queries(20):
            management.call_command('check_beheerders', stderr=f1, stdout=f2)
        self.assertTrue(f1.getvalue() == '')
        self.assertTrue(
            "LET OP: geen lid bij deze vereniging" in f2.getvalue())

        # nu alles goed zetten
        sporter.bij_vereniging = self.nhbver1
        sporter.save()

        f1 = io.StringIO()
        f2 = io.StringIO()
        with self.assert_max_queries(20):
            management.call_command('check_beheerders', stderr=f1, stdout=f2)
        # print('f1:', f1.getvalue())
        # print('f2:', f2.getvalue())
        self.assertTrue(f1.getvalue() == '')
        self.assertFalse("LET OP:" in f2.getvalue())
Ejemplo n.º 24
0
    def setUp(self):
        """ initialisatie van de test case """

        self.account_normaal = self.e2e_create_account('normaal',
                                                       '*****@*****.**',
                                                       'Normaal')
        self.account_same = self.e2e_create_account('same', '*****@*****.**',
                                                    'same')

        sporter = Sporter()
        sporter.lid_nr = 100042
        sporter.geslacht = "M"
        sporter.voornaam = "Beh"
        sporter.achternaam = "eerder"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.account = self.account_normaal
        sporter.email = sporter.account.email
        sporter.save()
Ejemplo n.º 25
0
    def setUp(self):
        """ eenmalige setup voor alle tests
            wordt als eerste aangeroepen
        """
        # deze test is afhankelijk van de standaard regio's
        regio = NhbRegio.objects.get(regio_nr=101)

        # maak een test vereniging
        ver = NhbVereniging()
        ver.naam = "Grote Club"
        ver.ver_nr = 1000
        ver.regio = regio
        # secretaris kan nog niet ingevuld worden
        ver.save()

        # maak een volwassen test lid aan (komt in groep met klasse onbekend)
        sporter = Sporter()
        sporter.lid_nr = 100001
        sporter.geslacht = "M"
        sporter.voornaam = "Ramon"
        sporter.achternaam = "de Tester"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        self.account_lid = self.e2e_create_account(sporter.lid_nr,
                                                   sporter.email,
                                                   sporter.voornaam)
        sporter.account = self.account_lid
        sporter.save()
        self.sporter_100001 = sporter

        self.account_geenlid = self.e2e_create_account('geenlid',
                                                       '*****@*****.**',
                                                       'Testertje')
Ejemplo n.º 26
0
    def setUp(self):
        """ initialisatie van de test case """

        # deze test is afhankelijk van de standaard globale functies
        # zoals opgezet door de migratie m0002_functies-2019:
        #   comp_type: 18/25
        #       rol: BKO, RKO (4x), RCL (16x)

        self.account_normaal = self.e2e_create_account('normaal',
                                                       '*****@*****.**',
                                                       'Normaal')
        self.account_beh1 = self.e2e_create_account('testbeheerder1',
                                                    '*****@*****.**',
                                                    'Beheerder1',
                                                    accepteer_vhpg=True)
        self.account_beh2 = self.e2e_create_account('testbeheerder2',
                                                    '*****@*****.**',
                                                    'Beheerder2',
                                                    accepteer_vhpg=True)
        self.account_ander = self.e2e_create_account('anderlid',
                                                     '*****@*****.**',
                                                     'Ander')

        self.functie_bko = Functie.objects.get(comp_type='18', rol='BKO')
        self.functie_rko3 = Functie.objects.get(
            comp_type='18',
            rol='RKO',
            nhb_rayon=NhbRayon.objects.get(rayon_nr=3))
        self.functie_rcl111 = Functie.objects.get(
            comp_type='18',
            rol='RCL',
            nhb_regio=NhbRegio.objects.get(regio_nr=111))
        self.functie_rcl101 = Functie.objects.get(
            comp_type='18',
            rol='RCL',
            nhb_regio=NhbRegio.objects.get(regio_nr=101))

        # maak een test vereniging
        ver = NhbVereniging()
        ver.naam = "Grote Club"
        ver.ver_nr = "1000"
        ver.regio = NhbRegio.objects.get(regio_nr=111)
        # secretaris kan nog niet ingevuld worden
        ver.save()
        self.nhbver1 = ver

        sporter = Sporter()
        sporter.lid_nr = 100042
        sporter.geslacht = "M"
        sporter.voornaam = "Beh"
        sporter.achternaam = "eerder"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.account = self.account_beh2
        sporter.email = sporter.account.email
        sporter.save()
        self.sporter_100042 = sporter

        sporter = Sporter()
        sporter.lid_nr = 100043
        sporter.geslacht = "M"
        sporter.voornaam = "Beh"
        sporter.achternaam = "eerder"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.account = self.account_normaal
        sporter.email = sporter.account.email
        sporter.save()
        self.sporter_100043 = sporter

        self.functie_sec = maak_functie("SEC test", "SEC")
        self.functie_sec.nhb_ver = ver
        self.functie_sec.save()

        self.functie_hwl = maak_functie("HWL test", "HWL")
        self.functie_hwl.nhb_ver = ver
        self.functie_hwl.save()

        self.functie_wl = maak_functie("WL test", "WL")
        self.functie_wl.nhb_ver = ver
        self.functie_wl.save()

        self.regio_112 = NhbRegio.objects.get(regio_nr=112)

        # maak nog een test vereniging
        ver2 = NhbVereniging()
        ver2.naam = "Extra Club"
        ver2.ver_nr = "1900"
        ver2.regio = self.regio_112
        # secretaris kan nog niet ingevuld worden
        ver2.save()
        self.nhbver2 = ver2

        self.functie_sec2 = maak_functie("SEC test 2", "SEC")
        self.functie_sec2.nhb_ver = ver2
        self.functie_sec2.save()

        self.functie_hwl2 = maak_functie("HWL test 2", "HWL")
        self.functie_hwl2.nhb_ver = ver2
        self.functie_hwl2.save()

        sporter = Sporter()
        sporter.lid_nr = 100024
        sporter.geslacht = "V"
        sporter.voornaam = "Ander"
        sporter.achternaam = "Lid"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=5)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=11)
        sporter.bij_vereniging = ver2
        sporter.account = self.account_ander
        sporter.email = sporter.account.email
        sporter.save()
        self.sporter_100024 = sporter
Ejemplo n.º 27
0
    def setUp(self):
        """ eenmalige setup voor alle tests
            wordt als eerste aangeroepen
        """
        self.regio_111 = NhbRegio.objects.get(regio_nr=111)

        # maak een test vereniging
        ver = NhbVereniging()
        ver.naam = "Grote Club"
        ver.ver_nr = "1000"
        ver.regio = self.regio_111
        # secretaris kan nog niet ingevuld worden
        ver.save()
        self.nhbver1 = ver

        # maak de HWL functie
        self.functie_hwl = maak_functie("HWL test", "HWL")
        self.functie_hwl.nhb_ver = ver
        self.functie_hwl.save()

        self.functie_wl = maak_functie("WL test", "WL")
        self.functie_wl.nhb_ver = ver
        self.functie_wl.save()

        # maak het lid aan dat HWL wordt
        sporter = Sporter()
        sporter.lid_nr = 100001
        sporter.geslacht = "M"
        sporter.voornaam = "Ramon"
        sporter.achternaam = "de Tester"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.save()

        self.account_hwl = self.e2e_create_account(sporter.lid_nr,
                                                   sporter.email,
                                                   sporter.voornaam,
                                                   accepteer_vhpg=True)
        self.functie_hwl.accounts.add(self.account_hwl)

        sporter.account = self.account_hwl
        sporter.save()
        self.sporter_100001 = sporter

        jaar = timezone.now().year

        # maak een aspirant aan
        sporter = Sporter()
        sporter.lid_nr = 100002
        sporter.geslacht = "V"
        sporter.voornaam = "Ramona"
        sporter.achternaam = "de Jeugdschutter"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=jaar - 12, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=jaar - 3, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.account = self.e2e_create_account(
            sporter.lid_nr, sporter.email,
            sporter.voornaam)  # heeft last_login=None
        sporter.save()
        self.sporter_100002 = sporter

        # maak een cadet aan
        sporter = Sporter()
        sporter.lid_nr = 100012
        sporter.geslacht = "V"
        sporter.voornaam = "Andrea"
        sporter.achternaam = "de Jeugdschutter"
        sporter.email = ""
        sporter.geboorte_datum = datetime.date(year=jaar - 15, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=jaar - 3, month=10, day=10)
        sporter.bij_vereniging = ver
        sporter.save()
        self.sporter_100012 = sporter

        # maak een jeugd lid aan
        sporter = Sporter()
        sporter.lid_nr = 100004
        sporter.geslacht = "M"
        sporter.voornaam = "Cadet"
        sporter.achternaam = "de Jeugd"
        sporter.email = ""
        sporter.geboorte_datum = datetime.date(
            year=jaar - 13, month=3,
            day=4)  # 13=asp, maar 14 in 2e jaar competitie!
        sporter.sinds_datum = datetime.date(year=jaar - 3, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.save()
        self.sporter_100004 = sporter

        # maak een senior lid aan, om inactief te maken
        sporter = Sporter()
        sporter.lid_nr = 100003
        sporter.geslacht = "V"
        sporter.voornaam = "Ramona"
        sporter.achternaam = "de Testerin"
        sporter.email = ""
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=jaar - 4, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.save()
        self.sporter_100003 = sporter

        # maak een senior lid aan
        sporter = Sporter()
        sporter.lid_nr = 100013
        sporter.geslacht = "M"
        sporter.voornaam = "Instinctive"
        sporter.achternaam = "de Bower"
        sporter.email = ""
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=5)
        sporter.sinds_datum = datetime.date(year=jaar - 4, month=7, day=1)
        sporter.bij_vereniging = ver
        sporter.save()
        self.sporter_100013 = sporter

        # maak een lid aan van een andere vereniging
        # maak een test vereniging
        ver2 = NhbVereniging()
        ver2.naam = "Andere Club"
        ver2.ver_nr = "1222"
        ver2.regio = self.regio_111
        # secretaris kan nog niet ingevuld worden
        ver2.save()
        self.nhbver2 = ver2

        self.account_rcl = self.e2e_create_account('rcl111',
                                                   '*****@*****.**',
                                                   'Ercel',
                                                   accepteer_vhpg=True)
        self.functie_rcl = maak_functie('RCL Regio 111', 'RCL')
        self.functie_rcl.nhb_regio = self.nhbver1.regio
        self.functie_rcl.save()
        self.functie_rcl.accounts.add(self.account_rcl)

        # maak de competitie aan die nodig is voor deze tests
        self._create_histcomp()
        self._create_competitie()
Ejemplo n.º 28
0
    def setUp(self):
        """ eenmalige setup voor alle tests
            wordt als eerste aangeroepen
        """

        self.regio_101 = NhbRegio.objects.get(regio_nr=101)

        # maak een test vereniging
        ver = NhbVereniging()
        ver.naam = "Grote Club"
        ver.ver_nr = 1000
        ver.regio = self.regio_101
        # secretaris kan nog niet ingevuld worden
        ver.save()

        obj = HistCompetitie()
        obj.seizoen = '2018/2019'
        obj.comp_type = '25'
        obj.klasse = 'Compound'
        obj.is_team = False
        obj.save()
        self.klasse_pk_leeg = obj.pk

        obj.pk = None
        obj.klasse = 'Recurve'
        obj.save()
        self.klasse_pk = obj.pk

        # maak een jeugdlid aan (komt in BB jeugd zonder klasse onbekend)
        sporter = Sporter()
        sporter.lid_nr = 100002
        sporter.geslacht = "M"
        sporter.voornaam = "Ramon"
        sporter.achternaam = "het Testertje"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=2019 - 15, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2015, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.account = self.e2e_create_account(sporter.lid_nr,
                                                  sporter.email,
                                                  sporter.voornaam)
        sporter.save()

        rec = HistCompetitieIndividueel()
        rec.histcompetitie = obj
        rec.rank = 1
        rec.schutter_nr = sporter.lid_nr
        rec.schutter_naam = "wordt niet gebruikt"
        rec.vereniging_nr = ver.ver_nr
        rec.vereniging_naam = "wordt niet gebruikt"
        rec.score1 = 10
        rec.score2 = 20
        rec.score3 = 30
        rec.score4 = 40
        rec.score5 = 50
        rec.score6 = 60
        rec.score7 = 70
        rec.laagste_score_nr = 1
        rec.totaal = 80
        rec.gemiddelde = 5.321
        rec.save()
        self.indiv_rec_pk = rec.pk

        # maak nog een lid aan, met te weinig scores
        sporter = Sporter()
        sporter.lid_nr = 100003
        sporter.geslacht = "V"
        sporter.voornaam = "Ramona"
        sporter.achternaam = "het Tester"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=1969, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.account = self.e2e_create_account(sporter.lid_nr,
                                                  sporter.email,
                                                  sporter.voornaam)
        sporter.save()

        rec = HistCompetitieIndividueel()
        rec.histcompetitie = obj
        rec.rank = 1
        rec.schutter_nr = sporter.lid_nr
        rec.schutter_naam = "wordt niet gebruikt"
        rec.vereniging_nr = ver.ver_nr
        rec.vereniging_naam = "wordt niet gebruikt"
        rec.score1 = 10
        rec.score2 = 20
        rec.score3 = 30
        rec.score4 = 40
        rec.score5 = 0
        rec.score6 = 0
        rec.score7 = 0
        rec.laagste_score_nr = 1
        rec.totaal = 80
        rec.gemiddelde = 6.123
        rec.save()

        # maak nog een inactief lid aan
        sporter = Sporter()
        sporter.lid_nr = 100004
        sporter.geslacht = "V"
        sporter.voornaam = "Weg"
        sporter.achternaam = "Is Weg"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=1969, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = None
        sporter.account = None
        sporter.save()

        rec = HistCompetitieIndividueel()
        rec.histcompetitie = obj
        rec.rank = 1
        rec.schutter_nr = sporter.lid_nr
        rec.schutter_naam = "wordt niet gebruikt"
        rec.vereniging_nr = ver.ver_nr
        rec.vereniging_naam = "wordt niet gebruikt"
        rec.score1 = 10
        rec.score2 = 20
        rec.score3 = 30
        rec.score4 = 40
        rec.score5 = 50
        rec.score6 = 60
        rec.score7 = 0
        rec.laagste_score_nr = 1
        rec.totaal = 80
        rec.gemiddelde = 7.123
        rec.save()

        # maak nog een record aan voor een lid dat weg is
        rec = HistCompetitieIndividueel()
        rec.histcompetitie = obj
        rec.rank = 1
        rec.schutter_nr = 999999
        rec.schutter_naam = "wordt niet gebruikt"
        rec.vereniging_nr = ver.ver_nr
        rec.vereniging_naam = "wordt niet gebruikt"
        rec.score1 = 10
        rec.score2 = 20
        rec.score3 = 30
        rec.score4 = 40
        rec.score5 = 50
        rec.score6 = 60
        rec.score7 = 70
        rec.laagste_score_nr = 1
        rec.totaal = 80
        rec.gemiddelde = 6.123
        rec.save()

        # maak een aspirant aan (mag niet meedoen)
        sporter = Sporter()
        sporter.lid_nr = 100005
        sporter.geslacht = "M"
        sporter.voornaam = "Appie"
        sporter.achternaam = "Rant"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=2019 - 12, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2015, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.account = self.e2e_create_account(sporter.lid_nr,
                                                  sporter.email,
                                                  sporter.voornaam)
        sporter.save()

        rec = HistCompetitieIndividueel()
        rec.histcompetitie = obj
        rec.rank = 1
        rec.schutter_nr = sporter.lid_nr
        rec.schutter_naam = "wordt niet gebruikt"
        rec.vereniging_nr = ver.ver_nr
        rec.vereniging_naam = "wordt niet gebruikt"
        rec.score1 = 10
        rec.score2 = 20
        rec.score3 = 30
        rec.score4 = 40
        rec.score5 = 50
        rec.score6 = 60
        rec.score7 = 70
        rec.laagste_score_nr = 1
        rec.totaal = 80
        rec.gemiddelde = 9.998
        rec.save()
Ejemplo n.º 29
0
    def setUp(self):
        """ initialisatie van de test case """

        # leden
        sporter = Sporter()
        sporter.lid_nr = 123456
        sporter.voornaam = 'Jan'
        sporter.achternaam = 'Schutter'
        sporter.email = '*****@*****.**'
        sporter.geboorte_datum = parse_date('1970-03-03')
        sporter.woon_straatnaam = 'Papendal'
        sporter.geslacht = 'M'
        sporter.sinds_datum = parse_date("1991-02-03")  # Y-M-D
        sporter.save()

        sporter = Sporter()
        sporter.lid_nr = 123457
        sporter.voornaam = 'Petra'
        sporter.achternaam = 'Schutter'
        sporter.email = '*****@*****.**'
        sporter.geboorte_datum = parse_date('1970-01-30')
        sporter.woon_straatnaam = 'Arnhem'
        sporter.geslacht = 'V'
        sporter.sinds_datum = parse_date("1991-02-05")  # Y-M-D
        sporter.save()

        # Record 42
        rec = IndivRecord()
        rec.volg_nr = 42
        rec.discipline = DISCIPLINE[0][0]  # OD
        rec.soort_record = 'WA1440'
        rec.geslacht = GESLACHT[0][0]  # M
        rec.leeftijdscategorie = LEEFTIJDSCATEGORIE[0][0]  # M
        rec.materiaalklasse = MATERIAALKLASSE[0][0]  # R
        # rec.materiaalklasse_overig =
        rec.sporter = sporter
        rec.naam = 'Top Schutter'
        rec.datum = parse_date('2017-08-27')
        rec.plaats = 'Papendal'
        rec.land = 'Nederland'
        rec.score = 1234
        rec.max_score = 5678
        rec.x_count = 56
        # rec.score_notitie =
        # rec.is_european_record =
        # rec.is_world_record =
        rec.save()

        # Record 43
        rec = IndivRecord()
        rec.volg_nr = 43
        rec.discipline = DISCIPLINE[1][0]  # 18
        rec.soort_record = '18m (60p)'
        rec.geslacht = GESLACHT[1][0]  # V
        rec.leeftijdscategorie = LEEFTIJDSCATEGORIE[1][0]  # S
        rec.materiaalklasse = 'R'  # Recurve
        rec.para_klasse = 'Open'
        # rec.sporter =
        rec.naam = 'Top Schutter 2'
        rec.datum = datetime.datetime.now()
        rec.plaats = 'Ergens Anders'
        rec.land = 'Nederland'
        rec.score = 1235
        # rec.score_notitie =
        # rec.is_european_record =
        # rec.is_world_record =
        rec.save()

        # Record 44
        rec = IndivRecord()
        rec.volg_nr = 44
        rec.discipline = DISCIPLINE[2][0]  # 25
        rec.soort_record = '25m'
        rec.geslacht = GESLACHT[1][0]  # V
        rec.leeftijdscategorie = LEEFTIJDSCATEGORIE[3][0]  # C
        rec.materiaalklasse = 'R'  # Recurve
        rec.sporter = sporter
        rec.naam = 'Petra Schutter'
        rec.datum = parse_date('2017-08-27')
        rec.plaats = 'Nergens'
        rec.land = 'Niederland'
        rec.score = 249
        # rec.score_notitie =
        # rec.is_european_record =
        # rec.is_world_record =
        rec.save()
Ejemplo n.º 30
0
    def setUp(self):
        """ eenmalige setup voor alle tests
            wordt als eerste aangeroepen
        """

        regio_111 = NhbRegio.objects.get(regio_nr=111)

        # maak een test vereniging
        ver = NhbVereniging()
        ver.naam = "Grote Club"
        ver.ver_nr = "1000"
        ver.regio = regio_111
        # secretaris kan nog niet ingevuld worden
        ver.save()

        # maak de HWL functie
        self.functie_hwl = maak_functie("HWL test", "HWL")
        self.functie_hwl.nhb_ver = ver
        self.functie_hwl.save()

        # maak het lid aan dat HWL wordt
        sporter = Sporter()
        sporter.lid_nr = 100001
        sporter.geslacht = "M"
        sporter.voornaam = "Ramon"
        sporter.achternaam = "de Tester"
        sporter.email = "*****@*****.**"
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.save()
        self.sporter_100001 = sporter

        self.account_hwl = self.e2e_create_account(sporter.lid_nr,
                                                   sporter.email,
                                                   sporter.voornaam,
                                                   accepteer_vhpg=True)
        self.functie_hwl.accounts.add(self.account_hwl)

        # maak een jeugdlid aan
        sporter = Sporter()
        sporter.lid_nr = 100002
        sporter.geslacht = "V"
        sporter.voornaam = "Ramona"
        sporter.achternaam = "de Jeugdschutter"
        sporter.email = ""
        sporter.geboorte_datum = datetime.date(year=2010, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.save()

        # maak een senior lid aan
        sporter = Sporter()
        sporter.lid_nr = 100003
        sporter.geslacht = "V"
        sporter.voornaam = "Ramona"
        sporter.achternaam = "de Testerin"
        sporter.email = ""
        sporter.geboorte_datum = datetime.date(year=1972, month=3, day=4)
        sporter.sinds_datum = datetime.date(year=2010, month=11, day=12)
        sporter.bij_vereniging = ver
        sporter.save()
        self.sporter_100003 = sporter