public static IEnumerable <object[]> GetBroadcastSessionNodeAndExpectedObject() { var node1 = HtmlNode.CreateNode("<broadcast_session_result bcast_receivers='415943875@warface/GameClient,673064529@warface/GameClient,130954002@warface/GameClient,213601447@warface/GameClient,212517822@warface/GameClient,676695911@warface/GameClient,682734143@warface/GameClient,263831027@warface/GameClient,259942698@warface/GameClient,309279601@warface/GameClient,348234928@warface/GameClient,681133359@warface/GameClient,121665537@warface/GameClient,13872189@warface/GameClient,125480849@warface/GameClient,684172791@warface/GameClient'><player_result nickname='СумашедшийТруп' experience='864' money='351' gained_crown_money='0' no_crown_rewards='1' sponsor_points='510' clan_points='40' bonus_experience='1' bonus_money='2' bonus_sponsor_points='3' experience_boost='462' money_boost='166' sponsor_points_boost='201' experience_boost_percent='1.15' money_boost_percent='0.9' sponsor_points_boost_percent='0.65' completed_stages='0' is_vip='1' score='2145' first_win='0' dynamic_multipliers_info='' dynamic_crown_multiplier='1'></broadcast_session_result>"); var expectedObject = new BroadcastSessionResult(new[] { new BroadcastSessionResult.PlayerResult("СумашедшийТруп", 864, 351, 0, true, 510, 40, 1, 2, 3, 462, 166, 201, 1.15, 0.9, 0.65, 0, true, 2145, false, "", 1, null), }); yield return(new object[] { node1, expectedObject }); }
void BroadcastSessionResult_ParseNode_CheckFields(HtmlNode broadcastSessionNode, BroadcastSessionResult expectedBroadcast) { var actualBroadcast = BroadcastSessionResult.ParseNode(broadcastSessionNode); for (var i = 0; i < expectedBroadcast.PlayerResults.Count; i++) { var expectedPlayer = expectedBroadcast.PlayerResults[i]; var actualPlayer = actualBroadcast.PlayerResults[i]; var props = expectedPlayer.GetType().GetProperties(BindingFlags.Instance | BindingFlags.Public); foreach (var propertyInfo in props) { var expectedValue = propertyInfo.GetValue(expectedPlayer); var actualValue = propertyInfo.GetValue(actualPlayer); Assert.Equal(expectedValue, actualValue); } } }
void BroadcastSessionResult_ParseNode(HtmlNode broadcastSessionNode) { BroadcastSessionResult.ParseNode(broadcastSessionNode); }