aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcoFalke <falke.marco@gmail.com>2022-02-18 12:58:31 +0100
committerMarcoFalke <falke.marco@gmail.com>2022-02-18 15:27:08 +0100
commitfad7ddf9e3710405d727f61d8200d5efed1e705b (patch)
tree2e11da2888fd89ebfd1490337b9ac017fe6c0bb5
parent66636ca438cb65fb18bcaa4540856cef0cee2029 (diff)
test: Run symlink regression tests on Windows
-rw-r--r--src/test/fs_tests.cpp4
-rwxr-xr-xtest/functional/feature_dirsymlinks.py24
2 files changed, 15 insertions, 13 deletions
diff --git a/src/test/fs_tests.cpp b/src/test/fs_tests.cpp
index 313064b294..5875f0218f 100644
--- a/src/test/fs_tests.cpp
+++ b/src/test/fs_tests.cpp
@@ -152,7 +152,7 @@ BOOST_AUTO_TEST_CASE(rename)
fs::remove(path2);
}
-#ifndef WIN32
+#ifndef __MINGW64__ // no symlinks on mingw
BOOST_AUTO_TEST_CASE(create_directories)
{
// Test fs::create_directories workaround.
@@ -174,6 +174,6 @@ BOOST_AUTO_TEST_CASE(create_directories)
fs::remove(symlink);
fs::remove(dir);
}
-#endif // WIN32
+#endif // __MINGW64__
BOOST_AUTO_TEST_SUITE_END()
diff --git a/test/functional/feature_dirsymlinks.py b/test/functional/feature_dirsymlinks.py
index 85c8e27600..288754c04c 100755
--- a/test/functional/feature_dirsymlinks.py
+++ b/test/functional/feature_dirsymlinks.py
@@ -6,9 +6,8 @@
"""
import os
-import sys
-from test_framework.test_framework import BitcoinTestFramework, SkipTest
+from test_framework.test_framework import BitcoinTestFramework
def rename_and_link(*, from_name, to_name):
@@ -16,24 +15,27 @@ def rename_and_link(*, from_name, to_name):
os.symlink(to_name, from_name)
assert os.path.islink(from_name) and os.path.isdir(from_name)
-class SymlinkTest(BitcoinTestFramework):
- def skip_test_if_missing_module(self):
- if sys.platform == 'win32':
- raise SkipTest("Symlinks test skipped on Windows")
+class SymlinkTest(BitcoinTestFramework):
def set_test_params(self):
self.num_nodes = 1
def run_test(self):
+ dir_new_blocks = self.nodes[0].chain_path / "new_blocks"
+ dir_new_chainstate = self.nodes[0].chain_path / "new_chainstate"
self.stop_node(0)
- rename_and_link(from_name=os.path.join(self.nodes[0].datadir, self.chain, "blocks"),
- to_name=os.path.join(self.nodes[0].datadir, self.chain, "newblocks"))
- rename_and_link(from_name=os.path.join(self.nodes[0].datadir, self.chain, "chainstate"),
- to_name=os.path.join(self.nodes[0].datadir, self.chain, "newchainstate"))
+ rename_and_link(
+ from_name=self.nodes[0].chain_path / "blocks",
+ to_name=dir_new_blocks,
+ )
+ rename_and_link(
+ from_name=self.nodes[0].chain_path / "chainstate",
+ to_name=dir_new_chainstate,
+ )
self.start_node(0)
-if __name__ == '__main__':
+if __name__ == "__main__":
SymlinkTest().main()