32 lines
1.2 KiB
Python
32 lines
1.2 KiB
Python
import os
|
|
import tempfile
|
|
from unittest.mock import patch
|
|
|
|
import pytest
|
|
|
|
from devices.models.device import Device
|
|
from devices.services.vector import VectorService
|
|
|
|
TMP_DIR_VECTOR = tempfile.TemporaryDirectory()
|
|
|
|
|
|
@patch('devices.services.vector.VECTOR_CONFIG_DIR', TMP_DIR_VECTOR.name)
|
|
@pytest.mark.unit
|
|
@pytest.mark.django_db
|
|
class TestVectorService:
|
|
|
|
def test_create_vector_config(self):
|
|
device = Device.objects.create(ip='2.2.2.2', port='9999', type='firewall')
|
|
assert f'armaif_{device.pk}.toml' not in os.listdir(TMP_DIR_VECTOR.name)
|
|
vector = VectorService(device)
|
|
vector.update_config()
|
|
assert f'armaif_{device.pk}.toml' in os.listdir(TMP_DIR_VECTOR.name)
|
|
|
|
def test_delete_vector_config(self, remove_files_after_test_vector_config):
|
|
device = Device.objects.create(ip='2.2.2.2', port='9999', type='firewall')
|
|
test_file = open(f'{TMP_DIR_VECTOR.name}/armaif_{device.pk}.toml', 'w+')
|
|
test_file.write('123')
|
|
assert f'armaif_{device.pk}.toml' in os.listdir(TMP_DIR_VECTOR.name)
|
|
vector = VectorService(device)
|
|
vector.delete_config()
|
|
assert f'armaif_{device.pk}.toml' not in os.listdir(TMP_DIR_VECTOR.name)
|