< Summary

Line coverage
100%
Covered lines: 36
Uncovered lines: 0
Coverable lines: 36
Total lines: 107
Line coverage: 100%
Branch coverage
100%
Covered branches: 12
Total branches: 12
Branch coverage: 100%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
File 1: Equals(...)100%44100%
File 1: Equals(...)100%22100%
File 1: op_Equality(...)100%11100%
File 1: op_Inequality(...)100%11100%
File 1: GetHashCode()100%11100%
File 2: .ctor(...)100%11100%
File 2: get_Vertex()100%11100%
File 2: set_Vertex(...)100%11100%
File 2: get_Texture()100%11100%
File 2: set_Texture(...)100%11100%
File 2: get_Normal()100%11100%
File 2: set_Normal(...)100%11100%
File 2: ToString()100%66100%

File(s)

C:\projects\jeremyansel-media-wavefrontobj\JeremyAnsel.Media.WavefrontObj\JeremyAnsel.Media.WavefrontObj\obj\Release\net10.0\Equatable.SourceGenerator\Equatable.SourceGenerator.EquatableGenerator\JeremyAnsel.Media.WavefrontObj.ObjTriplet.Equatable.g.cs

File 'C:\projects\jeremyansel-media-wavefrontobj\JeremyAnsel.Media.WavefrontObj\JeremyAnsel.Media.WavefrontObj\obj\Release\net10.0\Equatable.SourceGenerator\Equatable.SourceGenerator.EquatableGenerator\JeremyAnsel.Media.WavefrontObj.ObjTriplet.Equatable.g.cs' does not exist (any more).

C:\projects\jeremyansel-media-wavefrontobj\JeremyAnsel.Media.WavefrontObj\JeremyAnsel.Media.WavefrontObj\ObjTriplet.cs

#LineLine coverage
 1// <copyright file="ObjTriplet.cs" company="Jérémy Ansel">
 2// Copyright (c) 2017, 2019 Jérémy Ansel
 3// </copyright>
 4// <license>
 5// Licensed under the MIT license. See LICENSE.txt
 6// </license>
 7
 8using Equatable.Attributes;
 9using System.Globalization;
 10
 11namespace JeremyAnsel.Media.WavefrontObj;
 12
 13[System.Diagnostics.DebuggerDisplay("Vertex:{Vertex} Texture:{Texture} Normal:{Normal}")]
 14[Equatable]
 15public partial struct ObjTriplet
 16{
 17    public ObjTriplet(int vertexIndex, int textureIndex, int normalIndex)
 18    {
 419        Vertex = vertexIndex;
 420        Texture = textureIndex;
 421        Normal = normalIndex;
 422    }
 23
 424    public int Vertex { get; set; }
 25
 426    public int Texture { get; set; }
 27
 428    public int Normal { get; set; }
 29
 30    public readonly override string ToString()
 31    {
 432        if (Normal == 0)
 33        {
 434            if (Texture == 0)
 35            {
 436                return Vertex.ToString(CultureInfo.InvariantCulture);
 37            }
 38
 439            return string.Concat(
 440                Vertex.ToString(CultureInfo.InvariantCulture),
 441                "/",
 442                Texture.ToString(CultureInfo.InvariantCulture));
 43        }
 44
 445        if (Texture == 0)
 46        {
 447            return string.Concat(
 448                Vertex.ToString(CultureInfo.InvariantCulture),
 449                "//",
 450                Normal.ToString(CultureInfo.InvariantCulture));
 51        }
 52
 453        return string.Concat(
 454            Vertex.ToString(CultureInfo.InvariantCulture),
 455            "/",
 456            Texture.ToString(CultureInfo.InvariantCulture),
 457            "/",
 458            Normal.ToString(CultureInfo.InvariantCulture));
 59    }
 60}