Skip to content

Commit 6527f39

Browse files
committed
fixup
1 parent 6897d8e commit 6527f39

File tree

4 files changed

+22
-23
lines changed

4 files changed

+22
-23
lines changed

spec/acceptance/deferred_spec.rb

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,33 @@
11
# spec/acceptance/deferred_spec.rb
22
# frozen_string_literal: true
3-
43
require 'spec_helper_acceptance'
54

65
def read_fixture(name)
76
File.read(File.join(__dir__, '..', 'fixtures', 'manifests', name))
87
end
98

109
describe 'deferred values with dsc_lite' do
11-
let(:control_manifest) { read_fixture('01_file_deferred.pp') }
12-
let(:dsc_deferred_direct) { read_fixture('02_dsc_deferred_direct.pp') }
13-
let(:dsc_deferred_var) { read_fixture('03_dsc_deferred_in_variable.pp') }
10+
let(:control_manifest) { read_fixture('01_file_deferred.pp') }
11+
let(:dsc_deferred_direct) { read_fixture('02_dsc_deferred_direct.pp') }
12+
let(:dsc_deferred_variable) { read_fixture('03_dsc_deferred_in_variable.pp') }
1413

1514
it 'applies with native file + deferred (control succeeds)' do
1615
idempotent_apply(control_manifest)
17-
on(default, 'powershell.exe -NoProfile -NonInteractive -Command "(Get-Content -Raw C:/Temp/deferred_ok.txt)"') do |r|
18-
expect(r.stdout).to match(%r{hello-world})
19-
end
16+
17+
# Litmus helper; returns a result with stdout/stderr/exit_code
18+
result = run_shell(%q[powershell.exe -NoProfile -NonInteractive -Command "(Get-Content -Raw 'C:/Temp/deferred_ok.txt')"])
19+
expect(result.stdout).to match(/hello-world/)
2020
end
2121

2222
context 'dsc_lite with deferred' do
2323
it 'fails when passing Deferred directly to a DSC property' do
2424
result = apply_manifest(dsc_deferred_direct, expect_failures: true)
25-
# broad match: we only assert that a Deferred/serialization-like error occurs
26-
expect(result.stderr + result.stdout).to match(%r{Deferred|serialize|to_json|implicit conversion|TypeError|cannot}i)
25+
expect(result.stderr + result.stdout).to match(/Deferred|serialize|to_json|implicit conversion|TypeError|cannot|Puppet::Pops::Types::Deferred/i)
2726
end
2827

2928
it 'fails when assigning Deferred to a variable then to a DSC property' do
30-
result = apply_manifest(dsc_deferred_var, expect_failures: true)
31-
expect(result.stderr + result.stdout).to match(%r{Deferred|serialize|to_json|implicit conversion|TypeError|cannot}i)
29+
result = apply_manifest(dsc_deferred_variable, expect_failures: true)
30+
expect(result.stderr + result.stdout).to match(/Deferred|serialize|to_json|implicit conversion|TypeError|cannot|Puppet::Pops::Types::Deferred/i)
3231
end
3332
end
34-
end
33+
end

spec/fixtures/manifests/01_file_deferred.pp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# 01_file_deferred.pp
1+
# spec/fixtures/manifests/01_file_deferred.pp
22
file { 'C:/Temp':
33
ensure => directory,
44
}
Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# 02_dsc_deferred_direct.pp
1+
# spec/fixtures/manifests/02_dsc_deferred_direct.pp
22
file { 'C:/Temp':
33
ensure => directory,
44
}
@@ -7,10 +7,10 @@
77
resource_name => 'File',
88
module => 'PSDesiredStateConfiguration',
99
properties => {
10-
DestinationPath => 'C:\Temp\from_dsc.txt',
11-
Type => 'File',
12-
Ensure => 'Present',
13-
Contents => Deferred('join', [['hello','-','dsc'], '']),
10+
'DestinationPath' => 'C:\Temp\from_dsc.txt',
11+
'Type' => 'File',
12+
'Ensure' => 'Present',
13+
'Contents' => Deferred('join', [['hello','-','dsc'], '']),
1414
},
1515
require => File['C:/Temp'],
1616
}
Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# 03_dsc_deferred_in_variable.pp
1+
# spec/fixtures/manifests/03_dsc_deferred_in_variable.pp
22
file { 'C:/Temp':
33
ensure => directory,
44
}
@@ -9,10 +9,10 @@
99
resource_name => 'File',
1010
module => 'PSDesiredStateConfiguration',
1111
properties => {
12-
DestinationPath => 'C:\Temp\from_dsc_var.txt',
13-
Type => 'File',
14-
Ensure => 'Present',
15-
Contents => $value, # still a Deferred wrapper
12+
'DestinationPath' => 'C:\Temp\from_dsc_var.txt',
13+
'Type' => 'File',
14+
'Ensure' => 'Present',
15+
'Contents' => $value, # still a Deferred wrapper
1616
},
1717
require => File['C:/Temp'],
1818
}

0 commit comments

Comments
 (0)