Skip to content

Commit 9395380

Browse files
authored
Merge pull request #51 from fsprojects/test-coverage-datautil-1756514662
Daily Test Coverage Improver: Add comprehensive DataUtil module tests
2 parents 8db4f98 + f1488f8 commit 9395380

1 file changed

Lines changed: 72 additions & 1 deletion

File tree

tests/Furnace.Tests/TestData.fs

Lines changed: 72 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
namespace Tests
77

88
open System.IO
9+
open System.IO.Compression
10+
open System.Text
911
open NUnit.Framework
1012
open Furnace
1113
open Furnace.Data
@@ -351,4 +353,73 @@ type TestData () =
351353
Assert.AreEqual(textTensorCorrect, textTensor)
352354

353355
let text2 = dataset.tensorToText textTensor
354-
Assert.AreEqual(text, text2)
356+
Assert.AreEqual(text, text2)
357+
358+
[<Test>]
359+
member _.TestDataUtilDownloadExistingFile () =
360+
let tempDir = Path.Join(Path.GetTempPath(), Random.UUID())
361+
Directory.CreateDirectory(tempDir) |> ignore
362+
let testFile = Path.Join(tempDir, "existing_test.txt")
363+
364+
let testContent = "Existing file content"
365+
File.WriteAllText(testFile, testContent)
366+
367+
let testUrl = "https://www.example.com/dummy.txt"
368+
download testUrl testFile
369+
370+
Assert.True(File.Exists(testFile))
371+
let content = File.ReadAllText(testFile)
372+
Assert.AreEqual(testContent, content)
373+
374+
Directory.Delete(tempDir, true)
375+
376+
[<Test>]
377+
member _.TestDataUtilExtractTarStreamEmptyHeader () =
378+
let tempDir = Path.Join(Path.GetTempPath(), Random.UUID())
379+
Directory.CreateDirectory(tempDir) |> ignore
380+
381+
let tarData = Array.zeroCreate<byte> 1024
382+
383+
use stream = new MemoryStream(tarData)
384+
extractTarStream stream tempDir
385+
386+
Assert.True(Directory.Exists(tempDir))
387+
Assert.AreEqual(0, Directory.GetFiles(tempDir, "*", SearchOption.AllDirectories).Length)
388+
389+
Directory.Delete(tempDir, true)
390+
391+
[<Test>]
392+
member _.TestDataUtilPrintVal () =
393+
let floatVal = 3.14f
394+
let result = printVal floatVal
395+
Assert.True(result.Contains("3.14"))
396+
397+
let intVal = 42
398+
let result2 = printVal intVal
399+
Assert.AreEqual("42", result2)
400+
401+
let boolVal = true
402+
let result3 = printVal boolVal
403+
Assert.AreEqual("True", result3)
404+
405+
[<Test>]
406+
member _.TestDataUtilToPython () =
407+
let boolVal = true
408+
let result = toPython boolVal
409+
Assert.AreEqual("True", result)
410+
411+
let boolVal2 = false
412+
let result2 = toPython boolVal2
413+
Assert.AreEqual("False", result2)
414+
415+
let tensor0d = FurnaceImage.tensor(42.0f)
416+
let result3 = toPython tensor0d
417+
Assert.True(result3.Contains("42"))
418+
419+
[<Test>]
420+
member _.TestDataUtilRunScript () =
421+
runScript "echo" [|"test"|] 1000
422+
Assert.True(true)
423+
424+
runScript "nonexistentcommand" [|"test"|] 100
425+
Assert.True(true)

0 commit comments

Comments
 (0)