public async Task CharacterAsync_successfully_returns_a_list_of_fittings()
        {
            int           characterId   = 828658;
            string        characterName = "ThisIsACharacter";
            FittingScopes scopes        = FittingScopes.esi_fittings_read_fittings_v1;

            SsoToken inputToken = new SsoToken {
                AccessToken = "This is a old access token", RefreshToken = "This is a old refresh token", CharacterId = characterId, CharacterName = characterName, FittingScopesFlags = scopes
            };

            LatestFittingsEndpoints internalLatestFittings = new LatestFittingsEndpoints(string.Empty, true);

            IList <V2FittingsCharacter> model = await internalLatestFittings.CharacterAsync(inputToken);

            Assert.Single(model);
            Assert.Equal("Awesome Vindi fitting", model[0].Description);
            Assert.Equal(1, model[0].FittingId);

            Assert.Single(model[0].Items);
            Assert.Equal(V2FittingsCharacterItemFlag.Cargo, model[0].Items[0].Flag);
            Assert.Equal(1, model[0].Items[0].Quantity);
            Assert.Equal(1234, model[0].Items[0].TypeId);

            Assert.Equal("Best Vindicator", model[0].Name);
            Assert.Equal(123, model[0].ShipTypeId);
        }
Beispiel #2
0
        public async Task CharacterAsync_successfully_returns_a_list_of_fittings()
        {
            Mock <IWebClient> mockedWebClient = new Mock <IWebClient>();

            int           characterId   = 828658;
            string        characterName = "ThisIsACharacter";
            FittingScopes scopes        = FittingScopes.esi_fittings_read_fittings_v1;

            SsoToken inputToken = new SsoToken {
                AccessToken = "This is a old access token", RefreshToken = "This is a old refresh token", CharacterId = characterId, CharacterName = characterName, FittingScopesFlags = scopes
            };
            string json = "[\r\n  {\r\n    \"description\": \"Awesome Vindi fitting\",\r\n    \"fitting_id\": 1,\r\n    \"items\": [\r\n      {\r\n        \"flag\": \"Cargo\",\r\n        \"quantity\": 1,\r\n        \"type_id\": 1234\r\n      }\r\n    ],\r\n    \"name\": \"Best Vindicator\",\r\n    \"ship_type_id\": 123\r\n  }\r\n]";

            mockedWebClient.Setup(x => x.GetAsync(It.IsAny <WebHeaderCollection>(), It.IsAny <string>(), It.IsAny <int>())).ReturnsAsync(new EsiModel {
                Model = json
            });

            InternalLatestFittings internalLatestFittings = new InternalLatestFittings(mockedWebClient.Object, string.Empty);

            IList <V2FittingsCharacter> model = await internalLatestFittings.CharacterAsync(inputToken);

            Assert.Single(model);
            Assert.Equal("Awesome Vindi fitting", model[0].Description);
            Assert.Equal(1, model[0].FittingId);

            Assert.Single(model[0].Items);
            Assert.Equal(V2FittingsCharacterItemFlag.Cargo, model[0].Items[0].Flag);
            Assert.Equal(1, model[0].Items[0].Quantity);
            Assert.Equal(1234, model[0].Items[0].TypeId);

            Assert.Equal("Best Vindicator", model[0].Name);
            Assert.Equal(123, model[0].ShipTypeId);
        }
Beispiel #3
0
        public static void CheckToken(SsoToken token, FittingScopes scope)
        {
            if (token == null)
            {
                throw new EsiException("Token can not be null");
            }

            if (token.FittingScopesFlags == FittingScopes.None || !token.FittingScopesFlags.HasFlag(scope))
            {
                throw new EsiException($"This token does not have {scope} it has: {token.FittingScopesFlags}");
            }
        }