diff options
Diffstat (limited to 'src/fs/test_gnunet_fs_psd.py.in')
-rwxr-xr-x | src/fs/test_gnunet_fs_psd.py.in | 75 |
1 files changed, 61 insertions, 14 deletions
diff --git a/src/fs/test_gnunet_fs_psd.py.in b/src/fs/test_gnunet_fs_psd.py.in index a1e4db9d5..abb3d0b83 100755 --- a/src/fs/test_gnunet_fs_psd.py.in +++ b/src/fs/test_gnunet_fs_psd.py.in | |||
@@ -11,7 +11,7 @@ | |||
11 | # WITHOUT ANY WARRANTY; without even the implied warranty of | 11 | # WITHOUT ANY WARRANTY; without even the implied warranty of |
12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
13 | # Affero General Public License for more details. | 13 | # Affero General Public License for more details. |
14 | # | 14 | # |
15 | # You should have received a copy of the GNU Affero General Public License | 15 | # You should have received a copy of the GNU Affero General Public License |
16 | # along with this program. If not, see <http://www.gnu.org/licenses/>. | 16 | # along with this program. If not, see <http://www.gnu.org/licenses/>. |
17 | # | 17 | # |
@@ -38,8 +38,8 @@ except NameError: | |||
38 | reload(sys) | 38 | reload(sys) |
39 | 39 | ||
40 | # Force encoding to utf-8, as this test otherwise fails | 40 | # Force encoding to utf-8, as this test otherwise fails |
41 | # on some systems (see #5094). In Python 3+ there is no attribute | 41 | # on some systems (see #5094). In Python 3+ there is no attribute |
42 | # sys.setdefaultencoding anymore. | 42 | # sys.setdefaultencoding anymore. |
43 | if (3 < sys.version_info[0]): | 43 | if (3 < sys.version_info[0]): |
44 | sys.setdefaultencoding('utf8') | 44 | sys.setdefaultencoding('utf8') |
45 | 45 | ||
@@ -68,9 +68,11 @@ if "GNUNET_PREFIX" in os.environ: | |||
68 | else: | 68 | else: |
69 | print("You need to export GNUNET_PREFIX") | 69 | print("You need to export GNUNET_PREFIX") |
70 | sys.exit(1) | 70 | sys.exit(1) |
71 | 71 | ||
72 | if os.name == "nt": | 72 | if os.name == "nt": |
73 | shutil.rmtree(os.path.join(os.getenv("TEMP"), "gnunet-test-fs-py-psd"), True) | 73 | shutil.rmtree( |
74 | os.path.join(os.getenv("TEMP"), "gnunet-test-fs-py-psd"), True | ||
75 | ) | ||
74 | else: | 76 | else: |
75 | shutil.rmtree("/tmp/gnunet-test-fs-py-psd", True) | 77 | shutil.rmtree("/tmp/gnunet-test-fs-py-psd", True) |
76 | 78 | ||
@@ -80,23 +82,68 @@ arm.communicate() | |||
80 | # first, basic publish-search-download run | 82 | # first, basic publish-search-download run |
81 | try: | 83 | try: |
82 | pub = pexpect() | 84 | pub = pexpect() |
83 | pub.spawn(None, [publish, '-c', 'test_gnunet_fs_psd_data.conf', '-n', '-m', "description:Test archive", '-k', 'tst', 'test_gnunet_fs_rec_data.tgz'], stdout=subprocess.PIPE, stderr=subprocess.STDOUT) | 85 | pub.spawn( |
84 | pub.expect("stdout", re.compile(r"Publishing `.+test_gnunet_fs_rec_data.tgz' done\.\r?\n")) | 86 | None, [ |
85 | pub.expect("stdout", re.compile(r"URI is `gnunet://fs/chk/2ZMHKPV74CB6GB1GFKQRR95BXJQA2SER25FN48GAW7WSBPA0GDEM5Y74V1ZJHM0NA6919TVW376BHTFDRE3RYS0KRY92M1QJVKPHFCR\.49BT3V5C10KA1695JF71FCT8ZZG4JMJSH04BD9CT22R6KEM915A7CEST17RD0QYTHXV5M4HHEGJMEZSFRDB7JAYC0EMJAN2V781E9DG\.17822'\.\r?\n")) | 87 | publish, '-c', 'test_gnunet_fs_psd_data.conf', '-n', '-m', |
88 | "description:Test archive", '-k', 'tst', | ||
89 | 'test_gnunet_fs_rec_data.tgz' | ||
90 | ], | ||
91 | stdout=subprocess.PIPE, | ||
92 | stderr=subprocess.STDOUT | ||
93 | ) | ||
94 | pub.expect( | ||
95 | "stdout", | ||
96 | re.compile(r"Publishing `.+test_gnunet_fs_rec_data.tgz' done\.\r?\n") | ||
97 | ) | ||
98 | pub.expect( | ||
99 | "stdout", | ||
100 | re.compile( | ||
101 | r"URI is `gnunet://fs/chk/2ZMHKPV74CB6GB1GFKQRR95BXJQA2SER25FN48GAW7WSBPA0GDEM5Y74V1ZJHM0NA6919TVW376BHTFDRE3RYS0KRY92M1QJVKPHFCR\.49BT3V5C10KA1695JF71FCT8ZZG4JMJSH04BD9CT22R6KEM915A7CEST17RD0QYTHXV5M4HHEGJMEZSFRDB7JAYC0EMJAN2V781E9DG\.17822'\.\r?\n" | ||
102 | ) | ||
103 | ) | ||
86 | 104 | ||
87 | s = pexpect() | 105 | s = pexpect() |
88 | s.spawn(None, [search, '-V', '-t', '1000 ms', '-N', '1', '-c', 'test_gnunet_fs_psd_data.conf', 'tst'], stdout=subprocess.PIPE, stderr=subprocess.STDOUT) | 106 | s.spawn( |
89 | s.expect("stdout", re.compile(r'gnunet-download -o "test_gnunet_fs_rec_data.tgz" gnunet://fs/chk/2ZMHKPV74CB6GB1GFKQRR95BXJQA2SER25FN48GAW7WSBPA0GDEM5Y74V1ZJHM0NA6919TVW376BHTFDRE3RYS0KRY92M1QJVKPHFCR\.49BT3V5C10KA1695JF71FCT8ZZG4JMJSH04BD9CT22R6KEM915A7CEST17RD0QYTHXV5M4HHEGJMEZSFRDB7JAYC0EMJAN2V781E9DG\.17822\r?\n')) | 107 | None, [ |
108 | search, '-V', '-t', '1000 ms', '-N', '1', '-c', | ||
109 | 'test_gnunet_fs_psd_data.conf', 'tst' | ||
110 | ], | ||
111 | stdout=subprocess.PIPE, | ||
112 | stderr=subprocess.STDOUT | ||
113 | ) | ||
114 | s.expect( | ||
115 | "stdout", | ||
116 | re.compile( | ||
117 | r'gnunet-download -o "test_gnunet_fs_rec_data.tgz" gnunet://fs/chk/2ZMHKPV74CB6GB1GFKQRR95BXJQA2SER25FN48GAW7WSBPA0GDEM5Y74V1ZJHM0NA6919TVW376BHTFDRE3RYS0KRY92M1QJVKPHFCR\.49BT3V5C10KA1695JF71FCT8ZZG4JMJSH04BD9CT22R6KEM915A7CEST17RD0QYTHXV5M4HHEGJMEZSFRDB7JAYC0EMJAN2V781E9DG\.17822\r?\n' | ||
118 | ) | ||
119 | ) | ||
90 | 120 | ||
91 | down = pexpect() | 121 | down = pexpect() |
92 | down.spawn(None, [download, '-c', 'test_gnunet_fs_psd_data.conf', '-o', 'test_gnunet_fs_rec_data.tar.gz', 'gnunet://fs/chk/2ZMHKPV74CB6GB1GFKQRR95BXJQA2SER25FN48GAW7WSBPA0GDEM5Y74V1ZJHM0NA6919TVW376BHTFDRE3RYS0KRY92M1QJVKPHFCR.49BT3V5C10KA1695JF71FCT8ZZG4JMJSH04BD9CT22R6KEM915A7CEST17RD0QYTHXV5M4HHEGJMEZSFRDB7JAYC0EMJAN2V781E9DG.17822'], stdout=subprocess.PIPE, stderr=subprocess.STDOUT) | 122 | down.spawn( |
93 | down.expect("stdout", re.compile(r"Downloading `test_gnunet_fs_rec_data.tar.gz' done (.*).\r?\n")) | 123 | None, [ |
124 | download, '-c', 'test_gnunet_fs_psd_data.conf', '-o', | ||
125 | 'test_gnunet_fs_rec_data.tar.gz', | ||
126 | 'gnunet://fs/chk/2ZMHKPV74CB6GB1GFKQRR95BXJQA2SER25FN48GAW7WSBPA0GDEM5Y74V1ZJHM0NA6919TVW376BHTFDRE3RYS0KRY92M1QJVKPHFCR.49BT3V5C10KA1695JF71FCT8ZZG4JMJSH04BD9CT22R6KEM915A7CEST17RD0QYTHXV5M4HHEGJMEZSFRDB7JAYC0EMJAN2V781E9DG.17822' | ||
127 | ], | ||
128 | stdout=subprocess.PIPE, | ||
129 | stderr=subprocess.STDOUT | ||
130 | ) | ||
131 | down.expect( | ||
132 | "stdout", | ||
133 | re.compile( | ||
134 | r"Downloading `test_gnunet_fs_rec_data.tar.gz' done (.*).\r?\n" | ||
135 | ) | ||
136 | ) | ||
94 | os.remove("test_gnunet_fs_rec_data.tar.gz") | 137 | os.remove("test_gnunet_fs_rec_data.tar.gz") |
95 | 138 | ||
96 | finally: | 139 | finally: |
97 | arm = subprocess.Popen([gnunetarm, '-eq', '-c', 'test_gnunet_fs_psd_data.conf']) | 140 | arm = subprocess.Popen([ |
141 | gnunetarm, '-eq', '-c', 'test_gnunet_fs_psd_data.conf' | ||
142 | ]) | ||
98 | arm.communicate() | 143 | arm.communicate() |
99 | if os.name == "nt": | 144 | if os.name == "nt": |
100 | shutil.rmtree(os.path.join(os.getenv("TEMP"), "gnunet-test-fs-py-psd"), True) | 145 | shutil.rmtree( |
146 | os.path.join(os.getenv("TEMP"), "gnunet-test-fs-py-psd"), True | ||
147 | ) | ||
101 | else: | 148 | else: |
102 | shutil.rmtree("/tmp/gnunet-test-fs-py-psd", True) | 149 | shutil.rmtree("/tmp/gnunet-test-fs-py-psd", True) |