Skip to content

Commit 7cd3a4b

Browse files
authored
Merge pull request #5 from Clonkk/devel
Fixed somes type, improve tests
2 parents ccea0ae + 874d469 commit 7cd3a4b

4 files changed

Lines changed: 15 additions & 14 deletions

File tree

.gitattributes

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
legacy/* linguist-vendored

nimjl/boxunbox.nim

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,13 +61,13 @@ proc julia_box[T](value: T): JlValue =
6161

6262
proc jlUnbox*[T: SomeNumber|string|bool|pointer](x: JlValue): T =
6363
when T is string:
64-
result = jlval_to_string(v)
64+
result = jlval_to_string(x)
6565
else:
6666
result = julia_unbox[T](x)
6767

6868
proc jlBox*[T: SomeNumber|string|bool|pointer](val: T): JlValue =
6969
when T is string:
70-
result = jlval_from_string(v)
70+
result = jlval_from_string(val)
7171
else:
7272
result = julia_box[T](val)
7373

tests/test.jl

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,12 @@ module custom_module
66
end
77

88
function modString(inputStr)
9-
println("Input string: ", inputStr)
9+
println("Julia says... Input string: ", inputStr)
1010
return inputStr * " This is an amazing string"
1111
end
1212

1313
function printDict(dict, key1, val1, key2, val2)
14-
println(dict)
14+
println("Julia says...", dict)
1515
if dict[key1] == val1 && dict[key2] == val2
1616
return true
1717
else
@@ -21,7 +21,7 @@ module custom_module
2121

2222
function squareMeBaby(A)
2323
## Square array and return the result
24-
println(typeof(A))
24+
println("Julia says...", typeof(A))
2525
B = A.*A
2626
return B
2727
end

tests/testfull.nim

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ proc makeTupleTest() =
147147

148148
proc stringModTest() =
149149
var inputStr = "This is a nice string, isn't it ?"
150-
var res : string = jlUnbox[string](jlCall("modString", (jlBox(inputStr)))
150+
var res : string = jlUnbox[string](jlCall("modString", (jlBox(inputStr))))
151151
check inputStr & " This is an amazing string" == res
152152

153153
proc printDictTest() =
@@ -258,8 +258,8 @@ proc runArrayArgsTest() =
258258

259259
### Tensor Args
260260
proc tensorSquareMeBaby() =
261-
var orig: Tensor[float64]
262-
orig = ones[float64](3, 4, 5)
261+
let dims = [18, 21, 33]
262+
var orig: Tensor[float64] = ones[float64](dims)
263263
var index = 0
264264
for i in orig.mitems:
265265
i = index.float64 / 3.0
@@ -283,14 +283,14 @@ proc tensorSquareMeBaby() =
283283
var rank_ret = ndims(ret)
284284
check rank_ret == 3
285285
var data_ret = dataArray(ret)
286-
var tensorData: Tensor[float64] = newTensor[float64](3, 4, 5)
286+
var tensorData: Tensor[float64] = newTensor[float64](dims)
287287
copyMem(tensorData.dataArray(), data_ret, len_ret*sizeof(float64))
288288
for i, v in enumerate(tensorData):
289289
check v == (i/3)*(i/3)
290290

291291
proc tensorMutateMeBaby() =
292-
var orig : Tensor[float64]
293-
orig = ones[float64](4, 6, 8)
292+
let dims = [14, 12, 10]
293+
var orig : Tensor[float64] = ones[float64](dims)
294294
var index = 0
295295
for i in orig.mitems:
296296
inc(index)
@@ -305,7 +305,7 @@ proc tensorMutateMeBaby() =
305305
var rank_ret = ndims(ret)
306306
check rank_ret == 3
307307
var data_ret = dataArray(ret)
308-
var tensorData: Tensor[float64] = newTensor[float64](4, 6, 8)
308+
var tensorData: Tensor[float64] = newTensor[float64](dims)
309309
copyMem(tensorData.dataArray(), data_ret, len_ret*sizeof(float64))
310310
check tensorData == orig
311311

@@ -321,8 +321,8 @@ proc tensorBuiltinRot180() =
321321

322322
var d0 = dim(xArray, 0).int
323323
var d1 = dim(xArray, 1).int
324-
check d0 == 4
325-
check d1 == 3
324+
check d0 == orig_tensor.shape[0]
325+
check d1 == orig_tensor.shape[1]
326326

327327
var ret = toJlArray[float64](jlCall("rot180", xArray.toJlValue()))
328328
check not isNil(ret.data)

0 commit comments

Comments
 (0)