<?php

require_once 'ABaseTest.php';
class SPIHasilKLPDTest extends BaseTest
{
    const BASE_URL = "spi/hasilklpd";
    protected $token;

    public function setUp()
    {
        parent::setUp();
        $this->token = $this->doLogin();
    }

    public function doLogin()
    {
        $login = $this->login(getenv("TEST_ADMIN_USERNAME"), getenv("TEST_ADMIN_PASSWORD"));
        $this->assertContains(
            [
                'success' => true
            ],
            $login,
            "login Failed"
        );
        return $login['data']['token'];
    }

    public function testInternalEksternalShouldGiveSuccessResponse() {
        $this->doAPIShouldGiveSimpleSuccessResponse(
            "GET",
            self::BASE_URL . '/internal_eksternal',
            [
                'query' => [
                    'level' => 'kementerian',
                    'year' => 2021,
                    'id_instansi' => 20014,
                ],
                'headers' => [
                    'Authorization' => "Bearer " . $this->token,
                    'Content-Type' => 'application/json'
                ]
            ],
            200,
            "internal_eksternal Passed"
        );
    }

    public function testDataAreaInstansiShouldGiveSuccessResponse() {
        $this->doAPIShouldGiveSimpleSuccessResponse(
            "GET",
            self::BASE_URL . '/data_area_instansi',
            [
                'query' => [
                    'level' => 'provinsi',
                    'year' => 2021,
                    'wilayah_id' => 32,
                ],
                'headers' => [
                    'Authorization' => "Bearer " . $this->token,
                    'Content-Type' => 'application/json'
                ]
            ],
            200,
            "data_area_instansi Passed"
        );
    }
}
