public bool Execute(IActionMachine machine, IActionController controller) { if (horzontalCmp != CompareType.none && !CompareUtility.Compare(new Vector2(controller.velocity.x, controller.velocity.z).magnitude, horizontalVelocity, horzontalCmp)) { return(false); } if (verticalCmp != CompareType.none && !CompareUtility.Compare(controller.velocity.y, verticalVelocity, verticalCmp)) { return(false); } return(true); }
public void CompareDecimalValues(bool result, string operation, double value1, double value2) { var assert = CompareUtility.Compare(operation, value1, value2); Assert.AreEqual(result, assert); }
public void PatchDataBase(ITransaction tx, ICollection <Type> entityTypes, bool dropAll) { try { foreach (Type entityType in entityTypes) { CacheManager.Register(entityType); } IMetaManipulate metaManipulate = _dbLayer.MetaManipulate(tx); ICollection <IMetaItem> existingItems = metaManipulate.GetMetaData(tx); ICollection <IMetaItem> requiredItems = CreateMetaItemsFromEntityTypes(entityTypes); List <MetaQueryHolder> queryHolders = new List <MetaQueryHolder>(); if (dropAll) { ICollection <IMetaComparisonGroup> groupExisting = CompareUtility.Compare(metaManipulate, existingItems, new List <IMetaItem>()); ICollection <IMetaComparisonGroup> groupRequired = CompareUtility.Compare(metaManipulate, new List <IMetaItem>(), requiredItems); List <MetaQueryHolder> queryHoldersExisting = new List <MetaQueryHolder>(); foreach (IMetaComparisonGroup comparisonGroup in groupExisting) { queryHoldersExisting.AddRange(_dbLayer.MetaManipulate(tx).CreateDbPathSql(comparisonGroup)); } queryHoldersExisting.Sort(); List <MetaQueryHolder> queryHoldersRequired = new List <MetaQueryHolder>(); foreach (IMetaComparisonGroup comparisonGroup in groupRequired) { queryHoldersRequired.AddRange(_dbLayer.MetaManipulate(tx).CreateDbPathSql(comparisonGroup)); } queryHoldersRequired.Sort(); queryHolders.AddRange(queryHoldersExisting); queryHolders.AddRange(queryHoldersRequired); } else { ICollection <IMetaComparisonGroup> groups = CompareUtility.Compare(metaManipulate, existingItems, requiredItems); foreach (IMetaComparisonGroup comparisonGroup in groups) { queryHolders.AddRange(_dbLayer.MetaManipulate(tx).CreateDbPathSql(comparisonGroup)); } queryHolders.Sort(); } foreach (MetaQueryHolder holder in queryHolders) { if (holder.QueryString == null) { continue; } Logger.GetLogger(_config.LoggerName).Debug(holder.QueryString); IDbCommand cmd = tx.CreateCommand(); cmd.CommandText = holder.QueryString; cmd.ExecuteNonQuery(); DbMgtUtility.Close(cmd); if (_config.EnableStatistics) { _statistics.RegisterPatch(); } } } catch (Exception e) { Logger.GetLogger(_config.LoggerName).Fatal(e.Message, e); throw new MetaDataException(e.Message, e); } }