Skip to content

Commit e9478ac

Browse files
author
Andrew Theken
authored
Merge pull request #20 from wildbit/configure-for-travis
Switch to using travis for build/publishing.
2 parents 0818ed8 + 751be12 commit e9478ac

File tree

9 files changed

+67
-86
lines changed

9 files changed

+67
-86
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -196,4 +196,5 @@ FakesAssemblies/
196196
*.opt
197197

198198
#ignore built nuget packages.
199-
*.nupkg
199+
*.nupkg
200+
.idea/

.idea/.idea.Mustachio/.idea/vcs.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.travis.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
sudo: false
2+
language: csharp
3+
dist: trusty
4+
mono: none
5+
dotnet: 2.1
6+
script:
7+
- dotnet restore
8+
- dotnet build
9+
- dotnet test
10+
after_success:
11+
- scripts/publish.sh

Mustachio.Tests/Mustachio.Tests.csproj

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22
<PropertyGroup>
3-
<TargetFramework>net472</TargetFramework>
3+
<IsTestProject>true</IsTestProject>
4+
<TargetFramework>netcoreapp2.1</TargetFramework>
45
<SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
56
<AssemblyTitle>Mustachio.Tests</AssemblyTitle>
67
<Version>1.0.0</Version>
@@ -21,16 +22,13 @@
2122
<DebugType>pdbonly</DebugType>
2223
</PropertyGroup>
2324
<ItemGroup>
24-
<PackageReference Include="System.Data.DataSetExtensions" Version="4.*" />
25-
<PackageReference Include="Microsoft.CSharp" Version="4.*" />
26-
</ItemGroup>
27-
<ItemGroup>
25+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.1.0" />
2826
<PackageReference Include="Newtonsoft.Json" Version="12.0.2" />
29-
</ItemGroup>
30-
<ItemGroup>
31-
<PackageReference Include="xunit" Version="1.9.2" />
32-
<PackageReference Include="xunit.extensions" Version="1.9.2" />
33-
<PackageReference Include="xunit.runner.visualstudio" Version="2.1.0" />
27+
<PackageReference Include="xunit.assert" Version="2.4.1" />
28+
<PackageReference Include="xunit.core" Version="2.4.1" />
29+
<PackageReference Include="xunit.extensibility.core" Version="2.4.1" />
30+
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
31+
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.1" />
3432
</ItemGroup>
3533
<ItemGroup>
3634
<ProjectReference Include="..\Mustachio\Mustachio.csproj" />

Mustachio.Tests/PerfHarness.cs

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,7 @@
22
using System.Collections.Generic;
33
using System.Diagnostics;
44
using System.Linq;
5-
using System.Text;
6-
using System.Threading.Tasks;
7-
using Xunit.Extensions;
5+
using Xunit;
86

97
namespace Mustachio.Tests
108
{
@@ -25,7 +23,8 @@ public class PerfHarness
2523
public void TestRuns(string variation, int modelDepth, int sizeOfTemplate, int inserts, int runs)
2624
{
2725
var model = ConstructModelAndPath(modelDepth);
28-
var baseTemplate = Enumerable.Range(1, 5).Aggregate("", (seed, current) => seed += " {{" + model.Item2 + "}}");
26+
var baseTemplate = Enumerable.Range(1, 5)
27+
.Aggregate("", (seed, current) => seed += " {{" + model.Item2 + "}}");
2928
while (baseTemplate.Length <= sizeOfTemplate)
3029
{
3130
baseTemplate += model.Item2 + "\r\n";
@@ -50,10 +49,13 @@ public void TestRuns(string variation, int modelDepth, int sizeOfTemplate, int i
5049
{
5150
var f = template(model.Item1);
5251
}
52+
5353
renderTime.Stop();
5454
totalTime.Stop();
55-
Console.WriteLine("Variation: '{8}', Time/Run: {7}ms, Runs: {0}x, Model Depth: {1}, SubstitutionCount: {2}, Template Size: {3}, ParseTime: {4}, RenderTime: {5}, Total Time: {6}",
56-
runs, modelDepth, inserts, sizeOfTemplate, parseTime.Elapsed, renderTime.Elapsed, totalTime.Elapsed, totalTime.ElapsedMilliseconds / (double)runs, variation);
55+
Console.WriteLine(
56+
"Variation: '{8}', Time/Run: {7}ms, Runs: {0}x, Model Depth: {1}, SubstitutionCount: {2}, Template Size: {3}, ParseTime: {4}, RenderTime: {5}, Total Time: {6}",
57+
runs, modelDepth, inserts, sizeOfTemplate, parseTime.Elapsed, renderTime.Elapsed, totalTime.Elapsed,
58+
totalTime.ElapsedMilliseconds / (double) runs, variation);
5759
}
5860

5961
private Tuple<Dictionary<string, object>, string> ConstructModelAndPath(int modelDepth, string path = null)
@@ -70,6 +72,5 @@ private Tuple<Dictionary<string, object>, string> ConstructModelAndPath(int mode
7072

7173
return Tuple.Create(model, path);
7274
}
73-
7475
}
75-
}
76+
}

Mustachio.Tests/TemplateFixture.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ namespace Mustachio.Tests
99
{
1010
public class TemplateFixture
1111
{
12+
1213
[Fact]
1314
public void TemplateRendersContentWithNoVariables()
1415
{

Mustachio/Mustachio.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22
<PropertyGroup>
3+
<IsTestProject>false</IsTestProject>
34
<TargetFramework>netstandard2.0</TargetFramework>
45
<SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
56
<AssemblyTitle>Mustachio</AssemblyTitle>

appveyor.yml

Lines changed: 0 additions & 67 deletions
This file was deleted.

scripts/publish.sh

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
#!/usr/bin/env bash
2+
set -e
3+
shopt -s expand_aliases
4+
5+
dotnet restore
6+
7+
#generate a version, based on the tag, or rev.
8+
revision=$(git rev-parse HEAD)
9+
inferred_assembly_version="2.0.0.${TRAVIS_BUILD_NUMBER:-0}"
10+
version=$(echo "${TRAVIS_TAG:-$inferred_assembly_version}" | sed -E s/-.+$//)
11+
descriptive_version=${TRAVIS_TAG:-"$version-git-${revision:0:6}"}
12+
13+
# build and test in one step.
14+
dotnet pack -c Release -o ../tmp ./Mustachio/Mustachio.csproj -p:AssemblyVersion=$version -p:PackageVersion=$descriptive_version
15+
16+
package_path="./tmp/Postmark.$descriptive_version.nupkg"
17+
18+
echo "The package path is located at: $package_path"
19+
echo 'Here is what is located at that path:'
20+
ls ./tmp
21+
22+
if [[ $TRAVIS_TAG && $NUGET_API_KEY && $MYGET_API_KEY ]]; then
23+
echo 'This package will be published to NuGet, and MyGet'
24+
dotnet nuget push $package_path -s https://www.nuget.org/ -k $NUGET_API_KEY
25+
dotnet nuget push $package_path -s https://www.myget.org/F/postmark-ci/api/v3/index.json -k $MYGET_API_KEY
26+
else
27+
echo 'This package will be published to the CI "MyGet" feed:'
28+
dotnet nuget push $package_path -s https://www.myget.org/F/postmark-ci/api/v3/index.json -k $MYGET_API_KEY
29+
fi

0 commit comments

Comments
 (0)