Если еще заявление в тестовой среде Спока

Я пытаюсь написать покрытие тестового кода для метода ниже, у меня есть в Groovy. Я использую Spock test Framework для написания своего теста.

У меня возникли проблемы, пытаясь написать дело для части if else. Он жалуется, что мне все еще не хватает вызовов для

1 * script.sh(N_COMMAND)
1 * script.sh(Node2_COMMAND + b + XYZ_NODE_COMMAND) 

А также

!PROJECT_TYPE.equals('nodejs')
1 * script.sh(a + b + XYZ_GRADLE_COMMAND)

Я новичок в Споке. Любая помощь приветствуется.

Groovy код:

   void scanner() {

        if (obj.projectType.equals("nodejs")){
            script.sh N_COMMAND
            script.sh Node2_COMMAND + b + XYZ_NODE_COMMAND
        } else{
            script.sh a + b + XYZ_GRADLE_COMMAND
        }

        script.sh a + b + c
    }

Спок тестовый фреймворк код:

def 'should scanner'() {

    given:
    config.projectType >> PROJECT_TYPE

    when:
    scanner()

    then:
    PROJECT_TYPE.equals('nodejs')
    1 * script.sh(N_COMMAND)
    1 * script.sh(Node2_COMMAND + b + XYZ_NODE_COMMAND)

    then:
    !PROJECT_TYPE.equals('nodejs')
    1 * script.sh(a + b + XYZ_GRADLE_COMMAND)

    then:
    1 * script.sh(a + b + c)

    where:
    PROJECT_TYPE << ['nodejs', 'java']

}

0 ответов

Другие вопросы по тегам