File: solaris_spec.rb

package info (click to toggle)
ruby-vmstat 2.3.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, trixie
  • size: 344 kB
  • sloc: ruby: 1,136; ansic: 347; makefile: 3
file content (277 lines) | stat: -rw-r--r-- 11,245 bytes parent folder | download | duplicates (3)
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
require 'spec_helper'

describe Vmstat::Solaris do
  let(:solaris) do
    c = Vmstat::Solaris
    
    def c.`(cmd)
      if cmd == 'kstat -p "cpu_stat:::/idle|kernel|user/"'
        "cpu_stat:0:cpu_stat0:idle       2325343762
cpu_stat:0:cpu_stat0:idlethread 776439232
cpu_stat:0:cpu_stat0:kernel     89137335
cpu_stat:0:cpu_stat0:kernel_asflt       1
cpu_stat:0:cpu_stat0:user       64919001
cpu_stat:1:cpu_stat1:idle       2322767706
cpu_stat:1:cpu_stat1:idlethread 125993797
cpu_stat:1:cpu_stat1:kernel     78457429
cpu_stat:1:cpu_stat1:kernel_asflt       34
cpu_stat:1:cpu_stat1:user       78174710
cpu_stat:2:cpu_stat2:idle       2390178542
cpu_stat:2:cpu_stat2:idlethread 3368087417
cpu_stat:2:cpu_stat2:kernel     50617796
cpu_stat:2:cpu_stat2:kernel_asflt       0
cpu_stat:2:cpu_stat2:user       38603497
cpu_stat:3:cpu_stat3:idle       2390802861
cpu_stat:3:cpu_stat3:idlethread 1772145290
cpu_stat:3:cpu_stat3:kernel     46044221
cpu_stat:3:cpu_stat3:kernel_asflt       0
cpu_stat:3:cpu_stat3:user       42552751
cpu_stat:4:cpu_stat4:idle       2436590263
cpu_stat:4:cpu_stat4:idlethread 2145015281
cpu_stat:4:cpu_stat4:kernel     23983506
cpu_stat:4:cpu_stat4:kernel_asflt       0
cpu_stat:4:cpu_stat4:user       18826062
cpu_stat:5:cpu_stat5:idle       2435969240
cpu_stat:5:cpu_stat5:idlethread 3720145695
cpu_stat:5:cpu_stat5:kernel     25630307
cpu_stat:5:cpu_stat5:kernel_asflt       0
cpu_stat:5:cpu_stat5:user       17800281
cpu_stat:6:cpu_stat6:idle       2432659504
cpu_stat:6:cpu_stat6:idlethread 3012624014
cpu_stat:6:cpu_stat6:kernel     24414413
cpu_stat:6:cpu_stat6:kernel_asflt       0
cpu_stat:6:cpu_stat6:user       22325909
cpu_stat:7:cpu_stat7:idle       2430409364
cpu_stat:7:cpu_stat7:idlethread 1931519381
cpu_stat:7:cpu_stat7:kernel     28094309
cpu_stat:7:cpu_stat7:kernel_asflt       0
cpu_stat:7:cpu_stat7:user       20896150
cpu_stat:8:cpu_stat8:idle       2443187236
cpu_stat:8:cpu_stat8:idlethread 1900014542
cpu_stat:8:cpu_stat8:kernel     20799721
cpu_stat:8:cpu_stat8:kernel_asflt       0
cpu_stat:8:cpu_stat8:user       15412864
cpu_stat:9:cpu_stat9:idle       2440596009
cpu_stat:9:cpu_stat9:idlethread 3703869451
cpu_stat:9:cpu_stat9:kernel     23787482
cpu_stat:9:cpu_stat9:kernel_asflt       0
cpu_stat:9:cpu_stat9:user       15016328
cpu_stat:10:cpu_stat10:idle     2427567910
cpu_stat:10:cpu_stat10:idlethread       3191481058
cpu_stat:10:cpu_stat10:kernel   30059932
cpu_stat:10:cpu_stat10:kernel_asflt     5
cpu_stat:10:cpu_stat10:user     21771975
cpu_stat:11:cpu_stat11:idle     2431827979
cpu_stat:11:cpu_stat11:idlethread       1824361353
cpu_stat:11:cpu_stat11:kernel   27388335
cpu_stat:11:cpu_stat11:kernel_asflt     0
cpu_stat:11:cpu_stat11:user     20183500
cpu_stat:12:cpu_stat12:idle     2442824569
cpu_stat:12:cpu_stat12:idlethread       2037054756
cpu_stat:12:cpu_stat12:kernel   21276397
cpu_stat:12:cpu_stat12:kernel_asflt     0
cpu_stat:12:cpu_stat12:user     15298846
cpu_stat:13:cpu_stat13:idle     2443388458
cpu_stat:13:cpu_stat13:idlethread       3442886390
cpu_stat:13:cpu_stat13:kernel   22081759
cpu_stat:13:cpu_stat13:kernel_asflt     0
cpu_stat:13:cpu_stat13:user     13929592
cpu_stat:14:cpu_stat14:idle     2434768696
cpu_stat:14:cpu_stat14:idlethread       2856867656
cpu_stat:14:cpu_stat14:kernel   23352419
cpu_stat:14:cpu_stat14:kernel_asflt     0
cpu_stat:14:cpu_stat14:user     21278693
cpu_stat:15:cpu_stat15:idle     2432514522
cpu_stat:15:cpu_stat15:idlethread       1703823954
cpu_stat:15:cpu_stat15:kernel   27050642
cpu_stat:15:cpu_stat15:kernel_asflt     16
cpu_stat:15:cpu_stat15:user     19834642
cpu_stat:16:cpu_stat16:idle     2436582325
cpu_stat:16:cpu_stat16:idlethread       1983802071
cpu_stat:16:cpu_stat16:kernel   21833225
cpu_stat:16:cpu_stat16:kernel_asflt     0
cpu_stat:16:cpu_stat16:user     20984253
cpu_stat:17:cpu_stat17:idle     2432250902
cpu_stat:17:cpu_stat17:idlethread       307297399
cpu_stat:17:cpu_stat17:kernel   29580663
cpu_stat:17:cpu_stat17:kernel_asflt     0
cpu_stat:17:cpu_stat17:user     17568236
cpu_stat:18:cpu_stat18:idle     2447310538
cpu_stat:18:cpu_stat18:idlethread       1473510287
cpu_stat:18:cpu_stat18:kernel   18480841
cpu_stat:18:cpu_stat18:kernel_asflt     5
cpu_stat:18:cpu_stat18:user     13608419
cpu_stat:19:cpu_stat19:idle     2446462748
cpu_stat:19:cpu_stat19:idlethread       2882237650
cpu_stat:19:cpu_stat19:kernel   20384068
cpu_stat:19:cpu_stat19:kernel_asflt     0
cpu_stat:19:cpu_stat19:user     12552980
cpu_stat:20:cpu_stat20:idle     2439710143
cpu_stat:20:cpu_stat20:idlethread       2513415319
cpu_stat:20:cpu_stat20:kernel   20976077
cpu_stat:20:cpu_stat20:kernel_asflt     0
cpu_stat:20:cpu_stat20:user     18713575
cpu_stat:21:cpu_stat21:idle     2434565830
cpu_stat:21:cpu_stat21:idlethread       1574993351
cpu_stat:21:cpu_stat21:kernel   26063716
cpu_stat:21:cpu_stat21:kernel_asflt     0
cpu_stat:21:cpu_stat21:user     18770245
cpu_stat:22:cpu_stat22:idle     2447896586
cpu_stat:22:cpu_stat22:idlethread       1566290884
cpu_stat:22:cpu_stat22:kernel   18718466
cpu_stat:22:cpu_stat22:kernel_asflt     0
cpu_stat:22:cpu_stat22:user     12784738
cpu_stat:23:cpu_stat23:idle     2444823222
cpu_stat:23:cpu_stat23:idlethread       3286395080
cpu_stat:23:cpu_stat23:kernel   21510594
cpu_stat:23:cpu_stat23:kernel_asflt     0
cpu_stat:23:cpu_stat23:user     13065972
cpu_stat:24:cpu_stat24:idle     2437316848
cpu_stat:24:cpu_stat24:idlethread       2628739060
cpu_stat:24:cpu_stat24:kernel   22266295
cpu_stat:24:cpu_stat24:kernel_asflt     0
cpu_stat:24:cpu_stat24:user     19816643
cpu_stat:25:cpu_stat25:idle     2433451000
cpu_stat:25:cpu_stat25:idlethread       1604646150
cpu_stat:25:cpu_stat25:kernel   26748441
cpu_stat:25:cpu_stat25:kernel_asflt     0
cpu_stat:25:cpu_stat25:user     19200341
cpu_stat:26:cpu_stat26:idle     2446405472
cpu_stat:26:cpu_stat26:idlethread       1573139378
cpu_stat:26:cpu_stat26:kernel   19619834
cpu_stat:26:cpu_stat26:kernel_asflt     0
cpu_stat:26:cpu_stat26:user     13374474
cpu_stat:27:cpu_stat27:idle     2444019515
cpu_stat:27:cpu_stat27:idlethread       3275705315
cpu_stat:27:cpu_stat27:kernel   21816225
cpu_stat:27:cpu_stat27:kernel_asflt     0
cpu_stat:27:cpu_stat27:user     13564039
cpu_stat:28:cpu_stat28:idle     2435784523
cpu_stat:28:cpu_stat28:idlethread       2628201319
cpu_stat:28:cpu_stat28:kernel   23125551
cpu_stat:28:cpu_stat28:kernel_asflt     0
cpu_stat:28:cpu_stat28:user     20489701
cpu_stat:29:cpu_stat29:idle     2432230501
cpu_stat:29:cpu_stat29:idlethread       1635408506
cpu_stat:29:cpu_stat29:kernel   27198273
cpu_stat:29:cpu_stat29:kernel_asflt     0
cpu_stat:29:cpu_stat29:user     19970999
cpu_stat:30:cpu_stat30:idle     2444413183
cpu_stat:30:cpu_stat30:idlethread       1644573224
cpu_stat:30:cpu_stat30:kernel   20310412
cpu_stat:30:cpu_stat30:kernel_asflt     0
cpu_stat:30:cpu_stat30:user     14676176
cpu_stat:31:cpu_stat31:idle     2442483106
cpu_stat:31:cpu_stat31:idlethread       3345414215
cpu_stat:31:cpu_stat31:kernel   22515695
cpu_stat:31:cpu_stat31:kernel_asflt     0
cpu_stat:31:cpu_stat31:user     14400967\n"
      elsif cmd == "kstat -p unix:::boot_time"
        "unix:0:system_misc:boot_time     1470765992\n"
      elsif cmd == "kstat -p -n system_pages"
        "unix:0:system_pages:availrmem     70121
unix:0:system_pages:crtime        116.1198523
unix:0:system_pages:desfree       3744
unix:0:system_pages:desscan       25
unix:0:system_pages:econtig       176160768
unix:0:system_pages:fastscan      137738
unix:0:system_pages:freemem       61103
unix:0:system_pages:kernelbase    16777216
unix:0:system_pages:lotsfree      7488
unix:0:system_pages:minfree       1872
unix:0:system_pages:nalloc        26859076
unix:0:system_pages:nalloc_calls  11831
unix:0:system_pages:nfree         25250198
unix:0:system_pages:nfree_calls   7888
unix:0:system_pages:nscan         0
unix:0:system_pages:pagesfree     61103
unix:0:system_pages:pageslocked   409145
unix:0:system_pages:pagestotal    479266
unix:0:system_pages:physmem       489586
unix:0:system_pages:pp_kernel     438675
unix:0:system_pages:slowscan      100
unix:0:system_pages:snaptime      314313.3248461\n"
      elsif cmd == "kstat -p link:::"
        "link:0:e1000g0:ierrors 0
link:0:e1000g0:oerrors 1
link:0:e1000g0:rbytes64 1000
link:0:e1000g0:obytes64 2000\n"
      else
        raise "Unknown cmd: '#{cmd}'"
      end
    end
    c
  end
  
  context "#cpu" do
    subject { solaris.cpu }

    it { should be_a(Array)}
    it do
      should == [
        Vmstat::Cpu.new(0, 64919001, 89137335, 0, 2325343762),
        Vmstat::Cpu.new(1, 78174710, 78457429, 0, 2322767706),
        Vmstat::Cpu.new(2, 38603497, 50617796, 0, 2390178542),
        Vmstat::Cpu.new(3, 42552751, 46044221, 0, 2390802861),
        Vmstat::Cpu.new(4, 18826062, 23983506, 0, 2436590263),
        Vmstat::Cpu.new(5, 17800281, 25630307, 0, 2435969240),
        Vmstat::Cpu.new(6, 22325909, 24414413, 0, 2432659504),
        Vmstat::Cpu.new(7, 20896150, 28094309, 0, 2430409364),
        Vmstat::Cpu.new(8, 15412864, 20799721, 0, 2443187236),
        Vmstat::Cpu.new(9, 15016328, 23787482, 0, 2440596009),
        Vmstat::Cpu.new(10, 21771975, 30059932, 0, 2427567910),
        Vmstat::Cpu.new(11, 20183500, 27388335, 0, 2431827979),
        Vmstat::Cpu.new(12, 15298846, 21276397, 0, 2442824569),
        Vmstat::Cpu.new(13, 13929592, 22081759, 0, 2443388458),
        Vmstat::Cpu.new(14, 21278693, 23352419, 0, 2434768696),
        Vmstat::Cpu.new(15, 19834642, 27050642, 0, 2432514522),
        Vmstat::Cpu.new(16, 20984253, 21833225, 0, 2436582325),
        Vmstat::Cpu.new(17, 17568236, 29580663, 0, 2432250902),
        Vmstat::Cpu.new(18, 13608419, 18480841, 0, 2447310538),
        Vmstat::Cpu.new(19, 12552980, 20384068, 0, 2446462748),
        Vmstat::Cpu.new(20, 18713575, 20976077, 0, 2439710143),
        Vmstat::Cpu.new(21, 18770245, 26063716, 0, 2434565830),
        Vmstat::Cpu.new(22, 12784738, 18718466, 0, 2447896586),
        Vmstat::Cpu.new(23, 13065972, 21510594, 0, 2444823222),
        Vmstat::Cpu.new(24, 19816643, 22266295, 0, 2437316848),
        Vmstat::Cpu.new(25, 19200341, 26748441, 0, 2433451000),
        Vmstat::Cpu.new(26, 13374474, 19619834, 0, 2446405472),
        Vmstat::Cpu.new(27, 13564039, 21816225, 0, 2444019515),
        Vmstat::Cpu.new(28, 20489701, 23125551, 0, 2435784523),
        Vmstat::Cpu.new(29, 19970999, 27198273, 0, 2432230501),
        Vmstat::Cpu.new(30, 14676176, 20310412, 0, 2444413183),
        Vmstat::Cpu.new(31, 14400967, 22515695, 0, 2442483106)
      ]
    end
  end

  context "#memory" do
    subject { solaris.memory }

    it { should be_a(Vmstat::Memory) }
    if `getconf PAGESIZE`.chomp.to_i == 4096
      it do
        should == Vmstat::Memory.new(4096, 409145, 9018, 0, 61103, 0, 0)
      end
    end
  end

  context "#boot_time" do
    subject { solaris.boot_time }

    it { should be_a(Time) }
    it { should == Time.at(1470765992) }
  end

  context "#network_interfaces" do
    subject { solaris.network_interfaces }

    it { should be_a(Array) }
    it do
      should == [
        Vmstat::NetworkInterface.new(:e1000g0, 1000, 0, 0, 2000, 1,
                                     Vmstat::NetworkInterface::ETHERNET_TYPE)
      ]
    end
  end
end