Skip to content

Commit 0eb4278

Browse files
committed
Namespace function validate_email_address()
1 parent 07bb191 commit 0eb4278

File tree

3 files changed

+40
-26
lines changed

3 files changed

+40
-26
lines changed
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# frozen_string_literal: true
2+
3+
# @summary
4+
# Validate that all values passed are valid email addresses.
5+
# Fail compilation if any value fails this check.
6+
Puppet::Functions.create_function(:'stdlib::validate_email_address') do
7+
# @param values An e-mail address or an array of e-mail addresses to check
8+
#
9+
# @return [Undef]
10+
# Fail compilation if any value fails this check.
11+
#
12+
# @example Passing examples
13+
# $my_email = "waldo@gmail.com"
14+
# stdlib::validate_email_address($my_email)
15+
# stdlib::validate_email_address("bob@gmail.com", "alice@gmail.com", $my_email)
16+
#
17+
# @example Failing examples (causing compilation to abort)
18+
# $some_array = [ 'bad_email@/d/efdf.com' ]
19+
# stdlib::validate_email_address($some_array)
20+
dispatch :validate_email_address do
21+
repeated_param 'Stdlib::Email', :values
22+
end
23+
24+
def validate_email_address(*args)
25+
assert_arg_count(args)
26+
end
27+
28+
def assert_arg_count(args)
29+
raise(ArgumentError, 'stdlib::validate_email_address(): Wrong number of arguments need at least one') if args.empty?
30+
end
31+
end
Lines changed: 8 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,14 @@
11
# frozen_string_literal: true
22

3-
# @summary
4-
# Validate that all values passed are valid email addresses.
5-
# Fail compilation if any value fails this check.
6-
Puppet::Functions.create_function(:validate_email_address) do
7-
# @param values An e-mail address or an array of e-mail addresses to check
8-
#
9-
# @return [Undef]
10-
# Fail compilation if any value fails this check.
11-
#
12-
# @example Passing examples
13-
# $my_email = "waldo@gmail.com"
14-
# validate_email_address($my_email)
15-
# validate_email_address("bob@gmail.com", "alice@gmail.com", $my_email)
16-
#
17-
# @example Failing examples (causing compilation to abort)
18-
# $some_array = [ 'bad_email@/d/efdf.com' ]
19-
# validate_email_address($some_array)
20-
dispatch :validate_email_address do
21-
repeated_param 'Stdlib::Email', :values
22-
end
3+
# THIS FILE WAS GENERATED BY `rake regenerate_unamespaced_shims`
234

24-
def validate_email_address(*args)
25-
assert_arg_count(args)
5+
# @summary DEPRECATED. Use the namespaced function [`stdlib::validate_email_address`](#stdlibvalidate_email_address) instead.
6+
Puppet::Functions.create_function(:validate_email_address) do
7+
dispatch :deprecation_gen do
8+
repeated_param 'Any', :args
269
end
27-
28-
def assert_arg_count(args)
29-
raise(ArgumentError, 'validate_email_address(): Wrong number of arguments need at least one') if args.empty?
10+
def deprecation_gen(*args)
11+
call_function('deprecation', 'validate_email_address', 'This function is deprecated, please use stdlib::validate_email_address instead.')
12+
call_function('stdlib::validate_email_address', *args)
3013
end
3114
end

spec/functions/validate_email_address_spec.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
require 'spec_helper'
44

5-
describe 'validate_email_address' do
5+
describe 'stdlib::validate_email_address' do
66
describe 'signature validation' do
77
it { is_expected.not_to eq(nil) }
88
it { is_expected.to run.with_params.and_raise_error(ArgumentError, %r{wrong number of arguments}i) }

0 commit comments

Comments
 (0)