package no.valg.valgnatt.database.hibernate;

import org.junit.Test;

import static org.junit.Assert.assertEquals;

public class StemmekretsIdTest {

    private static final String KOMMNR = "0701";
    private static final String KRETSNR = "0001";
    private static final int VALGAAR = 2019;
    private static final String KO = "KO";
    private static final StemmekretsId STEMMEKRETS_ID = StemmekretsId.builder().kommnr(KOMMNR).kretsnr(KRETSNR).valgaar(VALGAAR).valgtype(KO).build();

    @Test
    public void id_gittStemmekretsId() {
        assertEquals("KO-2019-0701-0001", STEMMEKRETS_ID.id());
    }

    @Test
    public void equals_gittTilsvarendeObjekt() {
        StemmekretsId other = StemmekretsId.builder().kommnr(KOMMNR).kretsnr(KRETSNR).valgaar(VALGAAR).valgtype(KO).build();
        assertEquals(STEMMEKRETS_ID, other);
    }

    @Test
    public void toString_gittStemmekretsId() {
        assertEquals("KO-2019-0701-0001", STEMMEKRETS_ID.toString());
    }

    @Test
    public void hashCode_gittStemmekretsId() {
        assertEquals(-811609144, STEMMEKRETS_ID.hashCode());
    }
}
