/* KLayout Layout Viewer Copyright (C) 2006-2018 Matthias Koefferlein This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ #include "tlHttpStream.h" #include "tlUnitTest.h" static std::string test_url1 ("http://www.klayout.org/svn-public/klayout-resources/trunk/testdata/text"); static std::string test_url2 ("http://www.klayout.org/svn-public/klayout-resources/trunk/testdata/dir1"); TEST(1) { tl::InputHttpStream stream (test_url1); char b[100]; size_t n = stream.read (b, sizeof (b)); std::string res (b, n); EXPECT_EQ (res, "hello, world.\n"); } TEST(2) { tl::InputHttpStream stream (test_url2); stream.add_header ("User-Agent", "SVN"); stream.add_header ("Depth", "1"); stream.set_request ("PROPFIND"); stream.set_data (""); char b[10000]; size_t n = stream.read (b, sizeof (b)); std::string res (b, n); EXPECT_EQ (res, "\n" "\n" "\n" "/svn-public/klayout-resources/trunk/testdata/dir1/\n" "\n" "\n" "\n" "\n" "HTTP/1.1 200 OK\n" "\n" "\n" "\n" "/svn-public/klayout-resources/trunk/testdata/dir1/text\n" "\n" "\n" "\n" "\n" "HTTP/1.1 200 OK\n" "\n" "\n" "\n" ); }