public void AfterCreateArtefact_MyPeersKnowIHaveIt() { Interconnect(MyActor, OtherActor); var artefact = MyActor.CreateArtefact(Artefact.Name); Assert.True(OtherAccount.GetPeer(MyId).HasArtefact(artefact.Id)); }
public static void Initialize(MenuFormController menuFormPrefab) { //AccountInfo = DataModel.AccountInfo; OtherAccount friend = new OtherAccount() { Nickname = "Boss", Level = 2, Id = 0, Losses = 55, Victories = 1, Clan = new OtherClan() { Id = 3, Name = "TopClan" } }; OtherAccount friend2 = new OtherAccount() { Nickname = "Boss2", Level = 2, Id = 2, Losses = 55, Victories = 1, Clan = new OtherClan() { Id = 3, Name = "TopClan2s" } }; OwnClan clan = new OwnClan() { Leader = friend, Id = 0, DateOfCreation = DateTime.Now, Name = "TopClan", SeasonalPoints = 20000, Participants = new HashSet <OtherAccount>() }; clan.Participants.Add(friend); clan.Participants.Add(friend2); OwnAccount ownAccount = new OwnAccount { Id = 1, Nickname = "Leha.Monstr", Level = 5, Money = 5555, Losses = 1, Victories = 55, Friends = new HashSet <OtherAccount>(), Clan = clan, AccountStatus = GameCore.Model.AccountStatus.Priority, ClanPoints = 9999, LevelPoints = 10, SeasonalPoints = 50, DateOfMembership = DateTime.Now }; AccountInfo = ownAccount; ownAccount.Friends.Add(friend); ownAccount.Friends.Add(friend2); _menuForm = GameObject.Instantiate(menuFormPrefab); SetNewMenuContent(MenuFormContentType.Start); }
public void Delete(OtherAccount ObjDelete) { var ObjToDelete = _context.OtherAccounts.SingleOrDefault(m => m.CompanyID == ObjDelete.CompanyID); if (ObjToDelete != null) { _context.OtherAccounts.Remove(ObjToDelete); } }
public void CanCreateTwoDifferentArtefacts() { Interconnect(MyActor, OtherActor); var a1 = MyActor.CreateArtefact(Artefact.Name); var a2 = MyActor.CreateArtefact(AnotherArtefact.Name); Assert.True(OtherAccount.GetPeer(MyId).HasArtefact(a1.Id)); Assert.True(OtherAccount.GetPeer(MyId).HasArtefact(a2.Id)); }
public void WhenConnectPeer_PeerIsSynced() { Interconnect(MyActor, OtherActor); Interconnect(ThirdActor, OtherActor); OtherAccount.SetMoney(ThirdId, (Money)100); MyAccount.SetTrust(OtherId, SignedWeight.Max); MyActor.Connect(ThirdId); Assert.Equal((Money)50, MyAccount.GetMoney(ThirdId)); }
protected TestBase(ICryptographyFactory cryptographyFactory = null) { _network = new Network(cryptographyFactory ?? new SimpleCryptographyFactory()); MyAccount = _network.CreateRootAccount("MyAccount", 1); OtherAccount = _network.CreateRootAccount("OtherAccount", 2); ThirdAccount = _network.CreateRootAccount("ThirdAccount", 3); MyActor = MyAccount.GetActor(_network, _transactionFactory); OtherActor = OtherAccount.GetActor(_network, _transactionFactory); ThirdActor = ThirdAccount.GetActor(_network, _transactionFactory); Artefact = new Artefact((ArtefactId)"255:1", "SomeArtefact", (AgentId)"255"); AnotherArtefact = new Artefact((ArtefactId)"255:2", "AnotherArtefact", (AgentId)"255"); }
public void Given_1_PeerWithFullTrustAndConnectivity_WhenSyncSelf_ThenGetMeanPeerMoney( float myMoneyBefore, float peerAssessment, float myMoneyAfter) { Interconnect(MyActor, OtherActor); OtherAccount.SetMoney(MyId, (Money)peerAssessment); MyAccount.Self.Money = (Money)myMoneyBefore; MyAccount.SetTrust(OtherId, (SignedWeight)1); MyActor.SyncAll(); Assert.Equal(myMoneyAfter, MyAccount.Self.Money); }
public void AfterPeerTransferArtefactToMe_AllMyPeersKnowIHaveIt() { Interconnect(MyActor, OtherActor, ThirdActor); var artefact = OtherActor.CreateArtefact(Artefact.Name); MakeTransaction(OtherActor, MyActor, artefact); Assert.Equal(MyId, MyAccount.GetArtefact(artefact.Id).OwnerId); Assert.Equal(MyId, OtherAccount.GetArtefact(artefact.Id).OwnerId); Assert.Equal(MyId, ThirdAccount.GetArtefact(artefact.Id).OwnerId); }
public static void ReceiveOtherAccount(OtherAccount otherAccount) { if (otherAccount == null) { throw new ArgumentNullException(); } OtherAccountRequest request = _otherAccountRequestes[otherAccount.Id]; _otherAccountRequestes.Remove(otherAccount.Id); _otherAccounts.Add(otherAccount.Id, otherAccount); foreach (Action <OtherAccount> response in request.Responses) { response(otherAccount); } }
public void WhenPeerEndorceArtefactWithWrongOwner_PeerLoosesTrust() { Interconnect(MyActor, OtherActor, ThirdActor); var artefact = ThirdActor.CreateArtefact(Artefact.Name); var trustBefore = MyAccount.GetTrust(OtherId); OtherAccount.ForgetArtefact(artefact.Id); var fakeArtefact = new Artefact(artefact, OtherId); OtherActor.EndorceArtefact(fakeArtefact); var expectedTrust = trustBefore.Decrease(EndorceCounterfeitArtefactDistrustFactor); Assert.Equal(expectedTrust, MyAccount.GetTrust(OtherId)); }
public void WhenTryToUseSameTransactionKeyTwice_NothingHappens() { var sameKeyFactoryMock = new Mock <ITransactionFactory>(); sameKeyFactoryMock.SetReturnsDefault("X"); var myActor = MyAccount.GetActor(_network, sameKeyFactoryMock.Object); var otherActor = OtherAccount.GetActor(_network, sameKeyFactoryMock.Object); Interconnect(myActor, otherActor); var artefact = otherActor.CreateArtefact(Artefact.Name); MakeTransaction(otherActor, myActor, artefact); MakeTransaction(myActor, otherActor, MyAccount.GetArtefact(artefact.Id)); Assert.True(MyAccount.Self.HasArtefact(artefact.Id)); Assert.False(OtherAccount.Self.HasArtefact(artefact.Id)); }
public void Given_2_PeersWithFullConnectivity_WhenSyncSelf_ThenGetMeanWeightedByTrustPeerMoney( float myMoneyBefore, float firstPeerTrust, float firstPeerAssessment, float secondPeerTrust, float secondPeerAssessment, float myMoneyAfter) { Interconnect(MyActor, OtherActor, ThirdActor); OtherAccount.SetMoney(MyId, (Money)firstPeerAssessment); ThirdAccount.SetMoney(MyId, (Money)secondPeerAssessment); MyAccount.Self.Money = (Money)myMoneyBefore; MyAccount.SetTrust(OtherId, (SignedWeight)firstPeerTrust); MyAccount.SetTrust(ThirdId, (SignedWeight)secondPeerTrust); MyActor.SyncAll(); Assert.Equal(myMoneyAfter, MyAccount.Self.Money); }
public JsonResult SaveDefinitionOtherAccount(OtherAccount ObjToSave) { MsgUnit Msg = new MsgUnit(); try { var userId = User.Identity.GetUserId(); var UserInfo = _unitOfWork.User.GetMyInfo(userId); ObjToSave.InsDateTime = DateTime.Now; ObjToSave.InsUserID = userId; ObjToSave.CompanyID = UserInfo.fCompanyId; if (!ModelState.IsValid) { string Err = " "; var errors = ModelState.Values.SelectMany(v => v.Errors); foreach (ModelError error in errors) { Err = Err + error.ErrorMessage + " * "; } Msg.Msg = Resources.Resource.SomthingWentWrong + " : " + Err; Msg.Code = 0; return(Json(Msg, JsonRequestBehavior.AllowGet)); } _unitOfWork.DefinitionOtherAccount.Delete(ObjToSave); _unitOfWork.DefinitionOtherAccount.Add(ObjToSave); _unitOfWork.Complete(); Msg.Code = 1; Msg.Msg = Resources.Resource.AddedSuccessfully; return(Json(Msg, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { Msg.Msg = Resources.Resource.SomthingWentWrong + " : " + ex.Message.ToString(); Msg.Code = 0; return(Json(Msg, JsonRequestBehavior.AllowGet)); } }
public void WhenRenewKeys_PeersAreUpdated() { Interconnect(MyActor, OtherActor); MyActor.RenewKeys(); Assert.Equal(MyAccount.PublicKey, OtherAccount.GetPeer(MyId).PublicKey); }
/// <summary> /// Загрузка информации о счетах, карточках, кошельках и т.д. из файла /// </summary> public static void Init() { if (!File.Exists(Properties.Resources.AccountsFile)) { StreamWriter fileWriter = File.CreateText(Properties.Resources.AccountsFile); fileWriter.WriteLine("<?xml version=\"1.0\"?>\n<accounts>\n</accounts> "); fileWriter.Close(); } XmlAccountsDocument.Load(Properties.Resources.AccountsFile); foreach (XmlNode node in XmlAccountsDocument.DocumentElement) { switch (node.Attributes["type"].Value) { case "Bank": { BankAccount newAccount = new BankAccount(); newAccount.AccountName = node.ChildNodes[0].InnerText; newAccount.AccountNumber = node.ChildNodes[1].InnerText; Enum.TryParse(node.ChildNodes[2].InnerText, out newAccount.Currency); newAccount.AccountAmount = decimal.Parse(node.ChildNodes[3].InnerText); List_BankAccounts.Add(newAccount); TileManager.BankAccountsTab.AddTile(newAccount.AccountName); break; } case "PlasticCard": { PlasticCard newCard = new PlasticCard(); newCard.Name = node.ChildNodes[0].InnerText; newCard.BankAccount = node.ChildNodes[1].InnerText; newCard.CardHolder = node.ChildNodes[2].InnerText; newCard.CardNumber = node.ChildNodes[3].InnerText; newCard.Date = node.ChildNodes[4].InnerText; newCard.PlasticCardInXml = node; Enum.TryParse(node.ChildNodes[5].InnerText, out newCard.Currency); newCard.AccountAmount = decimal.Parse(node.ChildNodes[6].InnerText); List_PlasticCards.Add(newCard); TileManager.PlasticCardsTab.AddTile(newCard.Name); break; } case "Crypto": { CryptoWallet newCryptoWallet = new CryptoWallet(); newCryptoWallet.Name = node.ChildNodes[0].InnerText; newCryptoWallet.WalletID = node.ChildNodes[1].InnerText; newCryptoWallet.WalletAddress = node.ChildNodes[2].InnerText; newCryptoWallet.WalletPassword = node.ChildNodes[3].InnerText; Enum.TryParse(node.ChildNodes[4].InnerText, out newCryptoWallet.CryptoCurrency); List_CryptoWallets.Add(newCryptoWallet); break; } case "Other": { OtherAccount newOtherAccount = new OtherAccount(); newOtherAccount.AccountName = node.ChildNodes[0].InnerText; Enum.TryParse(node.ChildNodes[1].InnerText, out newOtherAccount.Currency); newOtherAccount.AccountAmount = decimal.Parse(node.ChildNodes[2].InnerText); List_OtherAccounts.Add(newOtherAccount); break; } } } }
public void AfterIConnectWithAgent_AgentIsNotConnectedToMe() { MyActor.Connect(OtherId); Assert.False(OtherAccount.IsConnectedTo(MyId)); Assert.False(MyAccount.GetPeer(OtherId).IsConnectedTo(MyId)); }
public void SetAccount(OtherAccount otherAccount) => _otherAccountUI = otherAccount;
public void Add(OtherAccount ObjSave) { _context.OtherAccounts.Add(ObjSave); }