package org.ovirt.engine.core.utils; import static org.junit.Assert.assertEquals; import org.junit.Test; import org.ovirt.engine.core.common.businessentities.VmPool; public class NameForVmInPoolGeneratorTest { @Test public void validateGenerateVmNameStartsWithMask() { NameForVmInPoolGenerator generator = createNameForVmInPoolGenerator("???mypool"); for (int i=1; i<17; ++i) { generator.generateVmName(); } assertEquals("017mypool", generator.generateVmName()); } @Test public void validateGenerateVmNameMaskInside() { NameForVmInPoolGenerator generator = createNameForVmInPoolGenerator("my???pool"); assertEquals("my001pool", generator.generateVmName()); } @Test public void validateGenerateVmNameEndsWithMask() { NameForVmInPoolGenerator generator = createNameForVmInPoolGenerator("mypool???"); for (int i=1; i<101; ++i) { generator.generateVmName(); } assertEquals("mypool101", generator.generateVmName()); } @Test public void validateGenerateVmNameWithoutMask1() { NameForVmInPoolGenerator generator = createNameForVmInPoolGenerator("mypool"); assertEquals("mypool-1", generator.generateVmName()); } @Test public void validateGenerateVmNameWithoutMask2() { NameForVmInPoolGenerator generator = createNameForVmInPoolGenerator("mypool"); for (int i=1; i<17; ++i) { generator.generateVmName(); } assertEquals("mypool-17", generator.generateVmName()); } @Test public void validateGenerateVmNameWithoutMask3() { NameForVmInPoolGenerator generator = createNameForVmInPoolGenerator("mypool"); for (int i=1; i<101; ++i) { generator.generateVmName(); } assertEquals("mypool-101", generator.generateVmName()); } private NameForVmInPoolGenerator createNameForVmInPoolGenerator(String poolName) { return new NameForVmInPoolGenerator(poolName.replace('?', VmPool.MASK_CHARACTER)); } }