OnMouseDown sound effect not working

I am trying to make a sound effect when I mouse click the object, but I cannot hear it.

Here is my FruitClickHandler script which is attached to the fruit object

public class FruitClickHandler : MonoBehaviour
{
    private GameManager gameManager; 
    GameObject gameManagerObject;
    public ParticleSystem explosionParticle;
    public AudioClip clickSound;
    //public AudioClip sliceSound;slices, knife slice sound effect
    private AudioSource playerAudio;
    private void Start()
    { 
        playerAudio = GetComponent<AudioSource>();
        gameManagerObject = GameObject.FindGameObjectWithTag("Game Manager");
    
        gameManager = GameObject.Find("Game Manager").GetComponent<GameManager>();
        if (gameManager == null)
        {
            Debug.LogError("GameManager not found in the scene.");
        }
    }
    
    void OnMouseDown()
    {
        if (gameManager.isGameActive) {
            if (gameManager != null)
            {
                gameManager.UpdateScore(gameManagerObject);
            }
            else
            {
                Debug.LogError("GameManager reference is invalid.");
            }
            playerAudio.PlayOneShot(clickSound, 1f);
    
            Destroy(gameObject);
    
            Instantiate(explosionParticle, transform.position, Quaternion.identity);
        }
    }
    
    // Handle collisions with other objects
    private void OnTriggerEnter(Collider other)//if object goes out of frame
    {
        Destroy(gameObject);
    }
}

Here is a screenshot of my object with the splat sound attached


Any comments or advice is appreciated. Thanks.

You are destroying the AudioSource right after you tell it to play. I has zero time to actually play any sound.

Btw You check for null after you access the member, so all you can get is null reference exception

if (gameManager.isGameActive) {
     if (gameManager != null)

I tried a different method of having an AudioSourceObject where all the sound comes from, so it will never be destroyed. I made an empty game object, dragged it into project folder and dragged the object into my fruithandler script.
I am getting a can not play a disabled audio source error though.

Here is my new code below:

public class FruitClickHandler : MonoBehaviour
{
    private GameManager gameManager; 
    GameObject gameManagerObject;
    public ParticleSystem explosionParticle;
    public GameObject audioSourceObject; 
    private AudioSource playerAudio;

    private void Start()
    { 
        playerAudio = audioSourceObject.GetComponent<AudioSource>();
        gameManagerObject = GameObject.FindGameObjectWithTag("Game Manager");

        gameManager = GameObject.Find("Game Manager").GetComponent<GameManager>();
    }

    private void OnMouseDown()
    {
        if (gameManager.isGameActive)
        {
            gameManager.UpdateScore(gameManagerObject);
 

            playerAudio.PlayOneShot(audioSourceObject.GetComponent<AudioSource>().clip, 1f);

            Destroy(gameObject);
        }
    }

}

Here is an image of my object:


I would appreciate any help. Thanks.