Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.osee.ote.core/src/org/eclipse/osee/ote/message/elements/DiscreteElement.java')
-rw-r--r--plugins/org.eclipse.osee.ote.core/src/org/eclipse/osee/ote/message/elements/DiscreteElement.java1469
1 files changed, 0 insertions, 1469 deletions
diff --git a/plugins/org.eclipse.osee.ote.core/src/org/eclipse/osee/ote/message/elements/DiscreteElement.java b/plugins/org.eclipse.osee.ote.core/src/org/eclipse/osee/ote/message/elements/DiscreteElement.java
deleted file mode 100644
index 86b10d9bd89..00000000000
--- a/plugins/org.eclipse.osee.ote.core/src/org/eclipse/osee/ote/message/elements/DiscreteElement.java
+++ /dev/null
@@ -1,1469 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2007 Boeing.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Boeing - initial API and implementation
- *******************************************************************************/
-package org.eclipse.osee.ote.message.elements;
-
-import org.eclipse.osee.ote.core.MethodFormatter;
-import org.eclipse.osee.ote.core.ReturnFormatter;
-import org.eclipse.osee.ote.core.environment.interfaces.ITestEnvironmentAccessor;
-import org.eclipse.osee.ote.core.testPoint.CheckGroup;
-import org.eclipse.osee.ote.core.testPoint.CheckPoint;
-import org.eclipse.osee.ote.core.testPoint.Operation;
-import org.eclipse.osee.ote.message.Message;
-import org.eclipse.osee.ote.message.condition.EqualsCondition;
-import org.eclipse.osee.ote.message.condition.IDiscreteElementCondition;
-import org.eclipse.osee.ote.message.condition.InRangeCondition;
-import org.eclipse.osee.ote.message.condition.ListCondition;
-import org.eclipse.osee.ote.message.condition.NotInRangeCondition;
-import org.eclipse.osee.ote.message.condition.PulseCondition;
-import org.eclipse.osee.ote.message.data.MemoryResource;
-import org.eclipse.osee.ote.message.data.MessageData;
-import org.eclipse.osee.ote.message.interfaces.ITestAccessor;
-
-public abstract class DiscreteElement<T extends Comparable<T>> extends Element implements Comparable<DiscreteElement<T>> {
-
- private static final String FOR_2_PULSES = " FOR 2 PULSES";
-
- public DiscreteElement(Message<?, ?, ?> msg, String elementName, MessageData messageData, int byteOffset, int msb, int lsb, int originalMsb, int originalLsb) {
- super(msg, elementName, messageData, byteOffset, msb, lsb, originalMsb, originalLsb);
- }
-
- public DiscreteElement(Message<?, ?, ?> msg, String elementName, MessageData messageData, int byteOffset, int msb, int lsb) {
- super(msg, elementName, messageData, byteOffset, msb, lsb);
- }
-
- public DiscreteElement(Message<?, ?, ?> msg, String elementName, MessageData messageData, int bitOffset, int bitLength) {
- super(msg, elementName, messageData, bitOffset, bitLength);
- }
-
- public abstract void setValue(T obj);
-
- public abstract T getValue();
-
- public abstract String toString(T obj);
-
- public String valueOf() {
- return getValue().toString();
- }
-
- public abstract void parseAndSet(ITestEnvironmentAccessor accessor, String value) throws IllegalArgumentException;
-
- /**
- * Sets the element to the "value" passed.
- *
- * @param accessor Reference to the accessor.
- * @param value The value to set.
- */
- public void set(ITestEnvironmentAccessor accessor, T value) {
- if (accessor != null) {
- accessor.getLogger().methodCalledOnObject(accessor, this.getFullName(), new MethodFormatter().add(value),
- getMessage());
- }
-
- setValue(value);
-
- if (accessor != null) {
- accessor.getLogger().methodEnded(accessor);
- }
- }
-
- /**
- * Verifies that the element is set to "value".
- *
- * @param accessor Reference to the accessor.
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param value Expected value
- * @return if the check passed
- */
- public boolean check(ITestAccessor accessor, CheckGroup checkGroup, T value) {
-
- if (accessor != null) {
- accessor.getLogger().methodCalledOnObject(accessor, this.getFullName(), new MethodFormatter().add(value),
- getMessage());
- }
-
- T actualValue = getValue();
- CheckPoint passFail = new CheckPoint(this.getFullName(), toString(value), toString(actualValue),
- actualValue.equals(elementMask(value)), 0);
-
- if (checkGroup == null) {
- if (accessor != null) {
- accessor.getLogger().testpoint(accessor, accessor.getTestScript(), accessor.getTestCase(), passFail);
- }
- } else {
- checkGroup.add(passFail);
- }
-
- if (accessor != null) {
- accessor.getLogger().methodEnded(accessor);
- }
- return passFail.isPass();
- }
-
- public boolean checkNT(ITestAccessor accessor, CheckGroup checkGroup, T value) {
- accessor.getLogger().methodCalledOnObject(accessor, this.getFullName(), new MethodFormatter().add(value),
- getMessage());
- boolean v = getValue().equals(elementMask(value));
- accessor.getLogger().methodEnded(accessor);
- return v;
- }
-
- public boolean checkNotNT(ITestAccessor accessor, CheckGroup checkGroup, T value) {
- accessor.getLogger().methodCalledOnObject(accessor, this.getFullName(), new MethodFormatter().add(value),
- getMessage());
- boolean v = !getValue().equals(elementMask(value));
- accessor.getLogger().methodEnded(accessor);
- return v;
- }
-
- public final boolean check(ITestAccessor accessor, T value) {
- return this.check(accessor, (CheckGroup) null, value);
- }
-
- /**
- * Verifies that the element is set to "value" within the number of "milliseconds" passed.
- *
- * @param value Expected value.
- * @param milliseconds Number of milliseconds to wait for the element to equal the "value".
- * @return If the check passed.
- */
- public final boolean check(ITestAccessor accessor, T value, int milliseconds) throws InterruptedException {
- return check(accessor, (CheckGroup) null, value, milliseconds);
- }
-
- /**
- * Verifies that the element is set to a value within the range specified. Either end of the range can be set to be
- * inclusive or not.
- *
- * @param accessor Reference to the accessor.
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param minValue The minimum value of the range.
- * @param minInclusive If the minumum value of the range is inclusive.
- * @param maxValue The maximum value of the range.
- * @param maxInclusive If the maximum value of the range is inclusive.
- * @return if the check passed
- */
- public boolean checkRange(ITestAccessor accessor, CheckGroup checkGroup, T minValue, boolean minInclusive, T maxValue, boolean maxInclusive) {
- checkAccessor(accessor);
- accessor.getLogger().methodCalledOnObject(accessor, this.getFullName(),
- new MethodFormatter().add(minValue).add(minInclusive).add(maxValue).add(maxInclusive), getMessage());
-
- InRangeCondition<T> c = new InRangeCondition<>(this, minValue, minInclusive, maxValue, maxInclusive);
-
- boolean pass = c.check();
- CheckPoint passFail = new CheckPoint(this.getFullName(),
- "In " + expectedRangeString(toString(minValue).toString(), minInclusive, toString(maxValue), maxInclusive),
- toString(c.getLastCheckValue()), pass, 0);
-
- if (checkGroup == null) {
- accessor.getLogger().testpoint(accessor, accessor.getTestScript(), accessor.getTestCase(), passFail);
- } else {
- checkGroup.add(passFail);
- }
- accessor.getLogger().methodEnded(accessor);
- return passFail.isPass();
- }
-
- public boolean checkRangeNT(ITestAccessor accessor, T minValue, boolean minInclusive, T maxValue, boolean maxInclusive) {
- checkAccessor(accessor);
- accessor.getLogger().methodCalledOnObject(accessor, this.getFullName(),
- new MethodFormatter().add(minValue).add(minInclusive).add(maxValue).add(maxInclusive), getMessage());
- InRangeCondition<T> c = new InRangeCondition<>(this, minValue, minInclusive, maxValue, maxInclusive);
- boolean pass = c.check();
- accessor.getLogger().methodEnded(accessor);
- return pass;
- }
-
- public boolean checkRangeNT(ITestAccessor accessor, T minValue, boolean minInclusive, T maxValue, boolean maxInclusive, int millis) throws InterruptedException {
- checkAccessor(accessor);
- accessor.getLogger().methodCalledOnObject(accessor, this.getFullName(),
- new MethodFormatter().add(minValue).add(minInclusive).add(maxValue).add(maxInclusive), getMessage());
- InRangeCondition<T> c = new InRangeCondition<>(this, minValue, minInclusive, maxValue, maxInclusive);
- MsgWaitResult result = getMessage().waitForCondition(accessor, c, false, millis);
- accessor.getLogger().methodEnded(accessor);
- return result.isPassed();
- }
-
- /**
- * Verifies that the element is set to a value within the range specified. Assumes that both ends of the range are
- * inclusive.
- *
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param minValue The minimum value of the range.
- * @param maxValue The maximum value of the range.
- * @return if the check passed
- */
- public final boolean checkRange(ITestAccessor accessor, CheckGroup checkGroup, T minValue, T maxValue) {
- return checkRange(accessor, checkGroup, minValue, true, maxValue, true);
- }
-
- /**
- * Verifies that the element is NOT set to "value".
- *
- * @param accessor Reference to the accessor.
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param value value to test against
- * @return if the check passed
- */
- public boolean checkNot(ITestAccessor accessor, CheckGroup checkGroup, T value) {
- if (accessor != null) {
- accessor.getLogger().methodCalledOnObject(accessor, this.getFullName(), new MethodFormatter().add(value),
- getMessage());
- }
-
- T actualValue = getValue();
-
- CheckPoint passFail = new CheckPoint(this.getFullName(), "Not " + toString(value), toString(actualValue),
- !actualValue.equals(value), 0);
-
- if (checkGroup == null) {
- if (accessor != null) {
- accessor.getLogger().testpoint(accessor, accessor.getTestScript(), accessor.getTestCase(), passFail);
- }
- } else {
- checkGroup.add(passFail);
- }
-
- if (accessor != null) {
- accessor.getLogger().methodEnded(accessor);
- }
- return passFail.isPass();
- }
-
- /**
- * Verifies that the element is set to a value within the range specified for the entire time specified. Assumes
- * range is inclusive.
- *
- * @param minValue The minimum value of the range.
- * @param maxValue The maximum value of the range.
- * @param milliseconds Number of milliseconds to wait before failing.
- * @return last value observed
- */
- public final T checkMaintainRange(ITestAccessor accessor, T minValue, T maxValue, int milliseconds) throws InterruptedException {
- return checkMaintainRange(accessor, null, minValue, true, maxValue, true, milliseconds);
- }
-
- /**
- * Verifies that the element is set to a value within the range specified for the entire time specified.
- *
- * @param minValue The minimum value of the range.
- * @param minInclusive If the minumum value of the range is inclusive.
- * @param maxValue The maximum value of the range.
- * @param maxInclusive If the maximum value of the range is inclusive.
- * @param milliseconds Number of milliseconds to wait before failing.
- * @return last value observed
- */
- public final T checkMaintainRange(ITestAccessor accessor, T minValue, boolean minInclusive, T maxValue, boolean maxInclusive, int milliseconds) throws InterruptedException {
- return checkMaintainRange(accessor, (CheckGroup) null, minValue, minInclusive, maxValue, maxInclusive,
- milliseconds);
- }
-
- /**
- * Verifies that the element is set to a value within the range specified for the entire time specified. Assumes
- * range is inclusive.
- *
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param minValue The minimum value of the range.
- * @param maxValue The maximum value of the range.
- * @param milliseconds Number of milliseconds to wait before failing.
- * @return last value observed
- */
- public final T checkMaintainNotRange(ITestAccessor accessor, T minValue, T maxValue, int milliseconds) throws InterruptedException {
- return checkMaintainNotRange(accessor, null, minValue, true, maxValue, true, milliseconds);
- }
-
- /**
- * Verifies that the element is not set to a value within the range specified for the entire time specified.
- *
- * @param minValue The minimum value of the range.
- * @param minInclusive If the minumum value of the range is inclusive.
- * @param maxValue The maximum value of the range.
- * @param maxInclusive If the maximum value of the range is inclusive.
- * @param milliseconds Number of milliseconds to wait before failing.
- * @return last value observed
- */
- public final T checkMaintainNotRange(ITestAccessor accessor, T minValue, boolean minInclusive, T maxValue, boolean maxInclusive, int milliseconds) throws InterruptedException {
- return checkMaintainNotRange(accessor, (CheckGroup) null, minValue, minInclusive, maxValue, maxInclusive,
- milliseconds);
- }
-
- /**
- * Verifies that the element is set to a value within the range specified for the entire time specified. Assumes
- * range is inclusive.
- *
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param minValue The minimum value of the range.
- * @param maxValue The maximum value of the range.
- * @param milliseconds Number of milliseconds to wait before failing.
- * @return last value observed
- */
- public final T checkMaintainRange(ITestAccessor accessor, CheckGroup checkGroup, T minValue, T maxValue, int milliseconds) throws InterruptedException {
- return checkMaintainRange(accessor, checkGroup, minValue, true, maxValue, true, milliseconds);
- }
-
- /**
- * Verifies that the element is set to a value outside the range specified. Either end of the range can be set to be
- * inclusive or not.
- *
- * @param minValue The minimum value of the range.
- * @param minInclusive If the minumum value of the range is inclusive. If true the actual value must not < and not =
- * to the range value.
- * @param maxValue The maximum value of the range.
- * @param maxInclusive If the maximum value of the range is inclusive. If true the actual value must not > and not =
- * to the range value.
- * @param milliseconds Number of milliseconds to wait for the element to be outside the range.
- * @return if the check passed
- */
- public final boolean checkNotRange(ITestAccessor accessor, T minValue, boolean minInclusive, T maxValue, boolean maxInclusive, int milliseconds) throws InterruptedException {
- return checkNotRange(accessor, (CheckGroup) null, minValue, minInclusive, maxValue, maxInclusive, milliseconds);
- }
-
- /**
- * Verifies that the element is set to a value outside the range specified. Either end of the range can be set to be
- * inclusive or not.
- *
- * @param accessor Reference to the accessor.
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param minValue The minimum value of the range.
- * @param minInclusive If the minumum value of the range is inclusive. If true the actual value must not < and not =
- * to the range value.
- * @param maxValue The maximum value of the range.
- * @param maxInclusive If the maximum value of the range is inclusive. If true the actual value must not > and not =
- * to the range value.
- * @return if the check passed
- */
- public final boolean checkNotRange(ITestAccessor accessor, CheckGroup checkGroup, T minValue, boolean minInclusive, T maxValue, boolean maxInclusive) throws InterruptedException {
- return checkNotRange(accessor, (CheckGroup) null, minValue, minInclusive, maxValue, maxInclusive, 0);
- }
-
- /**
- * Waits until the element equals the "value" passed. Returns last value observed upon a time out.
- *
- * @param accessor Reference to the accessor.
- * @param value The expected value to wait for.
- * @param milliseconds Number of milliseconds to wait before failing.
- * @return last value found. Either value expected or value found at timeout.
- */
- public T waitForValue(ITestEnvironmentAccessor accessor, T value, int milliseconds) throws InterruptedException {
- if (accessor != null) {
- accessor.getLogger().methodCalledOnObject(accessor, this.getFullName(),
- new MethodFormatter().add(value).add(milliseconds), getMessage());
- }
- EqualsCondition<T> c = new EqualsCondition<>(this, value);
- getMessage().waitForCondition(accessor, c, false, milliseconds);
- if (accessor != null) {
- accessor.getLogger().methodEnded(accessor);
- }
- return c.getLastCheckValue();
- }
-
- /**
- * Waits until the element has a value other than the "value" passed. Returns last value observed upon a time out.
- *
- * @param accessor Reference to the accessor.
- * @param value The expected value to wait for.
- * @param milliseconds Number of milliseconds to wait before failing.
- * @return last value observed
- */
- public T waitForNotValue(ITestEnvironmentAccessor accessor, T value, int milliseconds) throws InterruptedException {
- if (accessor != null) {
- accessor.getLogger().methodCalledOnObject(accessor, this.getFullName(),
- new MethodFormatter().add(value).add(milliseconds), getMessage());
- }
- EqualsCondition<T> c = new EqualsCondition<>(this, true, value);
- getMessage().waitForCondition(accessor, c, false, milliseconds);
- if (accessor != null) {
- accessor.getLogger().methodEnded(accessor);
- }
- return c.getLastCheckValue();
- }
-
- /**
- * Waits until the element has a value within the range specified. Either end of the range can be inclusive or not.
- *
- * @param accessor Reference to the accessor.
- * @param minValue The minimum value of the range.
- * @param minInclusive If the minumum value of the range is inclusive.
- * @param maxValue The maximum value of the range.
- * @param maxInclusive If the maximum value of the range is inclusive.
- * @param milliseconds Number of milliseconds to wait before failing.
- * @return last value observed
- */
- public T waitForRange(ITestEnvironmentAccessor accessor, T minValue, boolean minInclusive, T maxValue, boolean maxInclusive, int milliseconds) throws InterruptedException {
- if (accessor != null) {
- accessor.getLogger().methodCalledOnObject(accessor, this.getFullName(),
- new MethodFormatter().add(minValue).add(minInclusive).add(maxValue).add(maxInclusive).add(milliseconds),
- getMessage());
- }
- InRangeCondition<T> c = new InRangeCondition<>(this, minValue, minInclusive, maxValue, maxInclusive);
- getMessage().waitForCondition(accessor, c, false, milliseconds);
- if (accessor != null) {
- accessor.getLogger().methodEnded(accessor);
- }
- return c.getLastCheckValue();
- }
-
- /**
- * Waits until the element has a value within the range specified. Assumes the range is inclusive.
- *
- * @param minValue The minimum value of the range.
- * @param maxValue The maximum value of the range.
- * @param milliseconds Number of milliseconds to wait before failing.
- * @return last value observed
- */
- public final T waitForRange(ITestEnvironmentAccessor accessor, T minValue, T maxValue, int milliseconds) throws InterruptedException {
- return waitForRange(accessor, minValue, true, maxValue, true, milliseconds);
- }
-
- /**
- * Waits until the element has a value within the range specified. Either end of the range can be inclusive or not.
- *
- * @param accessor Reference to the accessor.
- * @param minValue The minimum value of the range.
- * @param minInclusive If the minumum value of the range is inclusive. If true the actual value must not < and not =
- * to the range value.
- * @param maxValue The maximum value of the range.
- * @param maxInclusive If the maximum value of the range is inclusive. If true the actual value must not > and not =
- * to the range value.
- * @param milliseconds Number of milliseconds to wait before failing.
- * @return last value observed
- */
- public T waitForNotRange(ITestEnvironmentAccessor accessor, T minValue, boolean minInclusive, T maxValue, boolean maxInclusive, int milliseconds) throws InterruptedException {
- if (accessor != null) {
- accessor.getLogger().methodCalledOnObject(accessor, this.getFullName(),
- new MethodFormatter().add(minValue).add(minInclusive).add(maxValue).add(maxInclusive).add(milliseconds),
- getMessage());
- }
-
- NotInRangeCondition<T> c = new NotInRangeCondition<>(this, minValue, minInclusive, maxValue, maxInclusive);
- getMessage().waitForCondition(accessor, c, false, milliseconds);
-
- if (accessor != null) {
- accessor.getLogger().methodEnded(accessor);
- }
- return c.getLastCheckValue();
- }
-
- /**
- * Waits until the element has a value within the range specified. Assumes range is inclusive.
- *
- * @param minValue The minimum value of the range.
- * @param maxValue The maximum value of the range.
- * @param milliseconds Number of milliseconds to wait before failing.
- * @return last value observed
- */
- public final T waitForNotRange(ITestEnvironmentAccessor accessor, T minValue, T maxValue, int milliseconds) throws InterruptedException {
- return waitForRange(accessor, minValue, true, maxValue, true, milliseconds);
- }
-
- /**
- * Waits until the element has a value other than the "value" passed. Returns last value observed upon a timout.
- *
- * @param value The expected value to wait for.
- * @param milliseconds Number of milliseconds to wait before failing.
- * @return last value observed
- */
- public final T waitNotValue(ITestEnvironmentAccessor accessor, T value, int milliseconds) throws InterruptedException {
- return waitForNotValue(accessor, value, milliseconds);
- }
-
- /**
- * Verifies that the element is set to "value" within the number of "milliseconds" passed.
- *
- * @param accessor Reference to the accessor.
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param value Expected value.
- * @param milliseconds Number of milliseconds to wait for the element to equal the "value".
- * @return If the check passed.
- */
- public boolean check(ITestAccessor accessor, CheckGroup checkGroup, T value, int milliseconds) throws InterruptedException {
- checkAccessor(accessor);
-
- accessor.getLogger().methodCalledOnObject(accessor, getFullName(),
- new MethodFormatter().add(value).add(milliseconds), getMessage());
-
- EqualsCondition<T> c = new EqualsCondition<>(this, value);
-
- CheckPoint cp = waitWithCheckPoint(accessor, checkGroup, toString(value), c, false, milliseconds);
- accessor.getLogger().methodEnded(accessor);
- return cp.isPass();
- }
-
- /**
- * Verifies that the element is set to a value within the range specified. Either end of the range can be set to be
- * inclusive or not.
- *
- * @param accessor Reference to the accessor.
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param minValue The minimum value of the range.
- * @param minInclusive If the minumum value of the range is inclusive.
- * @param maxValue The maximum value of the range.
- * @param maxInclusive If the maximum value of the range is inclusive.
- * @param milliseconds Number of milliseconds to wait for the element to be in the range.
- * @return if the check passed
- */
- public boolean checkRange(ITestAccessor accessor, CheckGroup checkGroup, T minValue, boolean minInclusive, T maxValue, boolean maxInclusive, int milliseconds) throws InterruptedException {
- checkAccessor(accessor);
- accessor.getLogger().methodCalledOnObject(accessor, getFullName(),
- new MethodFormatter().add(minValue).add(minInclusive).add(maxValue).add(maxInclusive).add(milliseconds),
- getMessage());
-
- InRangeCondition<T> c = new InRangeCondition<>(this, minValue, minInclusive, maxValue, maxInclusive);
- CheckPoint cp = waitWithCheckPoint(accessor, checkGroup,
- "In " + expectedRangeString(toString(minValue), minInclusive, toString(maxValue), maxInclusive), c, false,
- milliseconds);
- accessor.getLogger().methodEnded(accessor);
- return cp.isPass();
- }
-
- /**
- * Verifies that the element is set to a value within the range specified. Either end of the range can be set to be
- * inclusive or not.
- *
- * @param minValue The minimum value of the range.
- * @param minInclusive If the minimum value of the range is inclusive.
- * @param maxValue The maximum value of the range.
- * @param maxInclusive If the maximum value of the range is inclusive.
- * @param milliseconds Number of milliseconds to wait for the element to be within the range.
- * @return if the check passed
- */
- public final boolean checkRange(ITestAccessor accessor, T minValue, boolean minInclusive, T maxValue, boolean maxInclusive, int milliseconds) throws InterruptedException {
- return checkRange(accessor, (CheckGroup) null, minValue, minInclusive, maxValue, maxInclusive, milliseconds);
- }
-
- /**
- * Verifies that the element is set to a value within the range specified. Either end of the range can be set to be
- * inclusive or not.
- *
- * @param minValue The minimum value of the range.
- * @param minInclusive If the minumum value of the range is inclusive.
- * @param maxValue The maximum value of the range.
- * @param maxInclusive If the maximum value of the range is inclusive.
- * @return if the check passed
- */
- public final boolean checkRange(ITestAccessor accessor, T minValue, boolean minInclusive, T maxValue, boolean maxInclusive) {
- return checkRange(accessor, (CheckGroup) null, minValue, minInclusive, maxValue, maxInclusive);
- }
-
- /**
- * Verifies that the element is set to a value within the range specified. Assumes that both ends of the range are
- * inclusive.
- *
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param minValue The minimum value of the range.
- * @param maxValue The maximum value of the range.
- * @param milliseconds Number of milliseconds to wait for the element to be within the range.
- * @return if the check passed
- */
- public final boolean checkRange(ITestAccessor accessor, CheckGroup checkGroup, T minValue, T maxValue, int milliseconds) throws InterruptedException {
- return checkRange(accessor, checkGroup, minValue, true, maxValue, true, milliseconds);
- }
-
- /**
- * Verifies that the element is set to a value within the range specified. Assumes that both ends of the range are
- * inclusive.
- *
- * @param minValue The minimum value of the range.
- * @param maxValue The maximum value of the range.
- * @param milliseconds Number of milliseconds to wait for the element to be within the range.
- * @return if the check passed
- */
- public final boolean checkRange(ITestAccessor accessor, T minValue, T maxValue, int milliseconds) throws InterruptedException {
- return this.checkRange(accessor, (CheckGroup) null, minValue, true, maxValue, true, milliseconds);
- }
-
- /**
- * Verifies that the element is set to a value within the range specified. Assumes that both ends of the range are
- * inclusive.
- *
- * @param minValue The minimum value of the range.
- * @param maxValue The maximum value of the range.
- * @return if the check passed
- */
- public final boolean checkRange(ITestAccessor accessor, T minValue, T maxValue) {
- return checkRange(accessor, (CheckGroup) null, minValue, true, maxValue, true);
- }
-
- /**
- * Verifies that the element is set to some value other than "value" within the number of "milliseconds" passed.
- * Passes if at any point with in the time allowed, the elment is set to a value other than "value".
- *
- * @param accessor Reference to the accessor.
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param value value to test against.
- * @param milliseconds Number of milliseconds to wait for the element to equal the "value".
- * @return If the check passed.
- */
- public boolean checkNot(ITestAccessor accessor, CheckGroup checkGroup, T value, int milliseconds) throws InterruptedException {
- checkAccessor(accessor);
- accessor.getLogger().methodCalledOnObject(accessor, getFullName(),
- new MethodFormatter().add(value).add(milliseconds), getMessage());
- CheckPoint cp = waitWithCheckPoint(accessor, checkGroup, "Not " + toString(value),
- new EqualsCondition<T>(this, true, value), false, milliseconds);
- accessor.getLogger().methodEnded(accessor);
- return cp.isPass();
- }
-
- /**
- * Verifies that the element is NOT set to "value".
- *
- * @param value value to test against
- * @return if the check passed
- */
- public final boolean checkNot(ITestAccessor accessor, T value) {
- return checkNot(accessor, (CheckGroup) null, value);
- }
-
- /**
- * Verifies that the element is set to some value other than "value" within the number of "milliseconds" passed.
- * Passes if at any point with in the time allowed, the element is set to a value other than "value".
- *
- * @param value value to test against.
- * @param milliseconds Number of milliseconds to wait for the element to equal the "value".
- * @return If the check passed.
- */
- public final boolean checkNot(ITestAccessor accessor, T value, int milliseconds) throws InterruptedException {
- return checkNot(accessor, (CheckGroup) null, value, milliseconds);
- }
-
- protected CheckPoint waitWithCheckPoint(ITestAccessor accessor, CheckGroup checkGroup, String expected, IDiscreteElementCondition<T> condition, boolean maintain, int milliseconds) throws InterruptedException {
- MsgWaitResult result = getMessage().waitForCondition(accessor, condition, maintain, milliseconds);
- CheckPoint passFail = new CheckPoint(getFullName(), expected, toString(condition.getLastCheckValue()),
- result.isPassed(), result.getXmitCount(), result.getElapsedTime());
-
- if (checkGroup == null) {
- accessor.getLogger().testpoint(accessor, accessor.getTestScript(), accessor.getTestCase(), passFail);
- } else {
- checkGroup.add(passFail);
- }
- return passFail;
- }
-
- /**
- * Verifies that the element is set to a value outside the range specified. Either end of the range can be set to be
- * inclusive or not.
- *
- * @param accessor Reference to the accessor.
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param minValue The minimum value of the range.
- * @param minInclusive If the minumum value of the range is inclusive. If true the actual value must not < and not =
- * to the range value.
- * @param maxValue The maximum value of the range.
- * @param maxInclusive If the maximum value of the range is inclusive. If true the actual value must not > and not =
- * to the range value.
- * @return if the check passed
- */
- public boolean checkNotRange(ITestAccessor accessor, CheckGroup checkGroup, T minValue, boolean minInclusive, T maxValue, boolean maxInclusive, int milliseconds) throws InterruptedException {
- checkAccessor(accessor);
- accessor.getLogger().methodCalledOnObject(accessor, getFullName(),
- new MethodFormatter().add(minValue).add(minInclusive).add(maxValue).add(maxInclusive).add(milliseconds),
- getMessage());
- CheckPoint cp = waitWithCheckPoint(accessor, checkGroup,
- "Not In " + expectedRangeString(toString(minValue), minInclusive, toString(maxValue), maxInclusive),
- new NotInRangeCondition<T>(this, minValue, minInclusive, maxValue, maxInclusive), false, milliseconds);
- accessor.getLogger().methodEnded(accessor);
- return cp.isPass();
- }
-
- public boolean checkNotRangeNT(ITestAccessor accessor, T minValue, boolean minInclusive, T maxValue, boolean maxInclusive, int milliseconds) throws InterruptedException {
- checkAccessor(accessor);
- accessor.getLogger().methodCalledOnObject(accessor, getFullName(),
- new MethodFormatter().add(minValue).add(minInclusive).add(maxValue).add(maxInclusive).add(milliseconds),
- getMessage());
- MsgWaitResult cp = getMessage().waitForCondition(accessor,
- new NotInRangeCondition<T>(this, minValue, minInclusive, maxValue, maxInclusive), false, milliseconds);
- accessor.getLogger().methodEnded(accessor);
- return cp.isPassed();
- }
-
- /**
- * Verifies that the element is set to a value outside the range specified. Assumes that both ends of the range are
- * inclusive. Therefore observed value may not equal either of the range values.
- *
- * @param minValue The minimum value of the range.
- * @param maxValue The maximum value of the range.
- * @return if the check passed
- */
- public final boolean checkNotRange(ITestAccessor accessor, T minValue, T maxValue) throws InterruptedException {
- return checkNotRange(accessor, (CheckGroup) null, minValue, true, maxValue, true);
- }
-
- /**
- * Verifies that the element is set to a value outside the range specified. Assumes that both ends of the range are
- * inclusive.
- *
- * @param minValue The minimum value of the range.
- * @param maxValue The maximum value of the range.
- * @param milliseconds Number of milliseconds to wait for the element to be outside the range.
- * @return if the check passed
- */
- public final boolean checkNotRange(ITestAccessor accessor, T minValue, T maxValue, int milliseconds) throws InterruptedException {
- return checkNotRange(accessor, (CheckGroup) null, minValue, true, maxValue, true, milliseconds);
- }
-
- /**
- * Verifies that the element is set to a value outside the range specified. Assumes that both ends of the range are
- * inclusive.
- *
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param minValue The minimum value of the range.
- * @param maxValue The maximum value of the range.
- * @param milliseconds Number of milliseconds to wait for the element to be outside the range.
- * @return if the check passed
- */
- public final boolean checkNotRange(ITestAccessor accessor, CheckGroup checkGroup, T minValue, T maxValue, int milliseconds) throws InterruptedException {
- return checkNotRange(accessor, checkGroup, minValue, true, maxValue, true, milliseconds);
- }
-
- /**
- * Verifies that the element is set to a value outside the range specified. Assumes that both ends of the range are
- * inclusive. Therefore observed value may not equal either of the range values.
- *
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param minValue The minimum value of the range.
- * @param maxValue The maximum value of the range.
- * @return if the check passed
- */
- public final boolean checkNotRange(ITestAccessor accessor, CheckGroup checkGroup, T minValue, T maxValue) throws InterruptedException {
- return checkNotRange(accessor, checkGroup, minValue, true, maxValue, true);
- }
-
- /**
- * Verifies that the element is set to a value outside the range specified. Either end of the range can be set to be
- * inclusive or not.
- *
- * @param minValue The minimum value of the range.
- * @param minInclusive If the minumum value of the range is inclusive. If true the actual value must not < and not =
- * to the range value.
- * @param maxValue The maximum value of the range.
- * @param maxInclusive If the maximum value of the range is inclusive. If true the actual value must not > and not =
- * to the range value.
- * @return if the check passed
- */
- public final boolean checkNotRange(ITestAccessor accessor, T minValue, boolean minInclusive, T maxValue, boolean maxInclusive) throws InterruptedException {
- return checkNotRange(accessor, (CheckGroup) null, minValue, minInclusive, maxValue, maxInclusive);
- }
-
- /**
- * Verifies that the element is set to the "value" passed for the entire time passed into "milliseconds". Returns
- * value found that caused failure or last value observed if time expires.
- *
- * @param accessor Reference to the accessor.
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @return last value observed. Either value expected or value found at timeout.
- */
- public T checkMaintain(ITestAccessor accessor, CheckGroup checkGroup, T value, int milliseconds) throws InterruptedException {
- checkAccessor(accessor);
- accessor.getLogger().methodCalledOnObject(accessor, getFullName(),
- new MethodFormatter().add(value).add(milliseconds), getMessage());
- EqualsCondition<T> c = new EqualsCondition<>(this, value);
- waitWithCheckPoint(accessor, checkGroup, toString(value), c, true, milliseconds);
- accessor.getLogger().methodEnded(accessor);
- return c.getLastCheckValue();
- }
-
- public T checkMaintainNT(ITestAccessor accessor, T value, int milliseconds) throws InterruptedException {
- checkAccessor(accessor);
- accessor.getLogger().methodCalledOnObject(accessor, getFullName(),
- new MethodFormatter().add(value).add(milliseconds), getMessage());
- EqualsCondition<T> c = new EqualsCondition<>(this, value);
- getMessage().waitForCondition(accessor, c, true, milliseconds);
- accessor.getLogger().methodEnded(accessor);
- return c.getLastCheckValue();
- }
-
- public T checkMaintainNotNT(ITestAccessor accessor, T value, int milliseconds) throws InterruptedException {
- checkAccessor(accessor);
- accessor.getLogger().methodCalledOnObject(accessor, getFullName(),
- new MethodFormatter().add(value).add(milliseconds), getMessage());
- EqualsCondition<T> c = new EqualsCondition<>(this, true, value);
- getMessage().waitForCondition(accessor, c, true, milliseconds);
- accessor.getLogger().methodEnded(accessor);
- return c.getLastCheckValue();
- }
-
- /**
- * Verifies that the element is set to the "value" passed for the entire time passed into "milliseconds". Returns
- * value found that caused failure or last value observed if time expires.
- *
- * @return last value observed. Either value expected or value found at timeout.
- */
- public final T checkMaintain(ITestAccessor accessor, T value, int milliseconds) throws InterruptedException {
- return checkMaintain(accessor, (CheckGroup) null, value, milliseconds);
- }
-
- /**
- * Verifies that the element is set to a value other than the "value" passed for the entire time passed into
- * "milliseconds". Returns value found that caused failure or last value observed if time expires.
- *
- * @param accessor Reference to the accessor.
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @return last value observed
- */
- public T checkMaintainNot(ITestAccessor accessor, CheckGroup checkGroup, T value, int milliseconds) throws InterruptedException {
- checkAccessor(accessor);
- accessor.getLogger().methodCalledOnObject(accessor, getFullName(),
- new MethodFormatter().add(value).add(milliseconds), getMessage());
-
- EqualsCondition<T> c = new EqualsCondition<>(this, true, value);
- waitWithCheckPoint(accessor, checkGroup,
-
- "Not " + toString(value), c, true, milliseconds);
- accessor.getLogger().methodEnded(accessor);
- return c.getLastCheckValue();
- }
-
- /**
- * Verifies that the element is set to the "value" passed for the entire time passed into "milliseconds". Returns
- * value found that caused failure or last value observed if time expires.
- *
- * @return last value observed
- */
- public final T checkMaintainNot(ITestAccessor accessor, T value, int milliseconds) throws InterruptedException {
- return checkMaintainNot(accessor, (CheckGroup) null, value, milliseconds);
- }
-
- /**
- * Verifies that the element is set to a value within the range specified for the entire time specified.
- *
- * @param accessor Reference to the accessor.
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param minValue The minimum value of the range.
- * @param minInclusive If the minumum value of the range is inclusive.
- * @param maxValue The maximum value of the range.
- * @param maxInclusive If the maximum value of the range is inclusive.
- * @param milliseconds Number of milliseconds to wait before failing.
- * @return last value observed
- */
- public T checkMaintainRange(ITestAccessor accessor, CheckGroup checkGroup, T minValue, boolean minInclusive, T maxValue, boolean maxInclusive, int milliseconds) throws InterruptedException {
- checkAccessor(accessor);
- accessor.getLogger().methodCalledOnObject(accessor, getFullName(),
- new MethodFormatter().add(minValue).add(minInclusive).add(maxValue).add(maxInclusive).add(milliseconds),
- getMessage());
-
- InRangeCondition<T> c = new InRangeCondition<>(this, minValue, minInclusive, maxValue, maxInclusive);
- waitWithCheckPoint(accessor, checkGroup,
- "In" + expectedRangeString(toString(minValue), minInclusive, toString(maxValue), maxInclusive), c, true,
- milliseconds);
- accessor.getLogger().methodEnded(accessor);
- return c.getLastCheckValue();
- }
-
- public T checkMaintainRangeNT(ITestAccessor accessor, T minValue, boolean minInclusive, T maxValue, boolean maxInclusive, int milliseconds) throws InterruptedException {
- checkAccessor(accessor);
- accessor.getLogger().methodCalledOnObject(accessor, getFullName(),
- new MethodFormatter().add(minValue).add(minInclusive).add(maxValue).add(maxInclusive).add(milliseconds),
- getMessage());
- InRangeCondition<T> c = new InRangeCondition<>(this, minValue, minInclusive, maxValue, maxInclusive);
- getMessage().waitForCondition(accessor, c, true, milliseconds);
- accessor.getLogger().methodEnded(accessor);
- return c.getLastCheckValue();
- }
-
- /**
- * Verifies that the element is set to a value within the range specified for the entire time specified.
- *
- * @param accessor Reference to the accessor.
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param minValue The minimum value of the range.
- * @param minInclusive If the minumum value of the range is inclusive. If true the actual value must not < and not =
- * to the range value.
- * @param maxValue The maximum value of the range.
- * @param maxInclusive If the maximum value of the range is inclusive. If true the actual value must not > and not =
- * to the range value.
- * @param milliseconds Number of milliseconds to wait before failing.
- * @return last value observed
- */
- public T checkMaintainNotRange(ITestAccessor accessor, CheckGroup checkGroup, T minValue, boolean minInclusive, T maxValue, boolean maxInclusive, int milliseconds) throws InterruptedException {
- checkAccessor(accessor);
- accessor.getLogger().methodCalledOnObject(accessor, getFullName(),
- new MethodFormatter().add(minValue).add(minInclusive).add(maxValue).add(maxInclusive).add(milliseconds),
- getMessage());
-
- NotInRangeCondition<T> c = new NotInRangeCondition<>(this, minValue, minInclusive, maxValue, maxInclusive);
- waitWithCheckPoint(accessor, checkGroup,
- "Not In" + expectedRangeString(toString(minValue), minInclusive, toString(maxValue), maxInclusive), c, true,
- milliseconds);
- accessor.getLogger().methodEnded(accessor);
- return c.getLastCheckValue();
- }
-
- public T checkMaintainNotRangeNT(ITestAccessor accessor, T minValue, boolean minInclusive, T maxValue, boolean maxInclusive, int milliseconds) throws InterruptedException {
- checkAccessor(accessor);
- accessor.getLogger().methodCalledOnObject(accessor, getFullName(),
- new MethodFormatter().add(minValue).add(minInclusive).add(maxValue).add(maxInclusive).add(milliseconds),
- getMessage());
-
- NotInRangeCondition<T> c = new NotInRangeCondition<>(this, minValue, minInclusive, maxValue, maxInclusive);
- getMessage().waitForCondition(accessor, c, true, milliseconds);
- accessor.getLogger().methodEnded(accessor);
- return c.getLastCheckValue();
- }
-
- /**
- * Verifies that the element is set to a value within the range specified for the entire time specified. Assumes
- * range is inclusive.
- *
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param minValue The minimum value of the range.
- * @param maxValue The maximum value of the range.
- * @param milliseconds Number of milliseconds to wait before failing.
- * @return last value observed
- */
- public final T checkMaintainNotRange(ITestAccessor accessor, CheckGroup checkGroup, T minValue, T maxValue, int milliseconds) throws InterruptedException {
- return checkMaintainNotRange(accessor, checkGroup, minValue, true, maxValue, true, milliseconds);
- }
-
- public boolean checkPulse(ITestAccessor accessor, CheckGroup checkGroup, T pulsedValue, T nonPulsedValue, int milliseconds, int pulses) throws InterruptedException {
- if (accessor == null) {
- throw new NullPointerException("The parameter accessor is null");
- }
-
- accessor.getLogger().methodCalledOnObject(accessor, getFullName(),
- new MethodFormatter().add(pulsedValue).add(nonPulsedValue).add(milliseconds), getMessage());
- final PulseCondition<T> c = new PulseCondition<>(this, pulsedValue, nonPulsedValue, pulses);
-
- MsgWaitResult result = getMessage().waitForCondition(accessor, c, false, milliseconds);
- CheckPoint passFail = new CheckPoint(getFullName(), toString(pulsedValue) + " FOR " + pulses + " PULSES",
- toString(c.getLastCheckValue()) + " FOR " + c.getPulses() + " PULSES", result.isPassed(),
- result.getElapsedTime());
-
- if (checkGroup == null) {
- accessor.getLogger().testpoint(accessor, accessor.getTestScript(), accessor.getTestCase(), passFail);
- } else {
- checkGroup.add(passFail);
- }
- accessor.getLogger().methodEnded(accessor);
- return passFail.isPass();
- }
-
- public final boolean checkPulse(ITestAccessor accessor, T pulsedValue, T nonPulsedValue) throws InterruptedException {
- return checkPulse(accessor, null, pulsedValue, nonPulsedValue);
- }
-
- public final boolean checkPulse(ITestAccessor accessor, CheckGroup checkGroup, T pulsedValue, T nonPulsedValue) throws InterruptedException {
- return checkPulse(accessor, checkGroup, pulsedValue, nonPulsedValue, 1000, 2);
- }
-
- public final boolean checkPulse(ITestAccessor accessor, T pulsedValue, T nonPulsedValue, int milliseconds) throws InterruptedException {
- return checkPulse(accessor, null, pulsedValue, nonPulsedValue, milliseconds, 2);
- }
-
- public final boolean checkPulse(ITestAccessor accessor, T pulsedValue, T nonPulsedValue, int milliseconds, int pulses) throws InterruptedException {
- return checkPulse(accessor, null, pulsedValue, nonPulsedValue, milliseconds, pulses);
- }
-
- public boolean checkPulse(ITestAccessor accessor, CheckGroup checkGroup, T pulsedValue, T nonPulsedValue, int milliseconds) throws InterruptedException {
- return checkPulse(accessor, checkGroup, pulsedValue, nonPulsedValue, milliseconds, 2);
- }
-
- public abstract T valueOf(MemoryResource mem);
-
- @Override
- public String toString() {
-
- return elementName + "=" + getValue().toString();
- }
-
- @Override
- public int compareTo(DiscreteElement<T> o) {
- return getValue().compareTo(o.getValue());
- }
-
- /**
- * Verifies that the element is set to a value in the "list".
- *
- * @param list List of values to check for
- * @return if check passed
- */
- public final boolean checkInList(ITestAccessor accessor, T[] list) {
- return checkList(accessor, null, true, list);
- }
-
- /**
- * Verifies that the element is set to a value NOT in the "list".
- *
- * @param list List of values to check for
- * @return if check passed
- */
- public final boolean checkNotInList(ITestAccessor accessor, T[] list) {
- return checkList(accessor, null, false, list);
- }
-
- /**
- * Verifies that the element is set to a value IN or NOT IN the "list" passed. "isInList" determines if checking for
- * IN the list or NOT.
- *
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param isInList Determines if checking for the element's value to be in or not in the "list". Passing TRUE will
- * test for IN the "list".
- * @param list List of values to check for
- * @param milliseconds Number of milliseconds to wait
- * @return if check passed
- */
- public boolean checkList(ITestAccessor accessor, CheckGroup checkGroup, boolean isInList, T[] list, int milliseconds) throws InterruptedException {
- ListCondition<T> c = new ListCondition<>(this, isInList, list);
-
- if (accessor == null) {
- throw new NullPointerException("The parameter accessor is null");
- }
- accessor.getLogger().methodCalledOnObject(accessor, getFullName(),
- new MethodFormatter().add(isInList).add(list).add(milliseconds), getMessage());
-
- MsgWaitResult result = getMessage().waitForCondition(accessor, c, false, milliseconds);
- CheckGroup passFail = inList(accessor, isInList, c.getLastCheckValue(), list, result.getElapsedTime());
- assert result.isPassed() == passFail.isPass() : "result does not match checkgroup";
- if (checkGroup == null) {
- accessor.getLogger().testpoint(accessor, accessor.getTestScript(), accessor.getTestCase(), passFail);
- } else {
- checkGroup.add(passFail);
- }
- accessor.getLogger().methodEnded(accessor);
- return passFail.isPass();
- }
-
- /**
- * Verifies that the element is set to a value NOT in the "list".
- *
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param list List of values to check for
- * @return if check passed
- */
- public final boolean checkNotInList(ITestAccessor accessor, CheckGroup checkGroup, T[] list) {
- return this.checkList(accessor, checkGroup, false, list);
- }
-
- /**
- * Verifies that the element is set to a value NOT in the "list".
- *
- * @param list List of values to check for
- * @param milliseconds Number of milliseconds to wait
- * @return if check passed
- */
- public final boolean checkNotInList(ITestAccessor accessor, T[] list, int milliseconds) throws InterruptedException {
- return this.checkList(accessor, (CheckGroup) null, false, list, milliseconds);
- }
-
- /**
- * Verifies that the element is set to a value IN or NOT IN the "list" passed. "wantInList" determines if checking
- * for IN the list or NOT.
- *
- * @param wantInList Determines if checking for the element's value to be in or not in the "list". Passing TRUE will
- * test for IN the "list".
- * @param list List of values to check for
- * @return if check passed
- */
- public final boolean checkList(ITestAccessor accessor, boolean wantInList, T[] list) {
- return this.checkList(accessor, null, wantInList, list);
- }
-
- /**
- * Verifies that the element is set to a value IN or NOT IN the "list" passed. "isInList" determines if checking for
- * IN the list or NOT.
- *
- * @param isInList Determines if checking for the element's value to be in or not in the "list". Passing TRUE will
- * test for IN the "list".
- * @param list List of values to check for
- * @param milliseconds Number of milliseconds to wait
- * @return if check passed
- */
- public final boolean checkList(ITestAccessor accessor, boolean isInList, T[] list, int milliseconds) throws InterruptedException {
- return checkList(accessor, (CheckGroup) null, isInList, list, milliseconds);
- }
-
- /**
- * Verifies that the element is set to a value IN or NOT IN the "list" passed. "wantInList" determines if checking
- * for IN the list or NOT.
- *
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param wantInList Determines if checking for the element's value to be in or not in the "list". Passing TRUE will
- * test for IN the "list".
- * @param list List of values to check for
- * @return if check passed
- */
- public boolean checkList(ITestAccessor accessor, CheckGroup checkGroup, boolean wantInList, T[] list) {
-
- final T actualValue = getValue();
-
- // Check if the value is in the list
- CheckGroup passFail = inList(accessor, wantInList, actualValue, list, 0);
-
- if (checkGroup == null) {
- accessor.getLogger().testpoint(accessor, accessor.getTestScript(), accessor.getTestCase(), passFail);
- } else {
- checkGroup.add(passFail);
- }
-
- return passFail.isPass();
- }
-
- /**
- * Verifies that the element is set to a value in the "list".
- *
- * @param list List of values to check for
- * @param milliseconds Number of milliseconds to wait
- * @return if check passed
- */
- public final boolean checkInList(ITestAccessor accessor, T[] list, int milliseconds) throws InterruptedException {
- return this.checkList(accessor, (CheckGroup) null, true, list, milliseconds);
- }
-
- /**
- * Verifies that the element is set to a value NOT in the "list".
- *
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param list List of values to check for
- * @param milliseconds Number of milliseconds to wait
- * @return if check passed
- */
- public final boolean checkNotInList(ITestAccessor accessor, CheckGroup checkGroup, T[] list, int milliseconds) throws InterruptedException {
- return this.checkList(accessor, checkGroup, false, list, milliseconds);
- }
-
- /**
- * Verifies that the element is set to a value in the list for the entire time passed into milliseconds.
- *
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param list The list of values to check against
- * @param milliseconds Number of milliseconds to wait before failing.
- * @return last value observed
- */
- public final T checkMaintainInList(ITestAccessor accessor, CheckGroup checkGroup, T[] list, int milliseconds) throws InterruptedException {
- return this.checkMaintainList(accessor, checkGroup, list, true, milliseconds);
- }
-
- /**
- * Verifies that the element is set to a value not in the list for the entire time passed into milliseconds.
- *
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param list The list of values to check against
- * @param milliseconds Number of milliseconds to wait before failing.
- * @return last value observed
- */
- public final T checkMaintainNotInList(ITestAccessor accessor, CheckGroup checkGroup, T[] list, int milliseconds) throws InterruptedException {
- return this.checkMaintainList(accessor, checkGroup, list, false, milliseconds);
- }
-
- /**
- * Verifies that the element is set to a value in the "list".
- *
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param list List of values to check for
- * @param milliseconds Number of milliseconds to wait
- * @return if check passed
- */
- public final boolean checkInList(ITestAccessor accessor, CheckGroup checkGroup, T[] list, int milliseconds) throws InterruptedException {
- return this.checkList(accessor, checkGroup, true, list, milliseconds);
- }
-
- /**
- * Verifies that the element is set to a value in the "list".
- *
- * @param checkGroup If this check is part of a larger set of checks which another method is going to log then the
- * reference to the CheckGroup must be passed and this method will add the result of the check to the group with out
- * logging a point.
- * <p>
- * If an outside method is not going to log the check then a <b>null </b> reference should be passed and this method
- * will log the test point.
- * @param list List of values to check for
- * @return if check passed
- */
- public final boolean checkInList(ITestAccessor accessor, CheckGroup checkGroup, T[] list) {
- return checkList(accessor, checkGroup, true, list);
- }
-
- /**
- * Waits until the element is set to a value either in or not in the "list" as determined by "isInList".
- *
- * @param list The list of values to check against
- * @param isInList If the value is expected to be in or not in the "list"
- * @param milliseconds Number of milliseconds to wait before failing.
- * @return last value observed
- */
- public T waitForList(ITestAccessor accessor, T[] list, boolean isInList, int milliseconds) throws InterruptedException {
-
- accessor.getLogger().methodCalledOnObject(accessor, this.getFullName(),
- new MethodFormatter().add(list).add(isInList).add(milliseconds), this.getMessage());
-
- ListCondition<T> c = new ListCondition<>(this, isInList, list);
- getMessage().waitForCondition(accessor, c, false, milliseconds);
- accessor.getLogger().methodEnded(accessor);
- return c.getLastCheckValue();
- }
-
- public T checkMaintainList(ITestAccessor accessor, CheckGroup checkGroup, T[] list, boolean isInList, int milliseconds) throws InterruptedException {
- accessor.getLogger().methodCalledOnObject(accessor, this.getFullName(),
- new MethodFormatter().add(list).add(isInList).add(milliseconds), this.getMessage());
-
- ListCondition<T> c = new ListCondition<>(this, isInList, list);
-
- MsgWaitResult result = getMessage().waitForCondition(accessor, c, true, milliseconds);
-
- T value = c.getLastCheckValue();
-
- CheckGroup passFail = inList(accessor, isInList, value, list, result.getElapsedTime());
- if (checkGroup == null) {
- accessor.getLogger().testpoint(accessor, accessor.getTestScript(), accessor.getTestCase(), passFail);
- } else {
- checkGroup.add(passFail);
- }
- accessor.getLogger().methodEnded(accessor);
- return value;
- }
-
- /**
- * This method checks a an array of EnumBase objects to determine if a given EnumBase object is or isn't in the list.
- * It then returns a CheckGroup object that describes the checks and pass/fail status.
- *
- * @param isInList
- * <ul>
- * <li><b>True </b> used to get a pass iff the item is in the list.</li>
- * <li><b>False </b> used to get a pass iff the item is not in the list.</li>
- * </ul>
- * @param value The EnumBase object to check for.
- * @param list The array of EnumBase objects to look through.
- * @return A CheckGroup object that describes all comparisons made and outcomes.
- */
- private CheckGroup inList(ITestAccessor accessor, boolean isInList, T value, T[] list, long elapsedTime) {
- accessor.getLogger().methodCalledOnObject(accessor, this.getFullName(),
- new MethodFormatter().add(isInList).add(value).add(list), this.getMessage());
- CheckGroup checkGroup;
- final String not = "Not ";
-
- int i = 0;
- // Build CheckPoint based on the type of check
- if (isInList) {
- checkGroup = new CheckGroup(Operation.OR, this.getFullName()); // Pass if at least one item
- // matches
- for (T val : list) {
- // Check if current item in the list matches.
- checkGroup.add(
- new CheckPoint("List Item: " + i, value.toString(), val.toString(), val.equals(value), elapsedTime));
- i++;
- }
- } else {
- checkGroup = new CheckGroup(Operation.AND, this.getFullName()); // Pass iff none of the
- // items match
- for (T val : list) {
- checkGroup.add(new CheckPoint("List Item: " + i, not + value.toString(), val.toString(), !val.equals(value),
- elapsedTime));
- i++;
- }
- }
- accessor.getLogger().methodEnded(accessor);
- return checkGroup;
- }
-
- /**
- * Sets the element to the first enumeration for the wait time and then it sets it to the second enumeration.
- */
- public synchronized void toggle(ITestEnvironmentAccessor accessor, T value1, T value2, int milliseconds) throws InterruptedException {
- accessor.getLogger().methodCalledOnObject(accessor, this.getFullName(),
- new MethodFormatter().add(value1).add(value2).add(milliseconds), getMessage());
-
- set(accessor, value1);
- accessor.setTimerFor(this, milliseconds);
- wait();
- accessor.getScriptCtrl().lock();
- set(accessor, value2);
-
- accessor.getLogger().methodEnded(accessor);
- }
-
- /**
- * Will be removed in MS_0.1.6.
- *
- * @use {@link #getValue()} instead
- */
- @Deprecated
- public T get() {
- return getValue();
- }
-
- /**
- * gets this element's current value. Does logging
- */
- public T get(ITestEnvironmentAccessor accessor) {
- // accessor.getLogger().methodCalled(accessor, new MethodFormatter());
- if (accessor != null) {
- accessor.getLogger().methodCalledOnObject(accessor, this.getFullName(), new MethodFormatter(), getMessage());
- }
-
- T v = getValue();
- ReturnFormatter returnFormatter = new ReturnFormatter();
- returnFormatter.add(v);
- if (accessor != null) {
- accessor.getLogger().methodEnded(accessor, returnFormatter);
- }
- return v;
- }
-
- /**
- * get this elements current value
- *
- * @return the value of this element
- */
- public T getNoLog() {
- return getValue();
- }
-
- @Deprecated
- public void set(T value) {
- setValue(value);
- }
-
- public void setNoLog(T value) {
- setValue(value);
- }
-
- @Deprecated
- public void setNoLog(ITestEnvironmentAccessor accessor, T value) {
- setValue(value);
- }
-
- private void checkAccessor(ITestEnvironmentAccessor accessor) {
- if (accessor == null) {
- throw new NullPointerException("The parameter accessor is null");
- }
- }
-
- abstract public T elementMask(T value);
-
-}

Back to the top