Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import org.junit.Assert;
- import org.junit.Before;
- import org.junit.Test;
- import java.util.ArrayList;
- import java.util.List;
- public class Test3 {
- private Olympics olympics;
- private InputGenerator inputGenerator;
- class InputGenerator {
- private final String[] COMPETITOR_NAMES = {"Ani", "Ani", "Ivo", "Asd", "Georgi", "Ivan", "Stamat", "Georgi", "Galin", "Mariika", "Ani", "Ani", "Ivo", "Asd", "Georgi", "Ivan", "Stamat", "Georgi", "Galin", "Mariika", "Ani", "Ani", "Ivo", "Asd", "Georgi", "Ivan", "Stamat", "Georgi", "Galin", "Mariika"};
- private final String[] COMPETITION_NAMES = {"Java", "VS", "SoftUniada", "CDiez", "Oracle", "JavaScript", "PHP", "Pascal", "C", "Swift", "Java", "VS", "SoftUniada", "CDiez", "Oracle", "JavaScript", "PHP", "Pascal", "C", "Swift", "Java", "VS", "SoftUniada", "CDiez", "Oracle", "JavaScript", "PHP", "Pascal", "C", "Swift", "Java", "VS", "SoftUniada", "CDiez", "Oracle", "JavaScript", "PHP", "Pascal", "C", "SwiftJava", "VS", "SoftUniada", "CDiez", "Oracle", "JavaScript", "PHP", "Pascal", "C", "SwiftJava", "VS", "SoftUniada", "CDiez", "Oracle", "JavaScript", "PHP", "Pascal", "C", "Swift"};
- List<Competitor> generateCompetitors(int count) {
- List<Competitor> competitors = new ArrayList<>();
- for (int i = 1; i <= count; i++) {
- competitors.add(new Competitor(i, COMPETITOR_NAMES[i % COMPETITOR_NAMES.length]));
- }
- return competitors;
- }
- List<Competition> generateCompetitions(int count) {
- List<Competition> competitions = new ArrayList<>();
- for (int i = 1; i <= count; i++) {
- competitions.add(new Competition(COMPETITION_NAMES[i % COMPETITION_NAMES.length], i, 5 + i));
- }
- return competitions;
- }
- }
- @Before
- public void setUp() {
- this.olympics = new OlympicsImpl();
- this.inputGenerator = new InputGenerator();
- }
- @Test
- public void addCompetitor_1_000_000_competitors_memory_usage() {
- List<Competitor> competitors = this.inputGenerator.generateCompetitors(500000);
- Runtime runtime = Runtime.getRuntime();
- long usedMemoryBefore = runtime.totalMemory() - runtime.freeMemory();
- for (Competitor competitor : competitors) {
- this.olympics.addCompetitor(competitor.getId(), competitor.getName());
- }
- long usedMemoryInMB = (Math.abs(runtime.totalMemory() - runtime.freeMemory() - usedMemoryBefore)) / (1024 * 1024);
- Assert.assertTrue(usedMemoryInMB > 50 && usedMemoryInMB < 120);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement