Files
HowBadIsMyBatch/src/BatchcodeCompletionTest.py
frankknoll 7f0d5b66fb refactoring
2023-03-24 23:39:26 +01:00

84 lines
2.8 KiB
Python

import unittest
from TestHelper import TestHelper
from BatchcodeCompletion import BatchcodeCompletion
import pandas as pd
import numpy as np
class BatchcodeCompletionTest(unittest.TestCase):
def test_completeBatchcode(self):
# Given
ADR_by_Batchcode = TestHelper.createDataFrame(
columns = ['Adverse Reaction Reports'],
data = [ [1],
[200],
[149]],
index = pd.Index(
[
'LOT000057A',
'030L20B',
'000057A'
],
name = 'VAX_LOT'))
batchcodeCompletion = BatchcodeCompletion(ADR_by_Batchcode)
# When
completedBatchcode = batchcodeCompletion.completeBatchcode('000057')
# Then
self.assertEqual(completedBatchcode, '000057A')
def test_completeBatchcode_no_completion(self):
# Given
ADR_by_Batchcode = TestHelper.createDataFrame(
columns = ['Adverse Reaction Reports'],
data = [ [1],
[200],
[149]],
index = pd.Index(
[
'LOT000057A',
'030L20B',
'000057A'
],
name = 'VAX_LOT'))
batchcodeCompletion = BatchcodeCompletion(ADR_by_Batchcode)
# When
completedBatchcode = batchcodeCompletion.completeBatchcode('non existing batch code')
# Then
self.assertIsNone(completedBatchcode)
def test_completeBatchcode_NaN(self):
# Given
ADR_by_Batchcode = TestHelper.createDataFrame(
columns = ['Adverse Reaction Reports'],
data = [],
index = pd.Index(
[],
name = 'VAX_LOT'))
batchcodeCompletion = BatchcodeCompletion(ADR_by_Batchcode)
# When
completedBatchcode = batchcodeCompletion.completeBatchcode(np.NaN)
# Then
self.assertIsNone(completedBatchcode)
def test_completeBatchcode_empty_ADR_by_Batchcode(self):
# Given
ADR_by_Batchcode = TestHelper.createDataFrame(
columns = ['Adverse Reaction Reports'],
data = [],
index = pd.Index(
[],
name = 'VAX_LOT'))
batchcodeCompletion = BatchcodeCompletion(ADR_by_Batchcode)
# When
completedBatchcode = batchcodeCompletion.completeBatchcode('non existing batch code')
# Then
self.assertIsNone(completedBatchcode)