public void CurrentUnitPrpertyPasses() { var offset = new LayoutOffset(); Assert.AreEqual(LayoutOffset.Unit.Pixel, offset.CurrentUnit); offset.CurrentUnit = LayoutOffset.Unit.Ratio; Assert.AreEqual(LayoutOffset.Unit.Ratio, offset.CurrentUnit); }
public void LeftPrpertyPasses() { var offset = new LayoutOffset(); Assert.AreEqual(0f, offset.Left); var value = 100f; offset.Left = value; Assert.AreEqual(value, offset.Left); }
public void BottomPrpertyPasses() { var offset = new LayoutOffset(); Assert.AreEqual(0f, offset.Bottom); var value = 100f; offset.Bottom = value; Assert.AreEqual(value, offset.Bottom); }
public void TopPrpertyPasses() { var offset = new LayoutOffset(); Assert.AreEqual(0f, offset.Top); var value = 100f; offset.Top = value; Assert.AreEqual(value, offset.Top); }
public void OnChangedValueInCurrentUnitPrpertyWhenThrowExceptionPasses() { var offset = new LayoutOffset(); offset.CurrentUnit = LayoutOffset.Unit.Pixel; offset.OnChangedValue.Add((_self, _kind) => { throw new System.Exception(); }); offset.CurrentUnit = LayoutOffset.Unit.Ratio; Assert.AreEqual(LayoutOffset.Unit.Ratio, offset.CurrentUnit); }
public void SetVerticalOffsetsPrpertyPasses() { var offset = new LayoutOffset(); var top = 10f; var bottom = 30f; offset.SetVerticalOffsets(top, bottom); Assert.AreEqual(top, offset.Top); Assert.AreEqual(bottom, offset.Bottom); }
public void SetHorizontalOffsetsPrpertyPasses() { var offset = new LayoutOffset(); var left = 20; var right = 40f; offset.SetHorizontalOffsets(left, right); Assert.AreEqual(left, offset.Left); Assert.AreEqual(right, offset.Right); }
public void OnChangedValueInBottomPrpertyWhenThrowExceptionPasses() { var offset = new LayoutOffset(); offset.OnChangedValue.Add((_self, _kind) => { throw new System.Exception(); }); var value = 100f; offset.Bottom = value; Assert.AreEqual(value, offset.Bottom); }
public void OnChangedValueInLeftPrpertyPasses() { var offset = new LayoutOffset(); int callCounter = 0; (LayoutOffset self, LayoutOffset.ValueKind kinds)recievedData = default; offset.OnChangedValue.Add((_self, _kind) => { callCounter++; recievedData = (_self, _kind); }); offset.Left = 100f; Assert.AreEqual(1, callCounter); Assert.AreSame(offset, recievedData.self); Assert.AreEqual(LayoutOffset.ValueKind.Left, recievedData.kinds); }
public void SetOffsetsPrpertyPasses() { var offset = new LayoutOffset(); var left = 20; var right = 40f; var top = 10f; var bottom = 30f; offset.SetOffsets(left, right, top, bottom); Assert.AreEqual(left, offset.Left); Assert.AreEqual(right, offset.Right); Assert.AreEqual(top, offset.Top); Assert.AreEqual(bottom, offset.Bottom); }
public void OnChangedValueInSetOffsetsPrpertyWhenThrowExceptionPasses() { var offset = new LayoutOffset(); offset.OnChangedValue.Add((_self, _kind) => { throw new System.Exception(); }); { var left = 20; var right = 40f; var top = 10f; var bottom = 30f; offset.SetOffsets(left, right, top, bottom); Assert.AreEqual(left, offset.Left); Assert.AreEqual(right, offset.Right); Assert.AreEqual(top, offset.Top); Assert.AreEqual(bottom, offset.Bottom); } {//同じ値の時は変更されないので、OnChangedValueのkindsには含めないようにする var kindsCombination = IndexCombinationEnumerable.GetFlagEnumCombination( LayoutOffset.ValueKind.Left, LayoutOffset.ValueKind.Right, LayoutOffset.ValueKind.Top, LayoutOffset.ValueKind.Bottom ); foreach (var kinds in kindsCombination) { var left = (0 != (kinds & LayoutOffset.ValueKind.Left)) ? offset.Left + 10f : offset.Left; var right = (0 != (kinds & LayoutOffset.ValueKind.Right)) ? offset.Right + 10f : offset.Right; var top = (0 != (kinds & LayoutOffset.ValueKind.Top)) ? offset.Top + 10f : offset.Top; var bottom = (0 != (kinds & LayoutOffset.ValueKind.Bottom)) ? offset.Bottom + 10f : offset.Bottom; offset.SetOffsets(left, right, top, bottom); var errorMessage = $"Fail test... ValueKinds=>{kinds}"; Assert.AreEqual(left, offset.Left); Assert.AreEqual(right, offset.Right); Assert.AreEqual(top, offset.Top); Assert.AreEqual(bottom, offset.Bottom); } } Debug.Log($"Success to All pattern!!"); }
public void OnChangedValueInCurrentUnitPrpertyPasses() { var offset = new LayoutOffset(); offset.CurrentUnit = LayoutOffset.Unit.Pixel; int callCounter = 0; (LayoutOffset self, LayoutOffset.ValueKind kinds)recievedData = default; offset.OnChangedValue.Add((_self, _kind) => { callCounter++; recievedData = (_self, _kind); }); offset.CurrentUnit = LayoutOffset.Unit.Ratio; Assert.AreEqual(1, callCounter); Assert.AreSame(offset, recievedData.self); Assert.AreEqual(LayoutOffset.ValueKind.CurrentUnit, recievedData.kinds); }
public void OnChangedValueInSetOffsetsPrpertyPasses() { var offset = new LayoutOffset(); int callCounter = 0; (LayoutOffset self, LayoutOffset.ValueKind kinds)recievedData = default; offset.OnChangedValue.Add((_self, _kind) => { callCounter++; recievedData = (_self, _kind); }); offset.SetOffsets(10, 20, 30, 40); Assert.AreEqual(1, callCounter, $"コールバックは一度だけ呼び出されるようにしてください"); Assert.AreSame(offset, recievedData.self); Assert.AreEqual(LayoutOffset.ValueKind.Left | LayoutOffset.ValueKind.Right | LayoutOffset.ValueKind.Top | LayoutOffset.ValueKind.Bottom, recievedData.kinds); {//同じ値の時は変更されないので、OnChangedValueのkindsには含めないようにする var kindsCombination = IndexCombinationEnumerable.GetFlagEnumCombination( LayoutOffset.ValueKind.Left, LayoutOffset.ValueKind.Right, LayoutOffset.ValueKind.Top, LayoutOffset.ValueKind.Bottom ); foreach (var kinds in kindsCombination) { var left = (0 != (kinds & LayoutOffset.ValueKind.Left)) ? offset.Left + 10f : offset.Left; var right = (0 != (kinds & LayoutOffset.ValueKind.Right)) ? offset.Right + 10f : offset.Right; var top = (0 != (kinds & LayoutOffset.ValueKind.Top)) ? offset.Top + 10f : offset.Top; var bottom = (0 != (kinds & LayoutOffset.ValueKind.Bottom)) ? offset.Bottom + 10f : offset.Bottom; callCounter = 0; offset.SetOffsets(left, right, top, bottom); var errorMessage = $"Fail test... ValueKinds=>{kinds}"; Assert.AreEqual(1, callCounter, errorMessage); Assert.AreSame(offset, recievedData.self, errorMessage); Assert.AreEqual(kinds, recievedData.kinds, errorMessage); } } Debug.Log($"Success to All pattern!!"); }