/* * Copyright 2015 Nokia Solutions and Networks * Licensed under the Apache License, Version 2.0, * see license.txt file for details. */ package org.robotframework.ide.eclipse.main.plugin.project.build.validation.versiondependent; import static org.assertj.core.api.Assertions.assertThat; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IProgressMonitor; import org.junit.Test; import org.rf.ide.core.testdata.model.RobotVersion; import com.google.common.collect.Range; public class VersionDependentModelUnitValidatorTest { @Test public void validatorIsApplicable_whenVersionIsInsideTheRange() { final VersionDependentModelUnitValidator validator = createValidator(Range.atMost(RobotVersion.from("1.2.3"))); assertThat(validator.isApplicableFor(RobotVersion.from("1.2.3"))).isTrue(); assertThat(validator.isApplicableFor(RobotVersion.from("1.2.1"))).isTrue(); assertThat(validator.isApplicableFor(RobotVersion.from("1.1.1"))).isTrue(); assertThat(validator.isApplicableFor(RobotVersion.from("1.1"))).isTrue(); assertThat(validator.isApplicableFor(RobotVersion.from("0.7"))).isTrue(); } @Test public void validatorIsApplicable_whenVersionIsOutsideTheRange() { final VersionDependentModelUnitValidator validator = createValidator(Range.atLeast(RobotVersion.from("1.2.3"))); assertThat(validator.isApplicableFor(RobotVersion.from("1.2.1"))).isFalse(); assertThat(validator.isApplicableFor(RobotVersion.from("1.1.1"))).isFalse(); assertThat(validator.isApplicableFor(RobotVersion.from("1.1"))).isFalse(); assertThat(validator.isApplicableFor(RobotVersion.from("0.7"))).isFalse(); } private static VersionDependentModelUnitValidator createValidator(final Range<RobotVersion> applicableRange) { return new VersionDependentModelUnitValidator() { @Override public void validate(final IProgressMonitor monitor) throws CoreException { // nothing to do } @Override protected Range<RobotVersion> getApplicableVersionRange() { return applicableRange; } }; } }