File tree Expand file tree Collapse file tree
lib/facter/resolvers/windows
spec/facter/resolvers/windows Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -49,7 +49,7 @@ def determine_hypervisor_by_manufacturer(comp)
4949 'hyperv'
5050 elsif /^Xen/ . match? ( manufacturer )
5151 'xen'
52- elsif /^Amazon EC2/ . match? ( manufacturer )
52+ elsif /^( Amazon EC2|QEMU) / . match? ( manufacturer )
5353 'kvm'
5454 else
5555 'physical'
Original file line number Diff line number Diff line change 181181 end
182182 end
183183
184+ describe '#resolve Proxmox/QEMU VM' do
185+ before do
186+ allow ( win32ole ) . to receive ( :Model ) . and_return ( model )
187+ allow ( win32ole ) . to receive ( :Manufacturer ) . and_return ( manufacturer )
188+ allow ( win32ole ) . to receive ( :OEMStringArray ) . and_return ( '' )
189+ end
190+
191+ let ( :query_result ) { [ win32ole ] }
192+ let ( :model ) { 'Standard PC (i440FX + PIIX, 1996)' }
193+ let ( :manufacturer ) { 'QEMU' }
194+
195+ it 'detects virtual machine model' do
196+ expect ( Facter ::Resolvers ::Windows ::Virtualization . resolve ( :virtual ) ) . to eql ( 'kvm' )
197+ end
198+
199+ it 'detects that is virtual' do
200+ expect ( Facter ::Resolvers ::Windows ::Virtualization . resolve ( :is_virtual ) ) . to be ( true )
201+ end
202+ end
203+
184204 describe '#resolve Physical Machine' do
185205 before do
186206 allow ( win32ole ) . to receive ( :Model ) . and_return ( model )
You can’t perform that action at this time.
0 commit comments