Esempio n. 1
0
        public async Task GetPlayerAppearance_InvalidGamertag(string gamertag)
        {
            var query = new GetPlayerAppearance(gamertag);

            await Global.Session.Query(query);

            Assert.Fail("An exception should have been thrown");
        }
Esempio n. 2
0
        public async Task GetPlayerAppearance_DoesNotThrow(string gamertag)
        {
            var query = new GetPlayerAppearance(gamertag)
                        .SkipCache();

            var result = await Global.Session.Query(query);

            Assert.IsInstanceOf(typeof(PlayerAppearance), result);
        }
Esempio n. 3
0
        public async Task GetPlayerAppearance_IsSerializable(string gamertag)
        {
            var query = new GetPlayerAppearance(gamertag)
                        .SkipCache();

            var result = await Global.Session.Query(query);

            SerializationUtility <PlayerAppearance> .AssertRoundTripSerializationIsPossible(result);
        }
Esempio n. 4
0
        public async Task Query_DoesNotThrow(string gamertag)
        {
            var query = new GetPlayerAppearance(gamertag)
                        .SkipCache();

            var result = await _mockSession.Query(query);

            Assert.IsInstanceOf(typeof(PlayerAppearance), result);
            Assert.AreEqual(_playerAppearance, result);
        }
Esempio n. 5
0
        public async Task GetPlayerAppearance_SchemaIsValid(string gamertag)
        {
            var playerAppearanceSchema = JSchema.Parse(File.ReadAllText(Halo5Config.PlayerAppearancePath), new JSchemaReaderSettings
            {
                Resolver = new JSchemaUrlResolver(),
                BaseUri  = new Uri(Path.GetFullPath(Halo5Config.PlayerAppearanceSchemaPath))
            });

            var query = new GetPlayerAppearance(gamertag)
                        .SkipCache();

            var jArray = await Global.Session.Get <JObject>(query.Uri);

            SchemaUtility.AssertSchemaIsValid(playerAppearanceSchema, jArray);
        }
Esempio n. 6
0
        public async Task GetPlayerAppearance_ModelMatchesSchema(string gamertag)
        {
            var schema = JSchema.Parse(File.ReadAllText(Halo5Config.PlayerAppearancePath), new JSchemaReaderSettings
            {
                Resolver = new JSchemaUrlResolver(),
                BaseUri  = new Uri(Path.GetFullPath(Halo5Config.PlayerAppearanceSchemaPath))
            });

            var query = new GetPlayerAppearance(gamertag)
                        .SkipCache();

            var result = await Global.Session.Query(query);

            var json       = JsonConvert.SerializeObject(result);
            var jContainer = JsonConvert.DeserializeObject <JObject>(json);

            SchemaUtility.AssertSchemaIsValid(schema, jContainer);
        }
Esempio n. 7
0
        public void Uri_MatchesExpected(string gamertag)
        {
            var query = new GetPlayerAppearance(gamertag);

            Assert.AreEqual($"https://www.haloapi.com/profile/h5/profiles/{gamertag}/appearance", query.Uri);
        }