Merge pull request #66 from Maledong/NeedDispose
[Fix] Add "Disposible" interface for final release of resouces
This commit is contained in:
commit
1cde91a274
|
|
@ -1,9 +1,5 @@
|
||||||
using BenchmarkDotNet.Attributes;
|
using BenchmarkDotNet.Attributes;
|
||||||
using BenchmarkDotNet.Order;
|
|
||||||
using IP2Region.Models;
|
using IP2Region.Models;
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Text;
|
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace IP2Region.Test.Benchmark
|
namespace IP2Region.Test.Benchmark
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,5 @@
|
||||||
using BenchmarkDotNet.Attributes;
|
using BenchmarkDotNet.Attributes;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Text;
|
|
||||||
|
|
||||||
namespace IP2Region.Test.Benchmark
|
namespace IP2Region.Test.Benchmark
|
||||||
{
|
{
|
||||||
|
|
@ -17,7 +15,7 @@ namespace IP2Region.Test.Benchmark
|
||||||
|
|
||||||
public TestBase(String DBFilePath)
|
public TestBase(String DBFilePath)
|
||||||
{
|
{
|
||||||
this._dBFilePath = DBFilePath;
|
_dBFilePath = DBFilePath;
|
||||||
}
|
}
|
||||||
|
|
||||||
[GlobalSetup]
|
[GlobalSetup]
|
||||||
|
|
@ -37,7 +35,7 @@ namespace IP2Region.Test.Benchmark
|
||||||
[GlobalCleanup]
|
[GlobalCleanup]
|
||||||
public void Dispose()
|
public void Dispose()
|
||||||
{
|
{
|
||||||
_search?.Dispose();
|
_search.Dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
public String GetRandomIP()
|
public String GetRandomIP()
|
||||||
|
|
|
||||||
|
|
@ -4,9 +4,10 @@ using Xunit;
|
||||||
|
|
||||||
namespace IP2Region.Test.xUnit
|
namespace IP2Region.Test.xUnit
|
||||||
{
|
{
|
||||||
public class SearchTest
|
public class SearchTest : IDisposable
|
||||||
{
|
{
|
||||||
private readonly DbSearcher _search;
|
private readonly DbSearcher _search;
|
||||||
|
|
||||||
public SearchTest()
|
public SearchTest()
|
||||||
{
|
{
|
||||||
_search = new DbSearcher(Environment.CurrentDirectory + @"\DB\ip2region.db");
|
_search = new DbSearcher(Environment.CurrentDirectory + @"\DB\ip2region.db");
|
||||||
|
|
@ -16,8 +17,8 @@ namespace IP2Region.Test.xUnit
|
||||||
{
|
{
|
||||||
string memResult = _search.MemorySearch("183.192.62.65").Region;
|
string memResult = _search.MemorySearch("183.192.62.65").Region;
|
||||||
string binarySearchResult = _search.BinarySearch("183.192.62.65").Region;
|
string binarySearchResult = _search.BinarySearch("183.192.62.65").Region;
|
||||||
string binaryTreeSearchResult = _search.BtreeSearch("183.192.62.65").Region;
|
string binaryTreeSearchResult = _search.BtreeSearch("183.192.62.65").Region;
|
||||||
|
|
||||||
Assert.NotNull(memResult);
|
Assert.NotNull(memResult);
|
||||||
Assert.NotNull(binarySearchResult);
|
Assert.NotNull(binarySearchResult);
|
||||||
Assert.NotNull(binaryTreeSearchResult);
|
Assert.NotNull(binaryTreeSearchResult);
|
||||||
|
|
@ -29,10 +30,10 @@ namespace IP2Region.Test.xUnit
|
||||||
[Fact]
|
[Fact]
|
||||||
public async Task SearchAsync_Test()
|
public async Task SearchAsync_Test()
|
||||||
{
|
{
|
||||||
var memResult = await _search.MemorySearchAsync("183.192.62.65");
|
var memResult = await _search.MemorySearchAsync("183.192.62.65");
|
||||||
var binarySearchResult = await _search.BinarySearchAsync("183.192.62.65");
|
var binarySearchResult = await _search.BinarySearchAsync("183.192.62.65");
|
||||||
var bTreeSearchResult = await _search.BtreeSearchAsync("183.192.62.65");
|
var bTreeSearchResult = await _search.BtreeSearchAsync("183.192.62.65");
|
||||||
|
|
||||||
Assert.NotNull(memResult.Region);
|
Assert.NotNull(memResult.Region);
|
||||||
Assert.NotNull(binarySearchResult.Region);
|
Assert.NotNull(binarySearchResult.Region);
|
||||||
Assert.NotNull(bTreeSearchResult.Region);
|
Assert.NotNull(bTreeSearchResult.Region);
|
||||||
|
|
@ -41,6 +42,9 @@ namespace IP2Region.Test.xUnit
|
||||||
Assert.Equal(bTreeSearchResult.Region, memResult.Region);
|
Assert.Equal(bTreeSearchResult.Region, memResult.Region);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void Dispose()
|
||||||
|
{
|
||||||
|
_search.Dispose();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,5 @@
|
||||||
using IP2Region;
|
using IP2Region;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
using System.Threading.Tasks;
|
|
||||||
|
|
||||||
namespace IP2Region_NetFx_Test
|
namespace IP2Region_NetFx_Test
|
||||||
{
|
{
|
||||||
|
|
@ -11,9 +7,11 @@ namespace IP2Region_NetFx_Test
|
||||||
{
|
{
|
||||||
static void Main(string[] args)
|
static void Main(string[] args)
|
||||||
{
|
{
|
||||||
DbSearcher _search = new DbSearcher(Environment.CurrentDirectory + @"\DB\ip2region.db");
|
using (var _search = new DbSearcher(Environment.CurrentDirectory + @"\DB\ip2region.db"))
|
||||||
Console.WriteLine(_search.MemorySearch("183.192.62.65").Region);
|
{
|
||||||
Console.Read();
|
Console.WriteLine(_search.MemorySearch("183.192.62.65").Region);
|
||||||
|
Console.Read();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Runtime.CompilerServices;
|
|
||||||
using System.Runtime.InteropServices;
|
using System.Runtime.InteropServices;
|
||||||
|
|
||||||
// 有关程序集的一般信息由以下
|
// 有关程序集的一般信息由以下
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue