X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=tests%2Fgethostname.lisp;h=e9738918a12077d39c3b1886726eb71d513f1d5b;hb=bdb966b22ea563a7dfa1f464a1b6cb6d8b5a712c;hp=909811487b39e8ad6b1421a24c71e820c0a52fb6;hpb=a95b9a217335917d96b8c0cced4f49c3e4846115;p=uffi.git diff --git a/tests/gethostname.lisp b/tests/gethostname.lisp index 9098114..e973891 100644 --- a/tests/gethostname.lisp +++ b/tests/gethostname.lisp @@ -7,7 +7,7 @@ ;;;; Programmer: Kevin M. Rosenberg ;;;; Date Started: Feb 2002 ;;;; -;;;; $Id: gethostname.lisp,v 1.1 2002/09/30 10:02:36 kevin Exp $ +;;;; $Id: gethostname.lisp,v 1.4 2003/04/29 14:08:02 kevin Exp $ ;;;; ;;;; This file, part of UFFI, is Copyright (c) 2002 by Kevin M. Rosenberg ;;;; @@ -16,7 +16,7 @@ ;;;; (http://opensource.franz.com/preamble.html), also known as the LLGPL. ;;;; ************************************************************************* -(in-package :cl-user) +(in-package :uffi-tests) ;;; This example is inspired by the example on the CL-Cookbook web site @@ -29,12 +29,13 @@ (defun gethostname () "Returns the hostname" (let* ((name (uffi:allocate-foreign-string 256)) - (result (c-gethostname name 256))) - (unwind-protect - (if (zerop result) - (uffi:convert-from-foreign-string name) - (error "gethostname() failed.")) - (uffi:free-foreign-object name)))) + (result-code (c-gethostname name 256)) + (hostname (when (zerop result-code) + (uffi:convert-from-foreign-string name)))) + (uffi:free-foreign-object name) + (unless (zerop result-code) + (error "gethostname() failed.")) + hostname)) (defun gethostname2 () "Returns the hostname" @@ -43,23 +44,11 @@ (uffi:convert-from-foreign-string name) (error "gethostname() failed.")))) -#+examples-uffi -(progn - (format t "~&Hostname (technique 1): ~A" (gethostname)) - (format t "~&Hostname (technique 2): ~A" (gethostname2))) +(deftest gethostname.1 (stringp (gethostname)) t) +(deftest gethostname.2 (stringp (gethostname2)) t) +(deftest gethostname.3 (plusp (length (gethostname))) t) +(deftest gethostname.4 (plusp (length (gethostname2))) t) +(deftest gethostname.5 (gethostname) #.(gethostname2)) -#+test-uffi -(progn - (let ((hostname1 (gethostname)) - (hostname2 (gethostname2))) - - (util.test:test (and (stringp hostname1) (stringp hostname2)) t - :fail-info "gethostname not string") - (util.test:test (and (not (zerop (length hostname1))) - (not (zerop (length hostname2)))) t - :fail-info "gethostname length 0") - (util.test:test (string= hostname1 hostname1) t - :fail-info "gethostname techniques don't match")) - )