vigilem-win32_api-stat 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/lib/vigilem/win32_api/stat.rb +43 -0
- data/spec/vigilem/win32_api/stat_spec.rb +42 -0
- metadata +159 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: eb90de78ef20a5dcd8967258f1877b85f9b73974
|
4
|
+
data.tar.gz: 22a0b889464aec11dbb84ad5c5d0089538da3b3c
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: cf5ab65b297aad5d0b271f2300e233925cf10d3498d336175513f1f6ccaba80d0cbf5d261c53089c86582d4adc1e3fb4c91b29673f16ed65b09d5a7a6bd38107
|
7
|
+
data.tar.gz: 585183b6c930b1537d208bf7c954cabe822f77c16e07fcdfd131a3d0b8a0cb1cc50b17f57a3c63160c566418dd2dab0215d8cdb71034209615728546dee9a95f
|
@@ -0,0 +1,43 @@
|
|
1
|
+
require 'ffi'
|
2
|
+
|
3
|
+
module Vigilem
|
4
|
+
module Win32API
|
5
|
+
# Stat(us) of Win32API and the handler
|
6
|
+
# gem associated with it
|
7
|
+
class Stat < Core::Stat
|
8
|
+
|
9
|
+
extend ::FFI::Library
|
10
|
+
|
11
|
+
#
|
12
|
+
# @param [String] gem_name, defaults to 'vigilem-win32_api'
|
13
|
+
# @param [Proc] api_check, defaults to
|
14
|
+
# `begin
|
15
|
+
# not Stat.ffi_lib('Kernel32.dll').empty?
|
16
|
+
# rescue
|
17
|
+
# false
|
18
|
+
# end`
|
19
|
+
def initialize(gem_name='vigilem-win32_api', opts={}, &api_check)
|
20
|
+
system_name = 'Win32API'
|
21
|
+
if block_given?
|
22
|
+
super(system_name, gem_name, opts, &api_check)
|
23
|
+
else
|
24
|
+
super(system_name, gem_name, opts) do
|
25
|
+
begin
|
26
|
+
not Stat.ffi_lib('Kernel32.dll').empty?
|
27
|
+
rescue LoadError
|
28
|
+
false
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
#
|
35
|
+
# @return [Stat]
|
36
|
+
def self.default
|
37
|
+
@default ||= new
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
end
|
42
|
+
end
|
43
|
+
Vigilem::Win32API::Stat.default
|
@@ -0,0 +1,42 @@
|
|
1
|
+
require 'vigilem/win32_api/stat'
|
2
|
+
|
3
|
+
describe Vigilem::Win32API::Stat do
|
4
|
+
|
5
|
+
|
6
|
+
it 'will have added the default after required' do
|
7
|
+
expect(Vigilem::Core::Stat.all).not_to be_empty
|
8
|
+
end
|
9
|
+
|
10
|
+
context 'default contructor,' do
|
11
|
+
|
12
|
+
describe '#gem_name' do
|
13
|
+
it 'defaults to vigilem-win32_api-stat' do
|
14
|
+
expect(subject.gem_name).to eql('vigilem-win32_api')
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
describe '#api_check?' do
|
19
|
+
it 'will return true if kernel.dll is found' do
|
20
|
+
|
21
|
+
end
|
22
|
+
|
23
|
+
it 'will return false when the platform is not an mswin' do
|
24
|
+
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
describe '#available?' do
|
29
|
+
it 'will return true as long as api_check? is true' do
|
30
|
+
allow(subject).to receive(:api_check?) { true }
|
31
|
+
expect(subject.available?).to be_truthy
|
32
|
+
end
|
33
|
+
|
34
|
+
it 'will return false when api_check? is false' do
|
35
|
+
allow(subject).to receive(:api_check?) { false }
|
36
|
+
expect(subject.available?).to be_falsey
|
37
|
+
end
|
38
|
+
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
end
|
metadata
ADDED
@@ -0,0 +1,159 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: vigilem-win32_api-stat
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- jtzero
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-03-04 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: vigilem-core
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - '>='
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - '>='
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: yard
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - '>='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - '>='
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: bundler
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ~>
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '1.7'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ~>
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '1.7'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rake
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ~>
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '10.0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ~>
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '10.0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: rspec
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ~>
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '3.1'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ~>
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '3.1'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: rspec-given
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - '>='
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - '>='
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: turnip
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - '>='
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0'
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - '>='
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: guard-rspec
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - '>='
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - '>='
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '0'
|
125
|
+
description: Stat(us) for whether or not Win32API is available
|
126
|
+
email:
|
127
|
+
- jtzero511@gmail.com
|
128
|
+
executables: []
|
129
|
+
extensions: []
|
130
|
+
extra_rdoc_files: []
|
131
|
+
files:
|
132
|
+
- lib/vigilem/win32_api/stat.rb
|
133
|
+
- spec/vigilem/win32_api/stat_spec.rb
|
134
|
+
homepage: http://rubygems.org/gems/vigilem-win32_api-stat
|
135
|
+
licenses:
|
136
|
+
- MIT
|
137
|
+
metadata: {}
|
138
|
+
post_install_message:
|
139
|
+
rdoc_options: []
|
140
|
+
require_paths:
|
141
|
+
- lib
|
142
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
143
|
+
requirements:
|
144
|
+
- - '>='
|
145
|
+
- !ruby/object:Gem::Version
|
146
|
+
version: '0'
|
147
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
148
|
+
requirements:
|
149
|
+
- - '>='
|
150
|
+
- !ruby/object:Gem::Version
|
151
|
+
version: '0'
|
152
|
+
requirements: []
|
153
|
+
rubyforge_project:
|
154
|
+
rubygems_version: 2.4.6
|
155
|
+
signing_key:
|
156
|
+
specification_version: 4
|
157
|
+
summary: Stat(us) for whether or not Win32API is available
|
158
|
+
test_files:
|
159
|
+
- spec/vigilem/win32_api/stat_spec.rb
|