diff --git a/CHANGES b/CHANGES
index 79863cbe9124028fc87fdab98aa1c8171341faa0..8ca34603a44ef7d2825f5e2d09d884c71cd59364 100644
--- a/CHANGES
+++ b/CHANGES
@@ -6,6 +6,9 @@
 
                                   Changelog
 
+Dan F (17 April 2007)
+- Added test cases 296, 297 and 298 to test --ftp-method handling
+
 Daniel S (16 April 2007)
 - Robert Iakobashvil added curl_multi_socket_action() to libcurl, which is a
   function that deprecates the curl_multi_socket() function. Using the new
diff --git a/tests/data/Makefile.am b/tests/data/Makefile.am
index 70731e325773dfbdadd4ed567da379b817c9ffde..c877d5782525895b380a51585ae4c208db7dc713 100644
--- a/tests/data/Makefile.am
+++ b/tests/data/Makefile.am
@@ -39,4 +39,5 @@ EXTRA_DIST = test1 test108 test117 test127 test20 test27 test34 test46	   \
  test534 test535 test281 test537 test282 test283 test284 test538 test285   \
  test286 test307 test308 test287 test400 test288 test600 test601 test602   \
  test603 test401 test402 test290 test291 test292 test293 test403 test404   \
- test405 test604 test605 test606 test607 test608 test609 test294 test295
+ test405 test604 test605 test606 test607 test608 test609 test294 test295   \
+ test296 test297 test298
diff --git a/tests/data/test296 b/tests/data/test296
new file mode 100644
index 0000000000000000000000000000000000000000..2008c8bfd82654940ea0ad359052e65ddd7e0487
--- /dev/null
+++ b/tests/data/test296
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+CWD
+--ftp-method
+multicwd
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+bla bla bla
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP CWD with --ftp-method multicwd
+ </name>
+ <command>
+--ftp-method multicwd ftp://%HOSTIP:%FTPPORT/first/second/third/296
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous
+PASS ftp@example.com
+PWD
+CWD first
+CWD second
+CWD third
+EPSV
+TYPE I
+SIZE 296
+RETR 296
+QUIT
+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test297 b/tests/data/test297
new file mode 100644
index 0000000000000000000000000000000000000000..36573f8b91b74db93b3642afe7047dcf5b6c5bed
--- /dev/null
+++ b/tests/data/test297
@@ -0,0 +1,46 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+CWD
+--ftp-method
+singlecwd
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+bla bla bla
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP CWD with --ftp-method singlecwd
+ </name>
+ <command>
+--ftp-method singlecwd ftp://%HOSTIP:%FTPPORT/first/second/third/297
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous
+PASS ftp@example.com
+PWD
+CWD first/second/third
+EPSV
+TYPE I
+SIZE 297
+RETR 297
+QUIT
+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test298 b/tests/data/test298
new file mode 100644
index 0000000000000000000000000000000000000000..80913e84bbc5759f61c1bd109df0107b7a5958df
--- /dev/null
+++ b/tests/data/test298
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+FTP
+PASV
+CWD
+--ftp-method
+nocwd
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+bla bla bla
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+ <name>
+FTP CWD with --ftp-method nocwd
+ </name>
+ <command>
+--ftp-method nocwd ftp://%HOSTIP:%FTPPORT/first/second/third/298
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+USER anonymous
+PASS ftp@example.com
+PWD
+EPSV
+TYPE I
+SIZE first/second/third/298
+RETR first/second/third/298
+QUIT
+</protocol>
+</verify>
+</testcase>