/// <summary>
        /// Construct a P4ChangelistSpanQuery from the changelist numbers specified as parameters; the numbers are not required to be in order
        /// </summary>
		/// <param name="InQueryChangelistStart">The start or end changelist number for the query</param>
		/// <param name="InQueryChangelistEnd">The start or end changelist number for the query, whichever wasn't specified by the first parameter</param>
		/// <param name="InDepotFilter">Path to filter the depot by</param>
		/// <param name="InUserFilter">User to filter the depot by, can be empty string</param>
        public P4ChangelistSpanQuery(int InQueryChangelistStart, int InQueryChangelistEnd, String InDepotFilter, String InUserFilter="")
			: base(InDepotFilter, InUserFilter)
		{
			// Reorder the changelists increasing
            ReOrder(ref InQueryChangelistStart, ref InQueryChangelistEnd);

            ChangelistIdVersion StartVersionId = new ChangelistIdVersion(InQueryChangelistStart);
            ChangelistIdVersion EndVersionId = new ChangelistIdVersion(InQueryChangelistEnd);

            VersionRange Versions = new VersionRange(StartVersionId, EndVersionId);

            mFileFilter = new FileSpec(new DepotPath(InDepotFilter), null, null, Versions);
        }
        /// <summary>
        /// Construct a P4ChangelistSpanQuery from the changelist numbers specified as parameters; the numbers are not required to be in order
        /// </summary>
        /// <param name="InQueryChangelistStart">The start or end changelist number for the query</param>
        /// <param name="InQueryChangelistEnd">The start or end changelist number for the query, whichever wasn't specified by the first parameter</param>
        /// <param name="InDepotFilter">Path to filter the depot by</param>
        /// <param name="InUserFilter">User to filter the depot by, can be empty string</param>
        public P4ChangelistSpanQuery(int InQueryChangelistStart, int InQueryChangelistEnd, String InDepotFilter, String InUserFilter = "")
            : base(InDepotFilter, InUserFilter)
        {
            // Reorder the changelists increasing
            ReOrder(ref InQueryChangelistStart, ref InQueryChangelistEnd);

            ChangelistIdVersion StartVersionId = new ChangelistIdVersion(InQueryChangelistStart);
            ChangelistIdVersion EndVersionId   = new ChangelistIdVersion(InQueryChangelistEnd);

            VersionRange Versions = new VersionRange(StartVersionId, EndVersionId);

            mFileFilter = new FileSpec(new DepotPath(InDepotFilter), null, null, Versions);
        }
Esempio n. 3
0
        public void VersionSpecTest1()
        {
            VersionSpec left      = new VersionRange(1, 2);
            VersionSpec rightpos  = new VersionRange(1, 2);
            VersionSpec rightneg1 = new VersionRange(1, 4);
            VersionSpec rightneg2 = new Revision(1);
            VersionSpec rightnull = null;

            Assert.IsTrue(left.Equals(rightpos));
            Assert.IsFalse(left.Equals(rightneg1));
            Assert.IsFalse(left.Equals(rightneg2));
            Assert.IsFalse(left.Equals(rightnull));

            left      = new HeadRevision();
            rightpos  = new HeadRevision();
            rightneg1 = new HaveRevision();
            rightnull = null;

            Assert.IsTrue(left.Equals(rightpos));
            Assert.IsFalse(left.Equals(rightneg1));
            Assert.IsFalse(left.Equals(rightnull));

            left      = new HaveRevision();
            rightpos  = new HaveRevision();
            rightneg1 = new HeadRevision();
            rightnull = null;

            Assert.IsTrue(left.Equals(rightpos));
            Assert.IsFalse(left.Equals(rightneg1));
            Assert.IsFalse(left.Equals(rightnull));

            left      = new NoneRevision();
            rightpos  = new NoneRevision();
            rightneg1 = new HaveRevision();
            rightnull = null;

            Assert.IsTrue(left.Equals(rightpos));
            Assert.IsFalse(left.Equals(rightneg1));
            Assert.IsFalse(left.Equals(rightnull));

            left      = new Revision(1);
            rightpos  = new Revision(1);
            rightneg1 = new Revision(3);
            rightneg2 = new VersionRange(1, 4);
            rightnull = null;

            Assert.IsTrue(left.Equals(rightpos));
            Assert.IsFalse(left.Equals(rightneg1));
            Assert.IsFalse(left.Equals(rightneg2));
            Assert.IsFalse(left.Equals(rightnull));

            left      = new DateTimeVersion(DateTime.MinValue);
            rightpos  = new DateTimeVersion(DateTime.MinValue);
            rightneg1 = new DateTimeVersion(DateTime.MaxValue);
            rightneg2 = new Revision(3);
            rightnull = null;

            Assert.IsTrue(left.Equals(rightpos));
            Assert.IsFalse(left.Equals(rightneg1));
            Assert.IsFalse(left.Equals(rightneg2));
            Assert.IsFalse(left.Equals(rightnull));

            left      = new LabelNameVersion("label_name");
            rightpos  = new LabelNameVersion("label_name");
            rightneg1 = new LabelNameVersion("wrong_label_name");
            rightneg2 = new Revision(3);
            rightnull = null;

            Assert.IsTrue(left.Equals(rightpos));
            Assert.IsFalse(left.Equals(rightneg1));
            Assert.IsFalse(left.Equals(rightneg2));
            Assert.IsFalse(left.Equals(rightnull));

            left      = new ChangelistIdVersion(44444);
            rightpos  = new ChangelistIdVersion(44444);
            rightneg1 = new ChangelistIdVersion(88888);
            rightneg2 = new Revision(3);
            rightnull = null;

            Assert.IsTrue(left.Equals(rightpos));
            Assert.IsFalse(left.Equals(rightneg1));
            Assert.IsFalse(left.Equals(rightneg2));
            Assert.IsFalse(left.Equals(rightnull));

            left      = new ClientNameVersion("client_name");
            rightpos  = new ClientNameVersion("client_name");
            rightneg1 = new ClientNameVersion("wrong_client_name");
            rightneg2 = new Revision(3);
            rightnull = null;

            Assert.IsTrue(left.Equals(rightpos));
            Assert.IsFalse(left.Equals(rightneg1));
            Assert.IsFalse(left.Equals(rightneg2));
            Assert.IsFalse(left.Equals(rightnull));

            left      = new ActionVersion("#add");
            rightpos  = new ActionVersion("#add");
            rightneg1 = new ActionVersion("#branch");
            rightneg2 = new Revision(3);
            rightnull = null;

            Assert.IsTrue(left.Equals(rightpos));
            Assert.IsFalse(left.Equals(rightneg1));
            Assert.IsFalse(left.Equals(rightneg2));
            Assert.IsFalse(left.Equals(rightnull));
        }