Exemplo n.º 1
0
        public void TestEditPosition()
        {
            var account = conn.ACCOUNT.First(a => a.POSITION.Any());
            var ownerId = account.PLATFORM_USER_ACCOUNT.First().PlatformUser;
            var user    = conn.PLATFORM_USER.First(u => u.ID == ownerId);
            var pos     = conn.POSITION.First(p => p.AccountID == account.ID);

            const long localTime = 13;
            var        hash      = CredentialsHash.MakeCredentialsHash(user.Login, user.Password, localTime);
            var        status    = platformManager.EditPosition(hash, user.Login, localTime,
                                                                account.ID, pos.ID, (float)(pos.Stoploss ?? 0),
                                                                (float)pos.PriceEnter + pos.Side * 0.009f, 0, "comment");
            // попытка редактировать ордер может не пройти - торговый контекст не настроен
            var isOk = status == RequestStatus.GroupUnsupported || status == RequestStatus.OK;

            Assert.IsTrue(isOk, "EditPosition - должно быть ОК || (GroupUnsupported)");

            status = platformManager.EditPosition(hash, user.Login, localTime,
                                                  account.ID + 1, pos.ID, (float)(pos.Stoploss ?? 0),
                                                  (float)pos.PriceEnter + pos.Side * 0.009f, 0, "comment");
            Assert.AreEqual(RequestStatus.IncorrectData, status, "EditPosition - должно быть IncorrectData");
        }