blob: 2951c009b6d2e8d25cf51b7337e97bc8e1c35dbf [file] [log] [blame]
Joey Armstrongf32accb2024-03-07 17:05:09 -05001# -*- makefile -*-
2# -----------------------------------------------------------------------
3# Copyright 2024 Open Networking Foundation Contributors
4#
5# Licensed under the Apache License, Version 2.0 (the "License");
6# you may not use this file except in compliance with the License.
7# You may obtain a copy of the License at
8#
9# http:#www.apache.org/licenses/LICENSE-2.0
10#
11# Unless required by applicable law or agreed to in writing, software
12# distributed under the License is distributed on an "AS IS" BASIS,
13# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14# See the License for the specific language governing permissions and
15# limitations under the License.
16# -----------------------------------------------------------------------
17# SPDX-FileCopyrightText: 2024 Open Networking Foundation Contributors
18# SPDX-License-Identifier: Apache-2.0
19# -----------------------------------------------------------------------
20# Intent: This test suite will validate repo:helm-repo-tools scripts
21# -----------------------------------------------------------------------
22
23null :=#
24space :=$(null) $(null)
25HIDE ?= @
26
27src = $(wildcard *.bats)
28bats := $(subst .bats,$(null),$(src))
29.PHONY: $(bats)
30
31## -----------------------------------------------------------------------
32## -----------------------------------------------------------------------
33all:
34
35## -----------------------------------------------------------------------
36## -----------------------------------------------------------------------
37test : bats
38
39bats : $(bats)
40
41## -----------------------------------------------------------------------
42## -----------------------------------------------------------------------
43$(bats) :
44 $(HIDE)./$@.bats
45
46## -----------------------------------------------------------------------
47## Intent: Display target help
48## -----------------------------------------------------------------------
49help ::
50 @echo 'Usage: $(MAKE) [options] [target] ...'
51 @printf ' %-33.33s %s\n' 'test' 'Launch available test suites'
52 @printf ' %-33.33s %s\n' 'bats' 'Launch available bats test suites'
53
54 @echo
55 @echo '[TEST: by name]'
56 @$(MAKE) --no-print-directory help-bats
57
58 @echo
59 @echo '[HELP]'
60 @printf ' %-33.33s %s\n' 'help' 'Display target usage'
61 @printf ' %-33.33s %s\n' 'help-bats' 'Display a list of test suites'
62
63help-bats := $(addprefix help--,$(bats))
64help-bats : $(help-bats)
65$(help-bats) :
66 @printf ' $(MAKE) %-33.33s %s\n' "$(lastword $(subst -,$(space),$@))" ''
67
68# [EOF]