• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

net-daemon / netdaemon / 19589275809

18 Nov 2025 08:53PM UTC coverage: 84.105% (+0.03%) from 84.073%
19589275809

push

github

web-flow
Handle numeric manufacturer on HassDevice Deserialization (#1348)

896 of 1187 branches covered (75.48%)

Branch coverage included in aggregate %.

48 of 50 new or added lines in 6 files covered. (96.0%)

3390 of 3909 relevant lines covered (86.72%)

8376.06 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

86.21
/src/Client/NetDaemon.HassClient/Internal/Json/EnsureArrayOfStringConverter.cs
1
namespace NetDaemon.Client.Internal.Json;
2

3
class EnsureArrayOfStringConverter : JsonConverter<IReadOnlyList<string>>
4
{
5
    private readonly EnsureStringConverter _ensureStringConverter = new();
12✔
6

7
    public override IReadOnlyList<string> Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
8
    {
9
        if (reader.TokenType == JsonTokenType.StartArray)
258✔
10
        {
11
            var list = new List<string>();
257✔
12
            while (reader.Read() && reader.TokenType != JsonTokenType.EndArray)
259✔
13
            {
14
                string? item = _ensureStringConverter.Read(ref reader, typeof(string), options);
2✔
15
                if (item != null)
2✔
16
                {
17
                    list.Add(item);
2✔
18
                }
19
            }
20
            return list;
257✔
21
        }
22

23
        string? singleItem = _ensureStringConverter.Read(ref reader, typeof(string), options);
1✔
24
        if (singleItem != null)
1!
25
        {
26
            return new List<string> { singleItem };
1✔
27
        }
28

NEW
29
        return [];
×
30
    }
31

32
    public override void Write(Utf8JsonWriter writer, IReadOnlyList<string> value, JsonSerializerOptions options)
33
    {
34
        writer.WriteStartArray();
2✔
35
        foreach (var item in value)
4!
36
        {
NEW
37
            writer.WriteStringValue(item);
×
38
        }
39
        writer.WriteEndArray();
2✔
40
    }
2✔
41
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc