< Summary

Class:IfPuzzle
Assembly:Test
File(s):D:/--UnityProject/VR/VRExplorer_subjects/Edutainment-Escape-Room/Assets/Scripts/Test/IfPuzzle/IfPuzzle.cs
Covered lines:23
Uncovered lines:10
Coverable lines:33
Total lines:53
Line coverage:69.6% (23 of 33)
Covered branches:0
Total branches:0
Covered methods:3
Total methods:5
Method coverage:60% (3 of 5)

Coverage History

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
Awake()0%000100%
OnEnable()0%000100%
OnDisable()0%000100%
ObjectSnapped(...)0%0000%
ObjectRemoved(...)0%0000%

File(s)

D:/--UnityProject/VR/VRExplorer_subjects/Edutainment-Escape-Room/Assets/Scripts/Test/IfPuzzle/IfPuzzle.cs

#LineLine coverage
 1using System;
 2using System.Collections;
 3using System.Collections.Generic;
 4using UnityEngine;
 5using UnityEngine.XR.Interaction.Toolkit;
 6public class IfPuzzle : MonoBehaviour
 7{
 8    [SerializeField] private Transform correctPiece;
 9    [SerializeField] private ifManager linkedIfManager;
 10
 11    private XRSocketInteractor socket;
 12
 213    private void Awake() => socket = GetComponent<XRSocketInteractor>();
 14
 15    private void OnEnable()
 216    {
 217        if(socket == null)
 118        {
 119            socket = GetComponent<XRSocketInteractor>();
 120        }
 221        if(socket != null)
 122        {
 123            socket.selectEntered.AddListener(ObjectSnapped);
 124            socket.selectExited.AddListener(ObjectRemoved);
 125        }
 226    }
 27
 28    private void OnDisable()
 229    {
 230        if (socket == null)
 131        {
 132            socket = GetComponent<XRSocketInteractor>();
 133        }
 234        if (socket != null)
 135        {
 136            socket.selectEntered.RemoveListener(ObjectSnapped);
 137            socket.selectExited.RemoveListener(ObjectRemoved);
 138        }
 239    }
 40
 41    private void ObjectSnapped(SelectEnterEventArgs arg0)
 042    {
 043        var snappedObjectName = arg0.interactableObject;
 044        if (snappedObjectName.transform.name == correctPiece.name)
 045        {
 046            linkedIfManager.correctPiece();
 047        }
 048    }
 49    private void ObjectRemoved(SelectExitEventArgs arg0)
 050    {
 051        linkedIfManager.removedPiece();
 052    }
 53}