001package org.woehlke.jakartaee.petclinic.unit;
002
003
004import lombok.extern.java.Log;
005import org.junit.jupiter.api.*;
006import org.woehlke.jakartaee.petclinic.deployments.UnitTestData;
007import org.woehlke.jakartaee.petclinic.owner.Owner;
008import org.woehlke.jakartaee.petclinic.pet.Pet;
009
010import java.time.Instant;
011import java.util.*;
012import java.util.Date;
013
014import static org.assertj.core.api.Assertions.assertThat;
015
016@Log
017@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
018public class OwnerUnitTest extends UnitTestData {
019
020    @Test
021    @Order(1)
022    void runEntityTest01(){
023        log.info("runEntityTest01");
024        assertThat(uuid01.compareTo(uuid02)!=0);
025        assertThat(name01.compareTo(name02)!=0);
026        Owner o01 = new Owner();
027        o01.setLastName(name01);
028        o01.setFirstName(name02);
029        o01.setUuid(uuid01);
030        Owner o02 = new Owner();
031        o02.setLastName(name01);
032        o02.setFirstName(name02);
033        o02.setUuid(uuid02);
034        assertThat(o01.compareTo(o02)==0);
035    }
036
037    @Test
038    @Order(2)
039    void runEntityTest02(){
040        log.info("runEntityTest02");
041        assertThat(name01.compareTo(name02)!=0);
042        assertThat(uuid01.compareTo(uuid02)!=0);
043        assertThat(id01.compareTo(id02)!=0);
044        Owner o01 = new Owner();
045        o01.setLastName(name01);
046        o01.setFirstName(name02);
047        o01.setId(id01);
048        o01.setUuid(uuid01);
049        Owner o02 = new Owner();
050        o02.setLastName(name01);
051        o02.setFirstName(name02);
052        o02.setUuid(uuid02);
053        o02.setId(id02);
054        assertThat(o01.compareTo(o02)==0);
055    }
056
057    @Test
058    @Order(3)
059    void runEntityTest11(){
060        log.info("runEntityTest11");
061        assertThat(name01.compareTo(name02)!=0);
062        assertThat(uuid01.compareTo(uuid02)!=0);
063        Owner o01 = new Owner();
064        o01.setLastName(name01);
065        o01.setFirstName(name01);
066        o01.setUuid(uuid01);
067        Owner o02 = new Owner();
068        o02.setLastName(name02);
069        o02.setFirstName(name02);
070        o02.setUuid(uuid02);
071        assertThat(o01.compareTo(o02)==0);
072    }
073
074    @Test
075    @Order(4)
076    void runEntityTest12(){
077        log.info("runEntityTest12");
078        assertThat(name01.compareTo(name02)!=0);
079        assertThat(uuid01.compareTo(uuid02)!=0);
080        assertThat(id01.compareTo(id02)!=0);
081        Owner o01 = new Owner();
082        o01.setLastName(name01);
083        o01.setFirstName(name01);
084        o01.setId(id01);
085        o01.setUuid(uuid01);
086        Owner o02 = new Owner();
087        o02.setLastName(name02);
088        o02.setFirstName(name02);
089        o02.setUuid(uuid02);
090        o02.setId(id02);
091        assertThat(o01.compareTo(o02)==0);
092    }
093
094    @Test
095    @Order(5)
096    void runEntityTest21(){
097        log.info("runEntityTest21");
098        assertThat(name01.compareTo(name02)!=0);
099        Owner o01 = new Owner();
100        o01.setLastName(name01);
101        o01.setFirstName(name01);
102        o01.setUuid(uuid);
103        Owner o02 = new Owner();
104        o02.setLastName(name02);
105        o02.setFirstName(name02);
106        o02.setUuid(uuid);
107        assertThat(o01.compareTo(o02)!=0);
108    }
109
110    @Test
111    @Order(6)
112    void runEntityTest22(){
113        log.info("runEntityTest22");
114        assertThat(name01.compareTo(name02)!=0);
115        Owner o01 = new Owner();
116        o01.setLastName(name01);
117        o01.setFirstName(name01);
118        o01.setId(id);
119        o01.setUuid(uuid);
120        Owner o02 = new Owner();
121        o02.setLastName(name02);
122        o02.setFirstName(name02);
123        o02.setUuid(uuid);
124        o02.setId(id);
125        assertThat(o01.compareTo(o02)!=0);
126    }
127
128    @Test
129    @Order(7)
130    void runEntityTest99(){
131        log.info("runEntityTest99");
132        Collections.sort(ownerList);
133        assertThat(ownerList.size() > 2);
134        Iterator<Owner> i =  ownerList.iterator();
135        Owner firstEntity = i.next();
136        while(i.hasNext()){
137            Owner secondEntity = i.next();
138            int compared = secondEntity.compareTo(firstEntity);
139            assertThat(compared > 0);
140            firstEntity = secondEntity;
141        }
142    }
143
144    /*
145    @Test
146    @Order(8)
147    public void testGetPetst01(){
148        log.info("testGetPetst01");
149        int expectedSize  = 0;
150        Owner entity = new Owner();
151        int size = entity.getPetsAsList().size();
152        assertThat(expectedSize == size);
153    }
154
155    @Test
156    @Order(9)
157    public void testGetPetst02(){
158        log.info("testGetPetst02");
159        Owner entity = ownerList.get(2);
160        String petName = UnitTestData.petNames[2];
161        int size = 0;
162        //int expectedSize  = entity.getPetsAsList().size() + 1;
163        int expectedSize  = size + 1;
164        assertThat("Nelly".compareTo(petName)==0);
165        Pet pet = new Pet();
166        pet.setName(petName);
167        pet.setBirthDate((Date)Date.from(Instant.now()));
168        pet.setUuid(UUID.randomUUID());
169        entity.addPet(pet);
170        int size = entity.getPetsAsList().size();
171        assertThat(expectedSize == size);
172    }
173
174    @Test
175    @Order(10)
176    public void testGetPetst03(){
177        log.info("testGetPetst03");
178        Owner entity = ownerList.get(2);
179        String petName = petNames[2];
180        int expectedSize  = entity.getPetsAsList().size() + 1;
181        assertThat("Nelly".compareTo(petName)==0);
182        Pet pet = new Pet();
183        pet.setBirthDate((Date)Date.from(Instant.now()));
184        pet.setName(petName);
185        pet.setUuid(UUID.randomUUID());
186        pet.setOwner(entity);
187        //entity.addPet(pet);
188        pet = entity.getPetsAsList().iterator().next();
189        assertThat(petName ==  pet.getName());
190    }
191
192    @Test
193    @Order(11)
194    public void testGetPetst04() {
195        log.info("testGetPetst04");
196        Owner entity = ownerList.get(3);
197        int expectedSize = petSet.size();
198        entity.setPets(petSet);
199        int size = entity.getPetsAsList().size();
200        assertThat(expectedSize == size);
201    }
202
203    @Test
204    @Order(12)
205    public void testGetPetst05() {
206        log.info("testGetPetst05");
207        Owner entity = ownerList.get(3);
208        int expectedSize = petSet.size();
209        entity.setPets(petSet);
210        int size = entity.getPetsAsList().size();
211        assertThat(expectedSize == size);
212        assertThat(petList.size() > 2);
213        Iterator<Pet> i =  petList.iterator();
214        Pet first = i.next();
215        while(i.hasNext()){
216            Pet second = i.next();
217            int compared = second.compareTo(first);
218            assertThat(compared > 0);
219            first = second;
220        }
221    }
222    */
223}