예제 #1
0
class BulkTest(TestCase):
    """
    Bulk testen.
    """

    # ------------------------------------------------------------------------------------------------------------------
    def __init__(self, method_name='runTest'):
        """
        Object constructor.
        """
        TestCase.__init__(self, method_name)

        self.__grouper = Kerapu()
        self.__grouper.init_static('test/var/lib')

    # ------------------------------------------------------------------------------------------------------------------
    def __bepaal_zorgproduct(self, subtraject, expected):
        """
        Bepaalt de zorgproductcode van een subtraject.

        :param kerapu.lbz.Subtraject.Subtraject subtraject: Het subtraject.
        """
        zorg_product_code = self.__grouper.bepaal_zorg_product(subtraject)
        self.assertEqual(zorg_product_code, expected,
                         subtraject.subtraject_nummer)

    # ------------------------------------------------------------------------------------------------------------------
    def bulk_test_file(self, filename):
        """
        Tests against a file with test cases.

        :type: str filename The file with test cases.
        """
        with open(filename, 'rt', encoding='utf-8') as handle:
            csv_reader = csv.reader(handle, lineterminator='\n', delimiter=',')

            subtraject = None
            zorg_product_code = None
            for rij in csv_reader:
                if subtraject and len(rij) > 2:
                    self.__bepaal_zorgproduct(subtraject, zorg_product_code)
                    subtraject = None

                if len(rij) == 2:
                    subtraject.add_zorg_activiteit(rij[0], rij[1])
                else:
                    subtraject = Subtraject(rij[0], rij[1], rij[2], rij[3],
                                            rij[4], rij[5], rij[6], rij[7],
                                            rij[8])
                    zorg_product_code = rij[9]

            if subtraject:
                self.__bepaal_zorgproduct(subtraject, zorg_product_code)

    # ------------------------------------------------------------------------------------------------------------------
    def test01(self):
        """
        Bulk test.
        """
        self.bulk_test_file('test/var/lib/testset.csv')
예제 #2
0
    def __init__(self, method_name='runTest'):
        """
        Object constructor.
        """
        TestCase.__init__(self, method_name)

        self.__grouper = Kerapu()
        self.__grouper.init_static('test/var/lib')
예제 #3
0
    def test1(self):
        """
        Test voorbeeld 1.
        """
        # Maak een Grouper object en laad boombestanden en referentietabellen.
        grouper = Kerapu()
        grouper.init_static('test/var/lib')

        # Maak een subtraject object.
        subtraject = Subtraject(
            '1',  # Subtrajectnummer
            '0303',  # Zorgverlenerspecificatiecode
            '0280',  # Diagnosecode
            '11',  # Zorgtypecode
            '000',  # Zorgvraagcode
            '2012-01-01',  # Begindatum subtraject
            '2000-01-01',  # Geboortedatum
            'M')  # Geslachtscode

        # Voeg uitgevoerde zorgactiviteiten aan het subtraject toe.
        subtraject.add_zorg_activiteit('038940', 1)
        subtraject.add_zorg_activiteit('038941', 1)
        subtraject.add_zorg_activiteit('190012', 1)
        subtraject.add_zorg_activiteit('190015', 1)

        # Bepaal zorgproductgroep en zorgproduct.
        zorg_product_groep_code = grouper.bepaal_zorg_product_groep(subtraject)
        zorg_product_code = grouper.bepaal_zorg_product(
            subtraject, zorg_product_groep_code)
        self.assertEqual(zorg_product_code, '199299012')
