/// <summary> /// /// </summary> public void TestBagSubtract() { // {[12 CHF][7 USD]} - {[14 CHF][21 USD] == {[-2 CHF][-14 USD]} Money[] bag= { new Money(-2, "CHF"), new Money(-14, "USD") }; MoneyBag expected= new MoneyBag(bag); Assertion.AssertEquals(expected, fMB1.Subtract(fMB2)); }
/// <summary> /// /// </summary> public void TestBagSimpleAdd() { // {[12 CHF][7 USD]} + [14 CHF] == {[26 CHF][7 USD]} Money[] bag= { new Money(26, "CHF"), new Money(7, "USD") }; MoneyBag expected= new MoneyBag(bag); Assertion.AssertEquals(expected, fMB1.Add(f14CHF)); }
/// <summary> /// /// </summary> public void TestBagSumAdd() { // {[12 CHF][7 USD]} + {[14 CHF][21 USD]} == {[26 CHF][28 USD]} Money[] bag= { new Money(26, "CHF"), new Money(28, "USD") }; MoneyBag expected= new MoneyBag(bag); Assertion.AssertEquals(expected, fMB1.Add(fMB2)); }
public void BagNegate() { // {[12 CHF][7 USD]} negate == {[-12 CHF][-7 USD]} Money[] bag = { new Money(-12, "CHF"), new Money(-7, "USD") }; MoneyBag expected = new MoneyBag(bag); Assert.AreEqual(expected, fMB1.Negate()); }
/// <summary> /// /// </summary> public void TestBagMultiply() { // {[12 CHF][7 USD]} *2 == {[24 CHF][14 USD]} Money[] bag = { new Money(24, "CHF"), new Money(14, "USD") }; MoneyBag expected= new MoneyBag(bag); Assertion.AssertEquals(expected, fMB1.Multiply(2)); Assertion.AssertEquals(fMB1, fMB1.Multiply(1)); Assertion.Assert(fMB1.Multiply(0).IsZero); }
public void BagMultiply() { // {[12 CHF][7 USD]} *2 == {[24 CHF][14 USD]} Money[] bag = { new Money(24, "CHF"), new Money(14, "USD") }; MoneyBag expected = new MoneyBag(bag); Assert.AreEqual(expected, fMB1.Multiply(2)); Assert.AreEqual(fMB1, fMB1.Multiply(1)); Assert.IsTrue(fMB1.Multiply(0).IsZero); }
protected void SetUp() { f12CHF = new Money(12, "CHF"); f14CHF = new Money(14, "CHF"); f7USD = new Money(7, "USD"); f21USD = new Money(21, "USD"); fMB1 = new MoneyBag(f12CHF, f7USD); fMB2 = new MoneyBag(f14CHF, f21USD); }
public void Normalize() { Money[] bag = { new Money(26, "CHF"), new Money(28, "CHF"), new Money(6, "CHF") }; MoneyBag moneyBag = new MoneyBag(bag); Money[] expected = { new Money(60, "CHF") }; // note: expected is still a MoneyBag MoneyBag expectedBag = new MoneyBag(expected); Assert.AreEqual(expectedBag, moneyBag); }
public void MoneyBagHash() { MoneyBag equal = new MoneyBag(new Money(12, "CHF"), new Money(7, "USD")); Assert.AreEqual(fMB1.GetHashCode(), equal.GetHashCode()); }
public void MoneyBagEquals() { //NOTE: Normally we use Assert.AreEqual to test whether two // objects are equal. But here we are testing the MoneyBag.Equals() // method itself, so using AreEqual would not serve the purpose. Assert.IsFalse(fMB1.Equals(null)); Assert.IsTrue(fMB1.Equals(fMB1)); MoneyBag equal = new MoneyBag(new Money(12, "CHF"), new Money(7, "USD")); Assert.IsTrue(fMB1.Equals(equal)); Assert.IsTrue(!fMB1.Equals(f12CHF)); Assert.IsTrue(!f12CHF.Equals(fMB1)); Assert.IsTrue(!fMB1.Equals(fMB2)); }
public MoneyBag(MoneyBag m1, MoneyBag m2) { AppendBag(m1); AppendBag(m2); }
public void SimpleBagAdd() { // [14 CHF] + {[12 CHF][7 USD]} == {[26 CHF][7 USD]} Money[] bag = { new Money(26, "CHF"), new Money(7, "USD") }; MoneyBag expected = new MoneyBag(bag); Assert.AreEqual(expected, f14CHF.Add(fMB1)); }
/// <summary> /// /// </summary> public void TestMoneyBagEquals() { Assertion.Assert(!fMB1.Equals(null)); Assertion.AssertEquals(fMB1, fMB1); MoneyBag equal= new MoneyBag(new Money(12, "CHF"), new Money(7, "USD")); Assertion.Assert(fMB1.Equals(equal)); Assertion.Assert(!fMB1.Equals(f12CHF)); Assertion.Assert(!f12CHF.Equals(fMB1)); Assertion.Assert(!fMB1.Equals(fMB2)); }
// Use this for initialization void Start() { weaponReference = GameObject.FindWithTag("Player").GetComponent <Shoot>(); goldReference = GameObject.FindWithTag("Player").GetComponent <MoneyBag>(); gameObject.GetComponentInChildren <TextMesh>().text = price.ToString(); }
public IMoney AddMoneyBag(MoneyBag s) { return((new MoneyBag(s, this)).Simplify()); }
public void CanSplitMoneyBag() { var gold = new AssetId(new Key()); MoneyBag bag = new MoneyBag(); bag += Money.Coins(12); bag += new AssetMoney(gold, 10); var splitted = bag.Split(12).ToArray(); Assert.Equal(Money.Coins(1.0m), splitted[0].GetAmount(null)); Assert.Equal(new AssetMoney(gold, 1), splitted[0].GetAmount(gold)); Assert.Equal(new AssetMoney(gold, 0), splitted[11].GetAmount(gold)); }
public IMoney AddMoneyBag(MoneyBag s) { return s.AddMoney(this); }
/// <summary> /// /// </summary> public void TestMoneyBagHash() { MoneyBag equal = new MoneyBag(new Money(12, "CHF"), new Money(7, "USD")); Assertion.AssertEquals(fMB1.GetHashCode(), equal.GetHashCode()); }
public void Normalize3() { // {[12 CHF][7 USD]} - {[12 CHF][3 USD]} == [4 USD] Money[] s1 = { new Money(12, "CHF"), new Money(3, "USD") }; MoneyBag ms1 = new MoneyBag(s1); Money expected = new Money(4, "USD"); Assert.AreEqual(expected, fMB1.Subtract(ms1)); }
public void Normalize4() { // [12 CHF] - {[12 CHF][3 USD]} == [-3 USD] Money[] s1 = { new Money(12, "CHF"), new Money(3, "USD") }; MoneyBag ms1 = new MoneyBag(s1); Money expected = new Money(-3, "USD"); Assert.AreEqual(expected, f12CHF.Subtract(ms1)); }
public IMoney Multiply(int factor) { MoneyBag result = new MoneyBag(); if (factor != 0) { foreach (Money m in fMonies) { result.AppendMoney((Money)m.Multiply(factor)); } } return result; }
public MoneyBag(Money m, MoneyBag bag) { AppendMoney(m); AppendBag(bag); }
public IMoney AddMoneyBag(MoneyBag s) { return (new MoneyBag(s, this)).Simplify(); }
/// <summary> /// /// </summary> public void TestMoneyBagHash() { MoneyBag equal= new MoneyBag(new Money(12, "CHF"), new Money(7, "USD")); Assertion.AssertEquals(fMB1.GetHashCode(), equal.GetHashCode()); }
public override void End() { CalloutRunning = false; Rage.Native.NativeFunction.Natives.CLEAR_PED_NON_CREATION_AREA(); NativeFunction.Natives.SET_STORE_ENABLED(true); if (Game.LocalPlayer.Character.Exists()) { if (Game.LocalPlayer.Character.IsDead) { GameFiber.Wait(1500); Functions.PlayScannerAudio("OFFICER HAS_BEEN_FATALLY_SHOT NOISE_SHORT OFFICER_NEEDS_IMMEDIATE_ASSISTANCE"); GameFiber.Wait(3000); if (ComputerPlusRunning) { API.ComputerPlusFuncs.AddUpdateToCallout(CalloutID, "Officer down. Urgent assistance required."); } } } else { GameFiber.Wait(1500); Functions.PlayScannerAudio("OFFICER HAS_BEEN_FATALLY_SHOT NOISE_SHORT OFFICER_NEEDS_IMMEDIATE_ASSISTANCE"); GameFiber.Wait(3000); if (ComputerPlusRunning) { API.ComputerPlusFuncs.AddUpdateToCallout(CalloutID, "Officer down. Urgent assistance required."); } } base.End(); if (SearchArea.Exists()) { SearchArea.Delete(); } if (CalloutFinished) { foreach (Ped ShopKeeper in ShopKeepers) { if (ShopKeeper.Exists()) { ShopKeeper.Tasks.Clear(); ShopKeeper.IsPersistent = false; } } foreach (Ped suspect in Suspects) { if (suspect.Exists()) { Suspect.IsPersistent = false; } } foreach (Rage.Object MoneyBag in MoneyBags) { if (MoneyBag.Exists()) { MoneyBag.Detach(); MoneyBag.Dismiss(); } } if (EscapeVanDriver.Exists()) { EscapeVanDriver.IsPersistent = false; } if (EscapeVan.Exists()) { EscapeVan.Dismiss(); } } else { foreach (Ped ShopKeeper in ShopKeepers) { if (ShopKeeper.Exists()) { ShopKeeper.Delete(); } } foreach (Rage.Object MoneyBag in MoneyBags) { if (MoneyBag.Exists()) { MoneyBag.Delete(); } } foreach (Ped suspect in Suspects) { if (suspect.Exists()) { suspect.Delete(); } } if (EscapeVan.Exists()) { EscapeVan.Delete(); } if (EscapeVanDriver.Exists()) { EscapeVanDriver.Delete(); } } }
public IMoney Negate() { MoneyBag result = new MoneyBag(); foreach (Money m in fMonies) { result.AppendMoney((Money)m.Negate()); } return result; }
public void MoneyBagOperations() { var msft = new AssetId("8f316d9a09"); var goog = new AssetId("097f175bc8"); var usd = new AssetId("6d2e8c766a"); // 10 MSFT + 3 GOOG var mb = new MoneyBag(new AssetMoney(msft, 10), new AssetMoney(goog, 3)); // (10 MSFT + 3 GOOG) + 1000 satoshis Assert.Equal( new MoneyBag(new AssetMoney(msft, 10), new AssetMoney(goog, 3), new Money(1000)), mb + Money.Satoshis(1000)); // (10 MSFT + 3 GOOG) + 30 GOOG == (10 MSFT + 33 GOOG) Assert.Equal( new MoneyBag(new AssetMoney(msft, 10), new AssetMoney(goog, 33)), mb + new AssetMoney(goog, 30)); // (10 MSFT + 3 GOOG) + (10 MSFT + 3 GOOG) == (20 MSFT + 6 GOOG) Assert.Equal( new MoneyBag(new AssetMoney(msft, 20), new AssetMoney(goog, 6)), mb + mb); //----- // (10 MSFT + 3 GOOG) - 1000 satoshis Assert.Equal( new MoneyBag(new AssetMoney(msft, 10), new AssetMoney(goog, 3), new Money(-1000)), mb - (Money.Satoshis(1000))); // (10 MSFT + 3 GOOG) - 30 GOOG == (10 MSFT - 27 GOOG) Assert.Equal( new MoneyBag(new AssetMoney(msft, 10), new AssetMoney(goog, -27)), mb - (new AssetMoney(goog, 30))); // (10 MSFT + 3 GOOG) - (10 MSFT + 3 GOOG) == () Assert.Equal( new MoneyBag(), mb - (mb)); // (10 MSFT + 3 GOOG) - (1 MSFT - 5 GOOG) + 10000 Satoshi == (9 MSFT + 8 GOOG + 10000 Satoshi) var b1 = new MoneyBag(new AssetMoney(msft, 10), new AssetMoney(goog, 3)); var b2 = new MoneyBag(new AssetMoney(msft, 1), new AssetMoney(goog, -5)); var b1_2 = b1 - (b2) + (new Money(10000)); Assert.True( b1_2.SequenceEqual(new IMoney[] { new AssetMoney(msft, 9), new AssetMoney(goog, 8), new Money(10000) })); }
public void MixedSimpleAdd() { // [12 CHF] + [7 USD] == {[12 CHF][7 USD]} Money[] bag = { f12CHF, f7USD }; MoneyBag expected = new MoneyBag(bag); Assert.AreEqual(expected, f12CHF.Add(f7USD)); }
private void AppendBag(MoneyBag aBag) { foreach (Money m in aBag.fMonies) AppendMoney(m); }