Browse Source

Merge pull request #988 from abpframework/maliming/docs

Improve the doc module unit test.
pull/997/head
Halil İbrahim Kalkan 7 years ago
committed by GitHub
parent
commit
dd1826d07d
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 1
      modules/docs/test/Volo.Docs.Admin.Application.Tests/Volo.Docs.Admin.Application.Tests.csproj
  2. 5
      modules/docs/test/Volo.Docs.Admin.Application.Tests/Volo/Docs/DocsAdminApplicationTestBase.cs
  3. 9
      modules/docs/test/Volo.Docs.Admin.Application.Tests/Volo/Docs/DocsAdminApplicationTestModule.cs
  4. 5
      modules/docs/test/Volo.Docs.Application.Tests/Volo/Docs/ApplicationService_Tests.cs
  5. 7
      modules/docs/test/Volo.Docs.Application.Tests/Volo/Docs/DocsApplicationTestBase.cs
  6. 40
      modules/docs/test/Volo.Docs.Domain.Tests/Volo/Docs/DocsDomainTestBase.cs
  7. 39
      modules/docs/test/Volo.Docs.TestBase/Volo/Docs/DocsTestBase.cs

1
modules/docs/test/Volo.Docs.Admin.Application.Tests/Volo.Docs.Admin.Application.Tests.csproj

@ -11,7 +11,6 @@
<ItemGroup> <ItemGroup>
<ProjectReference Include="..\..\src\Volo.Docs.Admin.Application\Volo.Docs.Admin.Application.csproj" /> <ProjectReference Include="..\..\src\Volo.Docs.Admin.Application\Volo.Docs.Admin.Application.csproj" />
<ProjectReference Include="..\..\src\Volo.Docs.Application\Volo.Docs.Application.csproj" />
<ProjectReference Include="..\Volo.Docs.Domain.Tests\Volo.Docs.Domain.Tests.csproj" /> <ProjectReference Include="..\Volo.Docs.Domain.Tests\Volo.Docs.Domain.Tests.csproj" />
</ItemGroup> </ItemGroup>

5
modules/docs/test/Volo.Docs.Admin.Application.Tests/Volo/Docs/DocsApplicationTestBase.cs → modules/docs/test/Volo.Docs.Admin.Application.Tests/Volo/Docs/DocsAdminApplicationTestBase.cs

@ -4,9 +4,4 @@
{ {
} }
public class DocsApplicationTestBase : DocsTestBase<DocsApplicationTestModule>
{
}
} }

9
modules/docs/test/Volo.Docs.Admin.Application.Tests/Volo/Docs/DocsApplicationTestModule.cs → modules/docs/test/Volo.Docs.Admin.Application.Tests/Volo/Docs/DocsAdminApplicationTestModule.cs

