mirror of
https://github.com/firestar5683/StarPilot.git
synced 2026-09-30 19:33:45 +08:00
params: cleanup old params that aren't defined (#28017)
* delete files that are not defined in the keys * assert after create file * remove util::remove_files_in_dir * cleanup * fix up test --------- Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com> old-commit-hash: 10a1b8b7b172420047fab5caa84829dd510e1e38
This commit is contained in:
@@ -1,7 +1,9 @@
|
||||
import os
|
||||
import threading
|
||||
import time
|
||||
import tempfile
|
||||
import shutil
|
||||
import uuid
|
||||
import unittest
|
||||
|
||||
from common.params import Params, ParamKeyType, UnknownKeyName, put_nonblocking, put_bool_nonblocking
|
||||
@@ -28,9 +30,16 @@ class TestParams(unittest.TestCase):
|
||||
self.params.put("CarParams", "test")
|
||||
self.params.put("DongleId", "cb38263377b873ee")
|
||||
assert self.params.get("CarParams") == b"test"
|
||||
|
||||
undefined_param = self.params.get_param_path(uuid.uuid4().hex)
|
||||
with open(undefined_param, "w") as f:
|
||||
f.write("test")
|
||||
assert os.path.isfile(undefined_param)
|
||||
|
||||
self.params.clear_all(ParamKeyType.CLEAR_ON_MANAGER_START)
|
||||
assert self.params.get("CarParams") is None
|
||||
assert self.params.get("DongleId") is not None
|
||||
assert not os.path.isfile(undefined_param)
|
||||
|
||||
def test_params_two_things(self):
|
||||
self.params.put("DongleId", "bob")
|
||||
|
||||
@@ -143,20 +143,3 @@ TEST_CASE("util::create_directories") {
|
||||
REQUIRE(util::create_directories("", 0755) == false);
|
||||
}
|
||||
}
|
||||
|
||||
TEST_CASE("util::remove_files_in_dir") {
|
||||
std::string tmp_dir = "/tmp/test_remove_all_in_dir";
|
||||
system("rm /tmp/test_remove_all_in_dir -rf");
|
||||
REQUIRE(util::create_directories(tmp_dir, 0755));
|
||||
const int tmp_file_cnt = 10;
|
||||
for (int i = 0; i < tmp_file_cnt; ++i) {
|
||||
std::string tmp_file = tmp_dir + "/test_XXXXXX";
|
||||
int fd = mkstemp((char*)tmp_file.c_str());
|
||||
close(fd);
|
||||
REQUIRE(util::file_exists(tmp_file.c_str()));
|
||||
}
|
||||
|
||||
REQUIRE(util::read_files_in_dir(tmp_dir).size() == tmp_file_cnt);
|
||||
util::remove_files_in_dir(tmp_dir);
|
||||
REQUIRE(util::read_files_in_dir(tmp_dir).empty());
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user