<?php

require_once 'ABaseTest.php';
class ProvinsiKotaTest extends BaseTest
{
    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 testKotaKabupatenListShouldGiveSuccessResponse()
    {
        $this->doAPIShouldGiveSuccessResponse(
            'GET',
            'KotaKabupaten/list',
            [],
            200,
            "\nkota kabupaten list Passed"
        );
    }

    public function testProvinsiListShouldGiveSuccessResponse()
    {
        $this->doAPIShouldGiveSuccessResponse(
            'GET',
            'provinsi/list',
            [],
            200,
            "provinsi list Passed"
        );
    }

    public function testProvinsiListAllShouldGiveSuccessResponse()
    {
        $this->doAPIShouldGiveSubsetResponse(
            'GET',
            'provinsi/listAll',
            200,
            [
                'success' => true
            ],
            "provinsi list all Passed",
            [
                'headers' => [
                    'Authorization' => 'Bearer ' . $this->token
                ]
            ]
        );
    }
}