1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using NUnit.Framework;
using Xamarin.Forms.Maps;
namespace Xamarin.Forms.Core.UnitTests
{
[TestFixture]
public class GeocoderUnitTests : BaseTestFixture
{
[Test]
public async void AddressesForPosition ()
{
Geocoder.GetAddressesForPositionFuncAsync = GetAddressesForPositionFuncAsync;
var geocoder = new Geocoder ();
var result = await geocoder.GetAddressesForPositionAsync (new Position (1, 2));
Assert.AreEqual (new String[] { "abc", "def" }, result);
}
async Task<IEnumerable<string>> GetAddressesForPositionFuncAsync (Position position)
{
Assert.AreEqual (new Position (1, 2), position);
return new string[] {"abc", "def"};
}
[Test]
public async void PositionsForAddress () {
Geocoder.GetPositionsForAddressAsyncFunc = GetPositionsForAddressAsyncFunc ;
var geocoder = new Geocoder ();
var result = await geocoder.GetPositionsForAddressAsync ("quux");
Assert.AreEqual (new Position [] { new Position (1, 2), new Position (3, 4) }, result);
}
async Task<IEnumerable<Position>> GetPositionsForAddressAsyncFunc (string address)
{
Assert.AreEqual ("quux", address);
return new Position[] {new Position (1, 2), new Position (3, 4)};
}
}
}
|