summaryrefslogtreecommitdiffstats
path: root/acceptance/tests/apply/classes/parameterized_classes.rb
blob: 9a70294255f27ee9b895f0d36d6c01e93332088b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
test_name "parametrized classes"

########################################################################
step "should allow param classes"
manifest = %q{
class x($y, $z) {
  notice("${y}-${z}")
}
class {x: y => '1', z => '2'}
}

apply_manifest_on(agents, manifest) do
    fail_test "inclusion after parameterization failed" unless stdout.include? "1-2"
end

########################################################################
# REVISIT: This was ported from the old set of tests, but I think that
# the desired behaviour has recently changed.  --daniel 2010-12-23
step "should allow param class post inclusion"
manifest = %q{
class x($y, $z) {
  notice("${y}-${z}")
}
class {x: y => '1', z => '2'}
include x
}

apply_manifest_on(agents, manifest) do
    fail_test "inclusion after parameterization failed" unless stdout.include? "1-2"
end

########################################################################
step "should allow param classes defaults"
manifest = %q{
class x($y, $z='2') {
  notice("${y}-${z}")
}
class {x: y => '1'}
}

apply_manifest_on(agents, manifest) do
    fail_test "the default didn't apply as expected" unless stdout.include? "1-2"
end

########################################################################
step "should allow param class defaults to be overriden"
manifest = %q{
class x($y, $z='2') {
  notice("${y}-${z}")
}
class {x: y => '1', z => '3'}
}

apply_manifest_on(agents, manifest) do
    fail_test "the override didn't happen as we expected" unless stdout.include? "1-3"
end