예제 #4
0
class VoorbeeldTest(TestCase):
    """
    Test cases als in voorbeelden.
    """

    # ------------------------------------------------------------------------------------------------------------------
    def __init__(self, method_name='runTest'):
        """
        Object constructor.
        """
        TestCase.__init__(self, method_name)

        self.__grouper = Kerapu()
        self.__grouper.init_static('test/var/lib')

    # ------------------------------------------------------------------------------------------------------------------
    def test00(self):
        """
        Test voorbeeld 0, geen verrichtingen, door niemand.
        """
        # Maak een subtraject object.
        subtraject = Subtraject('1', '0000', '0000', '00', '000', '2012-01-01',
                                '2000-01-01', 'M', '01234567')

        # Bepaal zorgproductgroep en zorgproduct.
        zorg_product_code = self.__grouper.bepaal_zorg_product(subtraject)
        self.assertEqual(zorg_product_code, '019999018')
        self.assertEqual(subtraject.zorg_product_groep_code, '019999')
        self.assertEqual(subtraject.zorg_product_code, '019999018')

    # ------------------------------------------------------------------------------------------------------------------
    def test01(self):
        """
        Test voorbeeld 1.
        """
        # Maak een subtraject object.
        subtraject = Subtraject('1', '0303', '0280', '11', '000', '2012-01-01',
                                '2000-01-01', 'M', '01234567')

        # Voeg uitgevoerde zorgactiviteiten aan het subtraject toe.
        subtraject.add_zorg_activiteit('038940', 1)
        subtraject.add_zorg_activiteit('038941', 1)
        subtraject.add_zorg_activiteit('190012', 1)
        subtraject.add_zorg_activiteit('190015', 1)

        # Bepaal zorgproductgroep en zorgproduct.
        zorg_product_code = self.__grouper.bepaal_zorg_product(subtraject)
        self.assertEqual(zorg_product_code, '199299012')
        self.assertEqual(subtraject.zorg_product_groep_code, '199299')
        self.assertEqual(subtraject.zorg_product_code, '199299012')

    # ------------------------------------------------------------------------------------------------------------------
    def test02(self):
        """
        Test voorbeeld 2.
        """
        # Maak een subtraject object.
        subtraject = Subtraject('1', '0305', '1805', '11', '000', '2019-02-01',
                                '1971-09-01', 'M', '01234567')

        # Voeg uitgevoerde zorgactiviteiten aan het subtraject toe.
        subtraject.add_zorg_activiteit('039460', 1)
        subtraject.add_zorg_activiteit('190013', 1)

        # Bepaal zorgproductgroep en zorgproduct.
        zorg_product_code = self.__grouper.bepaal_zorg_product(subtraject)
        self.assertEqual(zorg_product_code, '131999165')
        self.assertEqual(subtraject.zorg_product_groep_code, '131999')
        self.assertEqual(subtraject.zorg_product_code, '131999165')

    # ------------------------------------------------------------------------------------------------------------------
    def test03(self):
        """
        Test voorbeeld 3.
        """
        # Maak een subtraject object.
        subtraject = Subtraject('1', '0305', '2055', '11', '000', '2019-03-01',
                                '1960-02-01', 'M', '01234567')

        # Voeg uitgevoerde zorgactiviteiten aan het subtraject toe.
        subtraject.add_zorg_activiteit('089602', 1)
        subtraject.add_zorg_activiteit('190013', 1)
        subtraject.add_zorg_activiteit('190060', 1)

        # Bepaal zorgproductgroep en zorgproduct.
        zorg_product_code = self.__grouper.bepaal_zorg_product(subtraject)
        self.assertEqual(zorg_product_code, '131999228')
        self.assertEqual(subtraject.zorg_product_groep_code, '131999')
        self.assertEqual(subtraject.zorg_product_code, '131999228')

    # ------------------------------------------------------------------------------------------------------------------
    def test04(self):
        """
        Test voorbeeld 4.
        """
        # Maak een subtraject object.
        subtraject = Subtraject('1', '0305', '3409', '11', '000', '2019-03-01',
                                '1948-12-01', 'M', '01234567')

        # Voeg uitgevoerde zorgactiviteiten aan het subtraject toe.
        subtraject.add_zorg_activiteit('089090', 1)
        subtraject.add_zorg_activiteit('089602', 1)
        subtraject.add_zorg_activiteit('190013', 1)
        subtraject.add_zorg_activiteit('190060', 1)

        # Bepaal zorgproductgroep en zorgproduct.
        zorg_product_code = self.__grouper.bepaal_zorg_product(subtraject)
        self.assertEqual(zorg_product_code, '199299119')
        self.assertEqual(subtraject.zorg_product_groep_code, '199299')
        self.assertEqual(subtraject.zorg_product_code, '199299119')

    # ------------------------------------------------------------------------------------------------------------------
    def test05(self):
        """
        Test voorbeeld 5.
        """
        # Maak een subtraject object.
        subtraject = Subtraject('1', '0308', '2501', '11', '000', '2019-05-01',
                                '1961-11-01', 'M', '01234567')

        # Voeg uitgevoerde zorgactiviteiten aan het subtraject toe.
        subtraject.add_zorg_activiteit('190060', 1)

        # Bepaal zorgproductgroep en zorgproduct.
        zorg_product_code = self.__grouper.bepaal_zorg_product(subtraject)
        self.assertEqual(zorg_product_code, '131999277')
        self.assertEqual(subtraject.zorg_product_groep_code, '131999')
        self.assertEqual(subtraject.zorg_product_code, '131999277')
예제 #5
0
class BulkTest(TestCase):
    """
    Bulk testen.
    """

    # ------------------------------------------------------------------------------------------------------------------
    def __init__(self, method_name='runTest'):
        """
        Object constructor.
        """
        TestCase.__init__(self, method_name)

        self.__grouper = Kerapu()
        self.__grouper.init_static('test/var/lib')

    # ------------------------------------------------------------------------------------------------------------------
    def __bepaal_zorgproduct(self, subtraject, expected):
        """
        Bepaalt de zorgproductcode van een subtraject.

        :param kerapu.Lbz.Subtraject.Subtraject subtraject: Het subtraject.
        """
        zorg_product_groep_code = self.__grouper.bepaal_zorg_product_groep(
            subtraject)
        subtraject.set_zorg_product_groep_code(zorg_product_groep_code)

        if zorg_product_groep_code != '0':
            zorg_product_code = self.__grouper.bepaal_zorg_product(
                subtraject, zorg_product_groep_code)
            self.assertEqual(zorg_product_code, expected,
                             subtraject.get_subtraject_nummer())

    # ------------------------------------------------------------------------------------------------------------------
    def bulk_test_file(self, filename):
        """
        Tests against a file with test cases.

        :type: str filename The file with test cases.
        """
        with open(filename, 'rt') as handle:
            csv_reader = csv.reader(handle, lineterminator='\n', delimiter=',')

            vorige = None
            subtraject = None
            for rij in csv_reader:
                if vorige and rij[0]:
                    self.__bepaal_zorgproduct(subtraject, vorige[6])
                    vorige = None

                if not vorige:
                    vorige = rij
                    subtraject = Subtraject(rij[0], rij[1], rij[2], rij[3],
                                            rij[4], rij[5], rij[7], rij[8])

                subtraject.add_zorg_activiteit(rij[9], rij[10])

            if vorige:
                self.__bepaal_zorgproduct(subtraject, vorige[6])

    # ------------------------------------------------------------------------------------------------------------------
    def test01(self):
        """
        Bulk test.
        """
        for filename in list(glob.glob('test/var/lib/bulk_test*.csv')):
            self.bulk_test_file(filename)