forked from Keysight/Jlsca
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtrs-tests.jl
111 lines (76 loc) · 2.87 KB
/
trs-tests.jl
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
include("trs.jl")
using Base.Test
using Trs
function createTmpFile(tail)
return @sprintf("/tmp/tmp%s%s", String([UInt8(rand(0x30:0x5a)) for i in 1:10]), tail)
end
function testInspectorTrace()
dataSpace = 7
sampleType = Int16
numberOfSamplesPerTrace = 29
numberOfTraces = 11
traceFilename = createTmpFile("bob.trs")
allSamples = reshape([rand(Int16) for i in 1:(numberOfSamplesPerTrace*numberOfTraces)], (numberOfTraces, numberOfSamplesPerTrace))
allData = reshape([rand(UInt8) for i in 1:(dataSpace*numberOfTraces)], (numberOfTraces, dataSpace))
trs = InspectorTrace(traceFilename, dataSpace, sampleType, numberOfSamplesPerTrace)
for i in 1:numberOfTraces
trs[i] = (allData[i,:], allSamples[i,:])
@test trs[i] == (allData[i,:], allSamples[i,:])
end
close(trs)
trs2 = InspectorTrace(traceFilename)
@test length(trs2) == numberOfTraces
for i in 1:numberOfTraces
@test trs2[i] == (allData[i,:], allSamples[i,:])
end
close(trs2)
rm(traceFilename)
end
function testSplitBinary()
dataSpace = 7
sampleType = Int16
numberOfSamplesPerTrace = 29
numberOfTraces = 11
samplesFilename = createTmpFile(@sprintf("_%s_%dt.bin", sampleType, numberOfTraces))
dataFilename = createTmpFile(@sprintf("_UInt8_%dt.bin", numberOfTraces))
allSamples = reshape([rand(Int16) for i in 1:(numberOfSamplesPerTrace*numberOfTraces)], (numberOfTraces, numberOfSamplesPerTrace))
allData = reshape([rand(UInt8) for i in 1:(dataSpace*numberOfTraces)], (numberOfTraces, dataSpace))
trs = SplitBinary(dataFilename, dataSpace, samplesFilename, numberOfSamplesPerTrace, sampleType, numberOfTraces, true)
for i in 1:numberOfTraces
trs[i] = (allData[i,:], allSamples[i,:])
@test trs[i] == (allData[i,:], allSamples[i,:])
end
close(trs)
trs2 = SplitBinary(dataFilename, samplesFilename)
@test length(trs2) == numberOfTraces
for i in 1:numberOfTraces
@test trs2[i] == (allData[i,:], allSamples[i,:])
end
close(trs2)
rm(samplesFilename)
rm(dataFilename)
end
function testInspectorMM()
dataSpace = 7
sampleType = UInt8
numberOfSamplesPerTrace = 29
numberOfTraces = 11
traceFilename = createTmpFile("bob.trs")
allSamples = reshape([rand(sampleType) for i in 1:(numberOfSamplesPerTrace*numberOfTraces)], (numberOfTraces, numberOfSamplesPerTrace))
allData = reshape([rand(UInt8) for i in 1:(dataSpace*numberOfTraces)], (numberOfTraces, dataSpace))
trs = InspectorTrace(traceFilename, dataSpace, sampleType, numberOfSamplesPerTrace)
for i in 1:numberOfTraces
trs[i] = (allData[i,:], allSamples[i,:])
@test trs[i] == (allData[i,:], allSamples[i,:])
end
close(trs)
trs2 = InspectorTraceMM(traceFilename)
@test length(trs2) == numberOfTraces
for i in 1:numberOfTraces
@test trs2[i] == (allData[i,:], allSamples[i,:])
end
close(trs2)
rm(traceFilename)end
testInspectorTrace()
testSplitBinary()
testInspectorMM()