package com.sonymusic

import com.lesfurets.jenkins.unit.BasePipelineTest
import org.junit.jupiter.api.BeforeEach
import org.junit.jupiter.api.Test

import static org.junit.jupiter.api.Assertions.assertEquals

class SastTestsTest extends BasePipelineTest {
    def sastTests

    @BeforeEach
    void setUp() {
        super.setUp()
        sastTests = loadScript("vars/sastTests.groovy")
        helper.registerAllowedMethod('githubVulnerabilityScan', [Map])
        // Reset environment variables
        binding.setVariable('env', [:])
    }

    @Test
    void testCallPullRequestBuild() {
        binding.setVariable('env', [CHANGE_ID: '1'])
        sastTests()
        assertEquals(1, helper.callStack.findAll { it.methodName == 'githubVulnerabilityScan' }.size())
    }

    @Test
    void testCallNonPullRequestBuild() {
        sastTests()
        assertEquals(0, helper.callStack.findAll { it.methodName == 'githubVulnerabilityScan' }.size())
    }
}
