84 lines
2.1 KiB
Python
84 lines
2.1 KiB
Python
from diceplayer.config.dice_config import DiceConfig
|
|
from diceplayer.config.gaussian_config import GaussianConfig
|
|
from diceplayer.config.player_config import PlayerConfig
|
|
|
|
import unittest
|
|
|
|
|
|
def get_config_dict():
|
|
return {
|
|
"opt": True,
|
|
"mem": 12,
|
|
"maxcyc": 100,
|
|
"nprocs": 4,
|
|
"ncores": 4,
|
|
"dice": {
|
|
"ljname": "test",
|
|
"outname": "test",
|
|
"dens": 1.0,
|
|
"nmol": [1],
|
|
"nstep": [1, 1],
|
|
},
|
|
"gaussian": {
|
|
"level": "test",
|
|
"qmprog": "g16",
|
|
"keywords": "test",
|
|
},
|
|
}
|
|
|
|
|
|
class TestPlayerDTO(unittest.TestCase):
|
|
def setUp(self) -> None:
|
|
self.dice_dto = DiceConfig(
|
|
ljname="test",
|
|
outname="test",
|
|
dens=1.0,
|
|
nmol=[1],
|
|
nstep=[1, 1],
|
|
)
|
|
self.gaussian_dto = GaussianConfig(
|
|
level="test",
|
|
qmprog="g16",
|
|
keywords="test",
|
|
)
|
|
|
|
def test_class_instantiation(self):
|
|
player_dto = PlayerConfig(
|
|
opt=True,
|
|
mem=12,
|
|
maxcyc=100,
|
|
nprocs=4,
|
|
ncores=4,
|
|
dice=self.dice_dto,
|
|
gaussian=self.gaussian_dto,
|
|
)
|
|
|
|
self.assertIsInstance(player_dto, PlayerConfig)
|
|
self.assertIsInstance(player_dto.dice, DiceConfig)
|
|
self.assertIsInstance(player_dto.gaussian, GaussianConfig)
|
|
|
|
def test_min_altsteps(self):
|
|
player_dto = PlayerConfig(
|
|
opt=True,
|
|
mem=12,
|
|
maxcyc=100,
|
|
nprocs=4,
|
|
ncores=4,
|
|
altsteps=100,
|
|
dice=self.dice_dto,
|
|
gaussian=self.gaussian_dto,
|
|
)
|
|
|
|
self.assertEqual(player_dto.altsteps, 20000)
|
|
|
|
def test_from_dict(self):
|
|
player_dto = PlayerConfig.from_dict(get_config_dict())
|
|
|
|
self.assertIsInstance(player_dto, PlayerConfig)
|
|
self.assertIsInstance(player_dto.dice, DiceConfig)
|
|
self.assertIsInstance(player_dto.gaussian, GaussianConfig)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|