4932bcc3d9
Signed-off-by: dab246 <tdvu@linagora.com>
59 lines
2.0 KiB
Bash
Executable File
59 lines
2.0 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Define users and folders
|
|
users=("alice" "bob" "brian" "charlotte" "david" "emma")
|
|
bobFolders=("Search Emails" "Forward Emails" "Disposition")
|
|
|
|
# Add users
|
|
for user in "${users[@]}"; do
|
|
james-cli AddUser "$user@example.com" "$user"
|
|
done
|
|
|
|
# Create folders for user Bob
|
|
for folderName in "${bobFolders[@]}"; do
|
|
echo "Creating $folderName folder for user bob"
|
|
james-cli CreateMailbox \#private "bob@example.com" "$folderName"
|
|
done
|
|
|
|
# Function to check if mailbox exists
|
|
function wait_for_mailbox() {
|
|
local email="$1"
|
|
local folder="$2"
|
|
local retries=10
|
|
local count=0
|
|
|
|
while [ $count -lt $retries ]; do
|
|
if james-cli ListUserMailboxes "$email" | grep -q "$folder"; then
|
|
echo "Mailbox '$folder' for user '$email' is ready."
|
|
return 0
|
|
fi
|
|
echo "Waiting for mailbox '$folder' to be created..."
|
|
sleep 2
|
|
((count++))
|
|
done
|
|
|
|
echo "Error: Mailbox '$folder' for user '$email' was not created in time."
|
|
return 1
|
|
}
|
|
|
|
# Ensure all mailboxes exist before importing emails
|
|
for folderName in "${bobFolders[@]}"; do
|
|
wait_for_mailbox "bob@example.com" "$folderName" || exit 1
|
|
done
|
|
|
|
# For test search email with sort order
|
|
# Import emails into 'Search Emails' folder for user Bob
|
|
for eml in {0..4}; do
|
|
echo "Importing $eml.eml into 'Search Emails' folder for user bob"
|
|
james-cli ImportEml \#private "bob@example.com" "Search Emails" "/root/conf/integration_test/eml/search_email_with_sort_order/$eml.eml"
|
|
done
|
|
|
|
# For test forward email
|
|
# Import emails into 'Forward Emails' folder for user Bob
|
|
echo "Importing 0.eml into 'Forward Emails' folder for user bob"
|
|
james-cli ImportEml \#private "bob@example.com" "Forward Emails" "/root/conf/integration_test/eml/forward_email/0.eml"
|
|
|
|
# For test email with no-disposition inline image
|
|
# Import email into 'Disposition' folder for user Bob
|
|
echo "Importing no_disposition_inline.eml into 'Disposition' folder for user bob"
|
|
james-cli ImportEml \#private "bob@example.com" "Disposition" "/root/conf/integration_test/eml/no_disposition_inline/no_disposition_inline.eml" |