@ -3,15 +3,6 @@ using Volo.Docs.Admin;
namespace Volo.Docs namespace Volo.Docs
{ {
[DependsOn(
typeof(DocsApplicationModule),
typeof(DocsDomainTestModule)
)]
public class DocsApplicationTestModule : AbpModule
{
}
[DependsOn( [DependsOn(
typeof(DocsAdminApplicationModule), typeof(DocsAdminApplicationModule),
typeof(DocsDomainTestModule) typeof(DocsDomainTestModule)

5
modules/docs/test/Volo.Docs.Admin.Application.Tests/Volo/Docs/ApplicationService_Tests.cs → modules/docs/test/Volo.Docs.Application.Tests/Volo/Docs/ApplicationService_Tests.cs

@ -36,7 +36,10 @@ namespace Volo.Docs
[Fact] [Fact]
public async Task GetVersionsAsync() public async Task GetVersionsAsync()
{ {
// TODO: Need to mock WebClient and Octokit components var versions = await _projectAppService.GetVersionsAsync("ABP");
versions.ShouldNotBeNull();
versions.Items.Count.ShouldBe(1);
versions.Items.ShouldContain(x => x.Name == "0.15.0" && x.DisplayName == "0.15.0");
} }
} }
} }

7
modules/docs/test/Volo.Docs.Application.Tests/Volo/Docs/DocsApplicationTestBase.cs

@ -0,0 +1,7 @@
namespace Volo.Docs
{
public class DocsApplicationTestBase : DocsTestBase<DocsApplicationTestModule>
{
}
}

40
modules/docs/test/Volo.Docs.Domain.Tests/Volo/Docs/DocsDomainTestBase.cs

@ -1,43 +1,7 @@
using System; namespace Volo.Docs
using System.Collections.Generic;
using Microsoft.Extensions.DependencyInjection;
using NSubstitute;
using Octokit;
using Volo.Docs.GitHub.Documents;
namespace Volo.Docs
{ {
public abstract class DocsDomainTestBase : DocsTestBase<DocsDomainTestModule> public abstract class DocsDomainTestBase : DocsTestBase<DocsDomainTestModule>
{ {
protected override void AfterAddApplication(IServiceCollection services)
{
var repositoryManager = Substitute.For<IGithubRepositoryManager>();
repositoryManager.GetFileRawStringContentAsync(Arg.Any<string>(), Arg.Any<string>(), Arg.Any<string>())
.Returns("stringContent");
repositoryManager.GetFileRawByteArrayContentAsync(Arg.Any<string>(), Arg.Any<string>(), Arg.Any<string>())
.Returns(new byte[] { 0x01, 0x02, 0x03 });
repositoryManager.GetReleasesAsync(Arg.Any<string>(), Arg.Any<string>(), Arg.Any<string>())
.Returns(new List<Release>
{
new Release("https://api.github.com/repos/abpframework/abp/releases/16293679",
"https://github.com/abpframework/abp/releases/tag/0.15.0",
"https://api.github.com/repos/abpframework/abp/releases/16293679/assets",
"https://uploads.github.com/repos/abpframework/abp/releases/16293679/assets{?name,label}",
16293679,
"0.15.0",
"master",
"0.15.0",
"0.15.0 already release",
false,
false,
DateTimeOffset.Parse("2019-03-22T18:43:58Z"),
DateTimeOffset.Parse("2019-03-22T19:44:25Z"),
null,
"https://api.github.com/repos/abpframework/abp/tarball/0.15.0",
"https://api.github.com/repos/abpframework/abp/zipball/0.15.0",
null)
});
services.AddSingleton(repositoryManager);
}
} }
} }

39
modules/docs/test/Volo.Docs.TestBase/Volo/Docs/DocsTestBase.cs

@ -1,5 +1,11 @@
using Volo.Abp; using System;
using System.Collections.Generic;
using Microsoft.Extensions.DependencyInjection;
using NSubstitute;
using Octokit;
using Volo.Abp;
using Volo.Abp.Modularity; using Volo.Abp.Modularity;
using Volo.Docs.GitHub.Documents;
namespace Volo.Docs namespace Volo.Docs
{ {
@ -10,5 +16,36 @@ namespace Volo.Docs
{ {
options.UseAutofac(); options.UseAutofac();
} }
protected override void AfterAddApplication(IServiceCollection services)
{
var repositoryManager = Substitute.For<IGithubRepositoryManager>();
repositoryManager.GetFileRawStringContentAsync(Arg.Any<string>(), Arg.Any<string>(), Arg.Any<string>())
.Returns("stringContent");
repositoryManager.GetFileRawByteArrayContentAsync(Arg.Any<string>(), Arg.Any<string>(), Arg.Any<string>())
.Returns(new byte[] { 0x01, 0x02, 0x03 });
repositoryManager.GetReleasesAsync(Arg.Any<string>(), Arg.Any<string>(), Arg.Any<string>())
.Returns(new List<Release>
{
new Release("https://api.github.com/repos/abpframework/abp/releases/16293679",
"https://github.com/abpframework/abp/releases/tag/0.15.0",
"https://api.github.com/repos/abpframework/abp/releases/16293679/assets",
"https://uploads.github.com/repos/abpframework/abp/releases/16293679/assets{?name,label}",
16293679,
"0.15.0",
"master",
"0.15.0",
"0.15.0 already release",
false,
false,
DateTimeOffset.Parse("2019-03-22T18:43:58Z"),
DateTimeOffset.Parse("2019-03-22T19:44:25Z"),
null,
"https://api.github.com/repos/abpframework/abp/tarball/0.15.0",
"https://api.github.com/repos/abpframework/abp/zipball/0.15.0",
null)
});
services.AddSingleton(repositoryManager);
}
} }
} }

Loading…
Cancel
Save