Files
WoofWare.PawPrint/WoofWare.PawPrint.Test/Assembly.fs
2025-04-28 20:23:05 +01:00

22 lines
666 B
Forth

namespace WoofWare.PawPrint.Test
open System
open System.IO
open System.Reflection
[<RequireQualifiedAccess>]
module Assembly =
let getEmbeddedResource (name : string) (assy : Assembly) : Stream =
let resourceName =
assy.GetManifestResourceNames ()
|> Seq.filter (fun a -> a.EndsWith (name, StringComparison.Ordinal))
|> Seq.exactlyOne
assy.GetManifestResourceStream resourceName
let getEmbeddedResourceAsString (name : string) (assy : Assembly) : string =
use stream = getEmbeddedResource name assy
use reader = new StreamReader (stream, leaveOpen = true)
reader.ReadToEnd ()