You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
*That said, the archive path used in the sample command would have to be updated to match some archive created on Permanent.org*
52
34
53
-
### Challenging Names
35
+
## Testing scope
36
+
37
+
The scope of testing here verifies the possibility of correctly uploading and downloading
38
+
a finite set of file types in a particular size range to [Permanent.org](Permanent.org) using [rclone](https://rclone.org/)
39
+
which talks to permanent using the [SFTP service](https://github.com/PermanentOrg/sftp-service)
40
+
41
+
### What file types are tested?
42
+
43
+
- Text and png images with obscure names generated via [generate-tree.py](generate-tree.py)
44
+
- Images in `.jpg` and `.png` format downloaded from [APOD](https://apod.nasa.gov/apod) via [apod-downloader.py](apod-downloader.py)
45
+
- Compressed files in `.zip` and `.tar`
46
+
- Videos in `.mp4`, `.webm`, `.gifs` and `.3gp` common in mobile devices.
47
+
- Executable files in `.exe`, `.run`, `.sh`, `.dep` and extension-less bin executables.
48
+
49
+
### What test cases are covered?
50
+
51
+
#### Challenging Names
54
52
55
53
Run `./generate-tree.py` to generate test data, which will be placed
56
54
in a new subdirectory named `test-tree/challenging-names`.
@@ -62,6 +60,61 @@ first, of course). See the long comment at the top of
62
60
[upload-test.sh](upload-test.sh) for information about what it's
63
61
trying to do and what problems we know about so far.
64
62
63
+
#### Duplicates
64
+
65
+
A duplicate is a file/folder with exactly the same name. Of course this is not possible on regular file systems but Permanent does support it.
66
+
There is a deduplication algorithm from Permanent that the `sftp-service` relies to ensure that files with identical names on Permanent won't be
67
+
be considered as the same on regular file systems.
68
+
69
+
##### How test duplicate
70
+
71
+
- Create a folder in the test archive of the remote (permanent.org or permanent.dev depending on your test target) e.g 'duplicates'.
72
+
- Upload at least two copies of multiple identical files into the folder `duplicates` for example (`file.txt`, `file.txt`, `file.txt` and `photo.png`, `photo.png` ...)
73
+
- Run the download test script against the duplicate folder. In this case:
- Check download folder and ensure that results looks like:
81
+
82
+
*Result from `tree` program*
83
+
```
84
+
├── file (1).txt
85
+
├── file (2).txt
86
+
├── file.txt
87
+
├── Photo (1).png
88
+
└── Photo.png
89
+
90
+
0 directories, 5 files
91
+
```
92
+
##### Multiple Identical Uploads
93
+
94
+
This test case captures what happens if you sync the same path with unchanged content multiples times.
95
+
96
+
##### How test identical uploads
97
+
98
+
- Generate challenging names if not generated earlier, see [Challenging Names](#challenging-names)
99
+
100
+
Run `./upload-test.py test-tree/challenging-names --only=414 --remote-dir=test-414 --log-file=duplicate-upload-log.txt --remote=prod --archive-path="/archives/QA (0a21-0000)/My Files/"`
101
+
102
+
*Notice the use of the `--only` flag which specifies only files containing the number `414` should be uploaded, you can change this number to follow a string pattern in the generated challenging names but the provide example works just fine.*
103
+
104
+
##### Expected results
105
+
106
+
-`rclone` should report `Sizes identical` and `Unchanged skipping`
0 commit comments