Received: (from majordom@localhost) by hyperreal.org (8.8.5/8.8.5) id TAA03642; Sun, 5 Oct 1997 19:19:01 -0700 (PDT) Received: from twinlark.arctic.org (twinlark.arctic.org [204.62.130.91]) by hyperreal.org (8.8.5/8.8.5) with SMTP id TAA03635 for ; Sun, 5 Oct 1997 19:18:58 -0700 (PDT) Received: (qmail 22601 invoked by uid 500); 6 Oct 1997 02:19:22 -0000 Date: Sun, 5 Oct 1997 19:19:22 -0700 (PDT) From: Dean Gaudet To: new-httpd@apache.org Subject: virtual host test suite Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="1053580162-2098300980-876104362=:14440" Sender: new-httpd-owner@apache.org Precedence: bulk Reply-To: new-httpd@apache.org Status: O X-Status: This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --1053580162-2098300980-876104362=:14440 Content-Type: TEXT/PLAIN; charset=US-ASCII We may want to create apache/tests and start sticking test suites under there ... or not, they're generally more difficult to maintain. The README follows. Dean This is a basic test of the virtual host functionality. At present it *does not test*: - ServerPath - DNS lookups (specifically, multiple A records is interesting) It does test the basic gear that uses ip addresses and ports to decide what ip-vhost or set of name-vhosts are to be considered. It tests _default_ behaviour with both explicit and wildcard ports. It tests the precedence behaviour -- i.e. earlier vhosts have higher precedence than later vhosts. It has a basic ServerAlias test. It also tests some error conditions. These tests are "white box" tests, i.e. I know how the code is written and I'm testing very specific cases within the code. Black box tests would be nice too. To use: cd conf perl -pi.orig -e "s#/home/dgaudet/ap/vhtest#`pwd`#" *.conf cd .. ./runtest /path/to/httpd Or to run a specific test: ./runtest /path/to/httpd test3 The output looks something like: 127.0.0.1:8080 '' 'vhost1' : passed 127.0.0.1:8080 'vhost1:8080' 'vhost1' : passed 127.0.0.1:8080 'vhost2:8080' 'vhost1' : passed 127.0.0.1:8081 '' 'vhost2' : passed 127.0.0.1:8081 'vhost2:8081' 'vhost2' : passed 127.0.0.1:8081 'vhost1:8081' 'vhost2' : passed 127.0.0.2:8080 '' 'vhost3' : passed The first column is the ipaddr:port connected to. The second column is the Host: header sent ('' means no Host: header sent). The third column is the vhost expected. It probably only works on Linux because it uses the loopback interface for all tests -- and Linux lo0 responds to *all* addresses in 127/8 rather than just 127.0.0.1. You'd probably have to add the following aliases to other boxes: 127.0.0.2 127.0.0.3 127.0.0.4 127.0.0.5 Dean --1053580162-2098300980-876104362=:14440 Content-Type: APPLICATION/octet-stream; name="vhtest.tar.gz" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: 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 3O1mz7oFJWPLdsW2s9j2Rv6rttu3oKz467ti27ti47fk67ifbqbTtt+Gq28j pudeTmy36HeDvP/n7ZH2Arb6f3Z/4f/1LNOUJ0KZ3cr+lwH3y/5X/t9ys+x2 H3BXVCODekP+ef/vCPqv97sr/8/Ue1L/q/N/yoH7pf+V/1f5f5+F/7ezmU7b vw1fzxAtGsmFvuAS/xP0P2f/zb0Zlgxs9f/6S/+v39P7Kv6vzn8oBY5m/zfa 6x3tq77Bv9pWBzuDW6jkd5yD9DvMQXeZr7YZ+SyulcEtMslZXDuDa2t5/bcO Mca2nv+iL/Tf7Opy/4dp2Xql/2XAZ6H/u/iKG3kX6Ok23I/V04L46r5DTv8P suVq6/nf/dX3f5Yh4z+7W+3/KQU+X/3fPV5rZgjuiq2vY98aON3i3Ju3BgPb rdq22Vy/w8xv3AHXXMPdHrIWhVYLlAzBXbH1raHYKmy8JWoyi2juI2r6ciBn /3uH4LHN/7u5/9e0qvM/yoHccQIH4bH7/m+jZ/Rk/G8aerX/uwwo+Ctkex8E u8rf7lmWPAtatwyrX8m/DCiSv5wucQvqnnhst/92Tv49vdr/Vw7sez9BBZ8X FJ57tecZ4E72Pz3/36rm/1KgWP77nQG22/9+Tv49y672f5YCn+u6ZQX7gcKT CO+D/Tcq+18GFMv/+Pa/V+3/LAXStfhjV6OCI0Hh2bD3wf6blf0vA4rlfw/s f7X/oxRI328euxoVHAkKj82+D/bfqux/GVAs/3tg/6u//1kKpDs8jl2NCo4E hX/D4D7Yf7uy/2VAsfzvgf2v3v+WAovvACr4OmHD3+rZ6wxwp/1fNuq/3dWr /T+lwCb573MG2Gr/0eavyb/Xt6v1/1Jg88kAFXwNsOHPiR3P/uPfAgP7b1Tr /6XAJvkfzf5L+YP9r77/KgWqr2G+bijW//2+Ab6T/e9byv5Xf/+hFNgk/6PZ fyl/sP/V/s9SYCHwyv5XUEEFFVRQQQUVVFDBlw//D10Au04AyAAA --1053580162-2098300980-876104362=:14440--