From 49ca261bd5a40d933719ab6b2b1fd183a81bf35b Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Tue, 30 Nov 2004 19:51:24 +0000 Subject: Implemented `realpath' and `abspath' built-in functions. --- tests/scripts/functions/abspath | 81 ++++++++++++++++++++++++++++++++++++++++ tests/scripts/functions/realpath | 71 +++++++++++++++++++++++++++++++++++ 2 files changed, 152 insertions(+) create mode 100644 tests/scripts/functions/abspath create mode 100644 tests/scripts/functions/realpath (limited to 'tests/scripts') diff --git a/tests/scripts/functions/abspath b/tests/scripts/functions/abspath new file mode 100644 index 0000000..d419255 --- /dev/null +++ b/tests/scripts/functions/abspath @@ -0,0 +1,81 @@ +# -*-perl-*- +$description = "Test the abspath functions."; + +$details = ""; + +run_make_test(' +ifneq ($(realpath $(abspath .)),$(CURDIR)) + $(error ) +endif + +ifneq ($(realpath $(abspath ./)),$(CURDIR)) + $(error ) +endif + +ifneq ($(realpath $(abspath .///)),$(CURDIR)) + $(error ) +endif + +ifneq ($(abspath /),/) + $(error ) +endif + +ifneq ($(abspath ///),/) + $(error ) +endif + +ifneq ($(abspath /.),/) + $(error ) +endif + +ifneq ($(abspath ///.),/) + $(error ) +endif + +ifneq ($(abspath /./),/) + $(error ) +endif + +ifneq ($(abspath /.///),/) + $(error ) +endif + +ifneq ($(abspath /..),/) + $(error ) +endif + +ifneq ($(abspath ///..),/) + $(error ) +endif + +ifneq ($(abspath /../),/) + $(error ) +endif + +ifneq ($(abspath /..///),/) + $(error ) +endif + + +ifneq ($(abspath /foo/bar/..),/foo) + $(error ) +endif + +ifneq ($(abspath /foo/bar/../../../baz),/baz) + $(error ) +endif + +ifneq ($(abspath /foo/bar/../ /..),/foo /) + $(error ) +endif + + +.PHONY: all +all: ; @: +', +'', +''); + + +# This tells the test driver that the perl test script executed properly. +1; diff --git a/tests/scripts/functions/realpath b/tests/scripts/functions/realpath new file mode 100644 index 0000000..720af8b --- /dev/null +++ b/tests/scripts/functions/realpath @@ -0,0 +1,71 @@ +# -*-perl-*- +$description = "Test the realpath functions."; + +$details = ""; + +run_make_test(' +ifneq ($(realpath .),$(CURDIR)) + $(error ) +endif + +ifneq ($(realpath ./),$(CURDIR)) + $(error ) +endif + +ifneq ($(realpath .///),$(CURDIR)) + $(error ) +endif + +ifneq ($(realpath /),/) + $(error ) +endif + +ifneq ($(realpath ///),/) + $(error ) +endif + +ifneq ($(realpath /.),/) + $(error ) +endif + +ifneq ($(realpath ///.),/) + $(error ) +endif + +ifneq ($(realpath /./),/) + $(error ) +endif + +ifneq ($(realpath /.///),/) + $(error ) +endif + +ifneq ($(realpath /..),/) + $(error ) +endif + +ifneq ($(realpath ///..),/) + $(error ) +endif + +ifneq ($(realpath /../),/) + $(error ) +endif + +ifneq ($(realpath /..///),/) + $(error ) +endif + +ifneq ($(realpath . /..),$(CURDIR) /) + $(error ) +endif + +.PHONY: all +all: ; @: +', +'', +''); + + +# This tells the test driver that the perl test script executed properly. +1; -- cgit v1.2.3