├── .gitignore
├── .nuget
├── NuGet.Config
├── NuGet.exe
└── NuGet.targets
├── .vs
└── config
│ └── applicationhost.config
├── ShortUrl.sln
├── ShortUrl
├── Bootstrapper.cs
├── DataAccess
│ └── MongoUrlStore.cs
├── Properties
│ └── AssemblyInfo.cs
├── ShortUrl.csproj
├── ShortUrlModule.cs
├── UrlStore.cs
├── Views
│ ├── index.html
│ └── shortened_url.sshtml
└── packages.config
├── ShortUrlDesktopApp
├── Program.cs
├── Properties
│ └── AssemblyInfo.cs
├── ShortUrlDesktopApp.csproj
├── app.config
└── packages.config
├── ShortUrlTest
├── BaseUrlSpec.cs
├── BrowserResponseExtensions.cs
├── MongoUrlStoreTest.cs
├── Properties
│ └── AssemblyInfo.cs
├── ShortUrlTest.csproj
├── UrlStorageTest.cs
├── app.config
└── packages.config
├── ShortUrlWebApp
├── Properties
│ └── AssemblyInfo.cs
├── ShortUrlWebApp.csproj
├── Web.Debug.config
├── Web.Release.config
├── Web.config
└── packages.config
└── packages
├── CsQuery.1.3.4
├── CsQuery.1.3.4.nupkg
├── [Content_Types].xml
└── lib
│ └── net40
│ ├── CsQuery.XML
│ └── CsQuery.dll
├── MongoDB.Bson.2.0.0
├── License.rtf
├── MongoDB.Bson.2.0.0.nupkg
├── [Content_Types].xml
└── lib
│ └── net45
│ ├── MongoDB.Bson.XML
│ └── MongoDB.Bson.dll
├── MongoDB.Driver.2.0.0
├── License.rtf
├── MongoDB.Driver.2.0.0.nupkg
├── [Content_Types].xml
└── lib
│ └── net45
│ ├── MongoDB.Driver.XML
│ └── MongoDB.Driver.dll
├── MongoDB.Driver.Core.2.0.0
├── License.rtf
├── MongoDB.Driver.Core.2.0.0.nupkg
├── [Content_Types].xml
└── lib
│ └── net45
│ └── MongoDB.Driver.Core.dll
├── Moq.4.2.1502.0911
├── Moq.4.2.1502.911.nupkg
├── [Content_Types].xml
└── lib
│ ├── net35
│ ├── Moq.dll
│ └── Moq.xml
│ ├── net40
│ ├── Moq.dll
│ └── Moq.xml
│ └── sl4
│ ├── Moq.Silverlight.dll
│ └── Moq.Silverlight.xml
├── Nancy.1.2.0
├── Nancy.1.2.0.nupkg
├── [Content_Types].xml
└── lib
│ └── net40
│ ├── Nancy.dll
│ └── Nancy.xml
├── Nancy.Hosting.Aspnet.1.2.0
├── Nancy.Hosting.Aspnet.1.2.0.nupkg
├── [Content_Types].xml
├── content
│ └── web.config.transform
└── lib
│ └── net40
│ ├── Nancy.Hosting.Aspnet.dll
│ └── Nancy.Hosting.Aspnet.xml
├── Nancy.Hosting.Self.1.2.0
├── Nancy.Hosting.Self.1.2.0.nupkg
├── [Content_Types].xml
└── lib
│ └── net40
│ ├── Nancy.Hosting.Self.dll
│ └── Nancy.Hosting.Self.xml
├── Nancy.Testing.1.2.0
├── Nancy.Testing.1.2.0.nupkg
├── [Content_Types].xml
└── lib
│ └── net40
│ ├── Nancy.Testing.dll
│ └── Nancy.Testing.xml
├── mongocsharpdriver.2.0.0
├── License.rtf
├── [Content_Types].xml
├── lib
│ └── net45
│ │ ├── MongoDB.Driver.Legacy.XML
│ │ └── MongoDB.Driver.Legacy.dll
└── mongocsharpdriver.2.0.0.nupkg
├── repositories.config
├── xunit.2.0.0
├── [Content_Types].xml
└── xunit.2.0.0.nupkg
├── xunit.abstractions.2.0.0
├── [Content_Types].xml
├── lib
│ ├── net35
│ │ ├── xunit.abstractions.dll
│ │ └── xunit.abstractions.xml
│ └── portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS
│ │ ├── xunit.abstractions.dll
│ │ └── xunit.abstractions.xml
└── xunit.abstractions.2.0.0.nupkg
├── xunit.assert.2.0.0
├── [Content_Types].xml
├── lib
│ └── portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS
│ │ ├── xunit.assert.dll
│ │ ├── xunit.assert.pdb
│ │ └── xunit.assert.xml
└── xunit.assert.2.0.0.nupkg
├── xunit.core.2.0.0
├── [Content_Types].xml
├── build
│ ├── Xamarin.iOS
│ │ ├── xunit.core.props
│ │ └── xunit.execution.iOS-Universal.dll
│ ├── _Desktop
│ │ └── xunit.execution.desktop.dll
│ ├── monoandroid
│ │ ├── xunit.core.props
│ │ └── xunit.execution.MonoAndroid.dll
│ ├── monotouch
│ │ ├── xunit.core.props
│ │ └── xunit.execution.MonoTouch.dll
│ ├── portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS
│ │ └── xunit.core.props
│ ├── portable-win81+wpa81
│ │ ├── xunit.core.props
│ │ ├── xunit.core.targets
│ │ ├── xunit.execution.universal.dll
│ │ └── xunit.execution.universal.pri
│ ├── win8
│ │ ├── xunit.core.props
│ │ ├── xunit.core.targets
│ │ └── xunit.execution.win8.dll
│ └── wp8
│ │ ├── xunit.core.props
│ │ ├── xunit.core.targets
│ │ └── xunit.execution.wp8.dll
└── xunit.core.2.0.0.nupkg
└── xunit.extensibility.core.2.0.0
├── [Content_Types].xml
├── lib
└── portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS
│ ├── xunit.core.dll
│ ├── xunit.core.dll.tdnet
│ ├── xunit.core.pdb
│ ├── xunit.core.xml
│ ├── xunit.runner.tdnet.dll
│ └── xunit.runner.utility.desktop.dll
└── xunit.extensibility.core.2.0.0.nupkg
/.gitignore:
--------------------------------------------------------------------------------
1 | [Bb]in
2 | [Oo]bj
3 | *.suo
4 | *.user
5 | *ReSharper*
6 | *dotCover*
7 |
--------------------------------------------------------------------------------
/.nuget/NuGet.Config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/.nuget/NuGet.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/.nuget/NuGet.exe
--------------------------------------------------------------------------------
/.nuget/NuGet.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | $(MSBuildProjectDirectory)\..\
5 |
6 |
7 | false
8 |
9 |
10 | false
11 |
12 |
13 | false
14 |
15 |
16 |
17 |
18 |
22 |
23 |
24 |
25 |
26 | $([System.IO.Path]::Combine($(SolutionDir), ".nuget"))
27 | $([System.IO.Path]::Combine($(ProjectDir), "packages.config"))
28 | $([System.IO.Path]::Combine($(SolutionDir), "packages"))
29 |
30 |
31 |
32 |
33 | $(SolutionDir).nuget
34 | packages.config
35 | $(SolutionDir)packages
36 |
37 |
38 |
39 |
40 | $(NuGetToolsPath)\nuget.exe
41 | @(PackageSource)
42 |
43 | "$(NuGetExePath)"
44 | mono --runtime=v4.0.30319 $(NuGetExePath)
45 |
46 | $(TargetDir.Trim('\\'))
47 |
48 |
49 | $(NuGetCommand) install "$(PackagesConfig)" -source "$(PackageSources)" -o "$(PackagesDir)"
50 | $(NuGetCommand) pack "$(ProjectPath)" -p Configuration=$(Configuration) -o "$(PackageOutputDir)" -symbols
51 |
52 |
53 |
54 | RestorePackages;
55 | $(BuildDependsOn);
56 |
57 |
58 |
59 |
60 | $(BuildDependsOn);
61 | BuildPackage;
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
75 |
76 |
79 |
80 |
81 |
82 |
84 |
85 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
117 |
118 |
119 |
120 |
121 |
122 |
123 |
124 |
125 |
126 |
127 |
128 |
129 |
136 |
137 |
138 |
139 |
--------------------------------------------------------------------------------
/ShortUrl.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 2012
4 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ShortUrlTest", "ShortUrlTest\ShortUrlTest.csproj", "{8396657E-23FB-403F-AA46-C05DB6402B1B}"
5 | EndProject
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ShortUrl", "ShortUrl\ShortUrl.csproj", "{CBF3CC93-1A13-4F53-A7FD-18DE3C848550}"
7 | EndProject
8 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ShortUrlWebApp", "ShortUrlWebApp\ShortUrlWebApp.csproj", "{036F3F5D-BC1A-4BE5-8620-FCEDDFF361E3}"
9 | EndProject
10 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ShortUrlDesktopApp", "ShortUrlDesktopApp\ShortUrlDesktopApp.csproj", "{680616BD-BA76-4B60-B18B-9B593DFA8E44}"
11 | EndProject
12 | Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".nuget", ".nuget", "{F2CBB944-1ABF-4AB6-9F8B-468E16738B19}"
13 | ProjectSection(SolutionItems) = preProject
14 | .nuget\NuGet.exe = .nuget\NuGet.exe
15 | .nuget\NuGet.targets = .nuget\NuGet.targets
16 | EndProjectSection
17 | EndProject
18 | Global
19 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
20 | Debug|Any CPU = Debug|Any CPU
21 | Debug|Mixed Platforms = Debug|Mixed Platforms
22 | Debug|x86 = Debug|x86
23 | Release|Any CPU = Release|Any CPU
24 | Release|Mixed Platforms = Release|Mixed Platforms
25 | Release|x86 = Release|x86
26 | EndGlobalSection
27 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
28 | {036F3F5D-BC1A-4BE5-8620-FCEDDFF361E3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
29 | {036F3F5D-BC1A-4BE5-8620-FCEDDFF361E3}.Debug|Any CPU.Build.0 = Debug|Any CPU
30 | {036F3F5D-BC1A-4BE5-8620-FCEDDFF361E3}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
31 | {036F3F5D-BC1A-4BE5-8620-FCEDDFF361E3}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
32 | {036F3F5D-BC1A-4BE5-8620-FCEDDFF361E3}.Debug|x86.ActiveCfg = Debug|Any CPU
33 | {036F3F5D-BC1A-4BE5-8620-FCEDDFF361E3}.Release|Any CPU.ActiveCfg = Release|Any CPU
34 | {036F3F5D-BC1A-4BE5-8620-FCEDDFF361E3}.Release|Any CPU.Build.0 = Release|Any CPU
35 | {036F3F5D-BC1A-4BE5-8620-FCEDDFF361E3}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
36 | {036F3F5D-BC1A-4BE5-8620-FCEDDFF361E3}.Release|Mixed Platforms.Build.0 = Release|Any CPU
37 | {036F3F5D-BC1A-4BE5-8620-FCEDDFF361E3}.Release|x86.ActiveCfg = Release|Any CPU
38 | {680616BD-BA76-4B60-B18B-9B593DFA8E44}.Debug|Any CPU.ActiveCfg = Debug|x86
39 | {680616BD-BA76-4B60-B18B-9B593DFA8E44}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
40 | {680616BD-BA76-4B60-B18B-9B593DFA8E44}.Debug|Mixed Platforms.Build.0 = Debug|x86
41 | {680616BD-BA76-4B60-B18B-9B593DFA8E44}.Debug|x86.ActiveCfg = Debug|x86
42 | {680616BD-BA76-4B60-B18B-9B593DFA8E44}.Debug|x86.Build.0 = Debug|x86
43 | {680616BD-BA76-4B60-B18B-9B593DFA8E44}.Release|Any CPU.ActiveCfg = Release|x86
44 | {680616BD-BA76-4B60-B18B-9B593DFA8E44}.Release|Mixed Platforms.ActiveCfg = Release|x86
45 | {680616BD-BA76-4B60-B18B-9B593DFA8E44}.Release|Mixed Platforms.Build.0 = Release|x86
46 | {680616BD-BA76-4B60-B18B-9B593DFA8E44}.Release|x86.ActiveCfg = Release|x86
47 | {680616BD-BA76-4B60-B18B-9B593DFA8E44}.Release|x86.Build.0 = Release|x86
48 | {8396657E-23FB-403F-AA46-C05DB6402B1B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
49 | {8396657E-23FB-403F-AA46-C05DB6402B1B}.Debug|Any CPU.Build.0 = Debug|Any CPU
50 | {8396657E-23FB-403F-AA46-C05DB6402B1B}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
51 | {8396657E-23FB-403F-AA46-C05DB6402B1B}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
52 | {8396657E-23FB-403F-AA46-C05DB6402B1B}.Debug|x86.ActiveCfg = Debug|Any CPU
53 | {8396657E-23FB-403F-AA46-C05DB6402B1B}.Release|Any CPU.ActiveCfg = Release|Any CPU
54 | {8396657E-23FB-403F-AA46-C05DB6402B1B}.Release|Any CPU.Build.0 = Release|Any CPU
55 | {8396657E-23FB-403F-AA46-C05DB6402B1B}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
56 | {8396657E-23FB-403F-AA46-C05DB6402B1B}.Release|Mixed Platforms.Build.0 = Release|Any CPU
57 | {8396657E-23FB-403F-AA46-C05DB6402B1B}.Release|x86.ActiveCfg = Release|Any CPU
58 | {CBF3CC93-1A13-4F53-A7FD-18DE3C848550}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
59 | {CBF3CC93-1A13-4F53-A7FD-18DE3C848550}.Debug|Any CPU.Build.0 = Debug|Any CPU
60 | {CBF3CC93-1A13-4F53-A7FD-18DE3C848550}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
61 | {CBF3CC93-1A13-4F53-A7FD-18DE3C848550}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
62 | {CBF3CC93-1A13-4F53-A7FD-18DE3C848550}.Debug|x86.ActiveCfg = Debug|Any CPU
63 | {CBF3CC93-1A13-4F53-A7FD-18DE3C848550}.Release|Any CPU.ActiveCfg = Release|Any CPU
64 | {CBF3CC93-1A13-4F53-A7FD-18DE3C848550}.Release|Any CPU.Build.0 = Release|Any CPU
65 | {CBF3CC93-1A13-4F53-A7FD-18DE3C848550}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
66 | {CBF3CC93-1A13-4F53-A7FD-18DE3C848550}.Release|Mixed Platforms.Build.0 = Release|Any CPU
67 | {CBF3CC93-1A13-4F53-A7FD-18DE3C848550}.Release|x86.ActiveCfg = Release|Any CPU
68 | EndGlobalSection
69 | GlobalSection(SolutionProperties) = preSolution
70 | HideSolutionNode = FALSE
71 | EndGlobalSection
72 | EndGlobal
73 |
--------------------------------------------------------------------------------
/ShortUrl/Bootstrapper.cs:
--------------------------------------------------------------------------------
1 | namespace ShortUrl
2 | {
3 | using System.Reflection;
4 | using Nancy;
5 | using Nancy.Bootstrapper;
6 | using Nancy.ViewEngines;
7 | using DataAccess;
8 | using Nancy.TinyIoc;
9 |
10 | public class Bootstrapper : DefaultNancyBootstrapper
11 | {
12 | protected override void ConfigureApplicationContainer(TinyIoCContainer container)
13 | {
14 | base.ConfigureApplicationContainer(container);
15 |
16 | var mongoUrlStore = new MongoUrlStore("mongodb://localhost:27010/");
17 | container.Register(mongoUrlStore);
18 | }
19 |
20 | protected override NancyInternalConfiguration InternalConfiguration
21 | {
22 | get
23 | {
24 | ResourceViewLocationProvider.RootNamespaces[Assembly.GetAssembly(this.GetType())] = "ShortUrl";
25 | return NancyInternalConfiguration
26 | .WithOverrides(x => x.ViewLocationProvider = typeof(ResourceViewLocationProvider));
27 | }
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/ShortUrl/DataAccess/MongoUrlStore.cs:
--------------------------------------------------------------------------------
1 | namespace ShortUrl.DataAccess
2 | {
3 | using System.Threading;
4 | using MongoDB.Bson;
5 | using MongoDB.Driver;
6 |
7 | public class MongoUrlStore : UrlStore
8 | {
9 | private IMongoDatabase database;
10 | private IMongoCollection urls;
11 |
12 | public MongoUrlStore(string connectionString)
13 | {
14 | database = new MongoClient(connectionString).GetDatabase("short_url");
15 | urls = database.GetCollection("urls");
16 | }
17 |
18 | public void SaveUrl(string url, string shortenedUrl)
19 | {
20 | var newDoc = new BsonDocument {{"Id", url}, { "url", url }, { "shortenedUrl", shortenedUrl} };
21 | urls.InsertOneAsync(newDoc, CancellationToken.None);
22 | }
23 |
24 | public string GetUrlFor(string shortenedUrl)
25 | {
26 | var urlDocument =
27 | urls
28 | .Find(Builders.Filter.Eq("shortenedUrl", shortenedUrl))
29 | .FirstOrDefaultAsync()
30 | .Result;
31 |
32 | return
33 | urlDocument == null ?
34 | null : urlDocument["url"].AsString;
35 | }
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/ShortUrl/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("ShortUrl")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("Microsoft")]
12 | [assembly: AssemblyProduct("ShortUrl")]
13 | [assembly: AssemblyCopyright("Copyright © Microsoft 2011")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("0efb1532-2ff2-4f14-a74b-6e2baa9eba05")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/ShortUrl/ShortUrl.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Debug
5 | AnyCPU
6 | 8.0.30703
7 | 2.0
8 | {CBF3CC93-1A13-4F53-A7FD-18DE3C848550}
9 | Library
10 | Properties
11 | ShortUrl
12 | ShortUrl
13 | v4.6
14 | 512
15 | ..\
16 | true
17 |
18 |
19 |
20 | true
21 | full
22 | false
23 | bin\Debug\
24 | DEBUG;TRACE
25 | prompt
26 | 4
27 | false
28 |
29 |
30 | pdbonly
31 | true
32 | bin\Release\
33 | TRACE
34 | prompt
35 | 4
36 | false
37 |
38 |
39 |
40 | ..\packages\MongoDB.Bson.2.0.0\lib\net45\MongoDB.Bson.dll
41 | True
42 |
43 |
44 | ..\packages\MongoDB.Driver.2.0.0\lib\net45\MongoDB.Driver.dll
45 | True
46 |
47 |
48 | ..\packages\MongoDB.Driver.Core.2.0.0\lib\net45\MongoDB.Driver.Core.dll
49 | True
50 |
51 |
52 | ..\packages\mongocsharpdriver.2.0.0\lib\net45\MongoDB.Driver.Legacy.dll
53 | True
54 |
55 |
56 | ..\packages\Nancy.1.2.0\lib\net40\Nancy.dll
57 | True
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 | Always
77 |
78 |
79 |
80 |
81 | Always
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
96 |
--------------------------------------------------------------------------------
/ShortUrl/ShortUrlModule.cs:
--------------------------------------------------------------------------------
1 | namespace ShortUrl
2 | {
3 | using Nancy;
4 | using Nancy.Responses.Negotiation;
5 |
6 | public class ShortUrlModule : NancyModule
7 | {
8 | public ShortUrlModule(UrlStore urlStore)
9 | {
10 | Get["/"] = _ => View["index.html"];
11 | Post["/"] = _ => ShortenUrl(urlStore);
12 | Get["/{shorturl}"] = param =>
13 | {
14 | string shortUrl = param.shorturl;
15 | return Response.AsRedirect(urlStore.GetUrlFor(shortUrl.ToString()));
16 | };
17 | }
18 |
19 | private Negotiator ShortenUrl(UrlStore urlStore)
20 | {
21 | string longUrl = Request.Form.url;
22 | var shortUrl = ShortenUrl(longUrl);
23 | urlStore.SaveUrl(longUrl, shortUrl);
24 |
25 | return View["shortened_url", new { Request.Headers.Host, ShortUrl = shortUrl }];
26 | }
27 |
28 | private string ShortenUrl(string longUrl)
29 | {
30 | return longUrl.GetHashCode().ToString();
31 | }
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/ShortUrl/UrlStore.cs:
--------------------------------------------------------------------------------
1 | namespace ShortUrl
2 | {
3 | public interface UrlStore
4 | {
5 | void SaveUrl(string url, string shortenedUrl);
6 | string GetUrlFor(string shortenedUrl);
7 | }
8 | }
--------------------------------------------------------------------------------
/ShortUrl/Views/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 |
10 |
--------------------------------------------------------------------------------
/ShortUrl/Views/shortened_url.sshtml:
--------------------------------------------------------------------------------
1 |
2 |
3 | http://@Model.Host/@Model.ShortUrl
4 |
5 |
--------------------------------------------------------------------------------
/ShortUrl/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/ShortUrlDesktopApp/Program.cs:
--------------------------------------------------------------------------------
1 | namespace ShortUrlDesktopApp
2 | {
3 | using System;
4 | using Nancy.Hosting.Self;
5 | using ShortUrl;
6 |
7 | class Program
8 | {
9 | static void Main(string[] args)
10 | {
11 | ShortUrlModule artificiaReference;
12 | var nancyHost = new NancyHost(new Uri("http://localhost:8080/"));
13 | nancyHost.Start();
14 |
15 | Console.ReadKey();
16 |
17 | nancyHost.Stop();
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/ShortUrlDesktopApp/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("ShortUrlDesktopApp")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("Microsoft")]
12 | [assembly: AssemblyProduct("ShortUrlDesktopApp")]
13 | [assembly: AssemblyCopyright("Copyright © Microsoft 2011")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("dfc33744-591a-4d54-b401-e606b9b4dd08")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/ShortUrlDesktopApp/ShortUrlDesktopApp.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Debug
5 | x86
6 | 8.0.30703
7 | 2.0
8 | {680616BD-BA76-4B60-B18B-9B593DFA8E44}
9 | Exe
10 | Properties
11 | ShortUrlDesktopApp
12 | ShortUrlDesktopApp
13 | v4.6
14 |
15 |
16 | 512
17 |
18 |
19 | x86
20 | true
21 | full
22 | false
23 | bin\Debug\
24 | DEBUG;TRACE
25 | prompt
26 | 4
27 | false
28 |
29 |
30 | x86
31 | pdbonly
32 | true
33 | bin\Release\
34 | TRACE
35 | prompt
36 | 4
37 | false
38 |
39 |
40 |
41 | ..\packages\Nancy.1.2.0\lib\net40\Nancy.dll
42 | True
43 |
44 |
45 | ..\packages\Nancy.Hosting.Self.1.2.0\lib\net40\Nancy.Hosting.Self.dll
46 | True
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 | {CBF3CC93-1A13-4F53-A7FD-18DE3C848550}
63 | ShortUrl
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
78 |
--------------------------------------------------------------------------------
/ShortUrlDesktopApp/app.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/ShortUrlDesktopApp/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/ShortUrlTest/BaseUrlSpec.cs:
--------------------------------------------------------------------------------
1 | namespace ShortUrlTest
2 | {
3 | using System.Linq;
4 | using Nancy;
5 | using Nancy.Testing;
6 | using ShortUrl;
7 | using Xunit;
8 |
9 | public class BaseUrlSpec
10 | {
11 | private Browser app;
12 |
13 | public BaseUrlSpec()
14 | {
15 | app = new Browser(new Bootstrapper());
16 | }
17 |
18 | [Fact]
19 | public void should_respond_ok()
20 | {
21 | var response = app.Get("/", with => with.HttpRequest());
22 | var statusCode = response.StatusCode;
23 | Assert.Equal(HttpStatusCode.OK, statusCode);
24 | }
25 |
26 | [Fact]
27 | public void should_contain_a_form_with_an_input_field_for_a_url_and_a_button()
28 | {
29 | //when
30 | var baseUrlGetResponse = app.Get("/", with => with.HttpRequest());
31 |
32 | //then
33 | baseUrlGetResponse.Body["form"]
34 | .ShouldExist();
35 |
36 | baseUrlGetResponse.Body["input#url"]
37 | .ShouldExistOnce();
38 |
39 | baseUrlGetResponse.Body["label"]
40 | .ShouldExistOnce().And
41 | .ShouldContain("Url: ");
42 |
43 | baseUrlGetResponse.Body["input#submit"]
44 | .ShouldExistOnce();
45 | }
46 |
47 | [Fact]
48 | public void should_return_shortened_url_when_posting_url()
49 | {
50 | //when
51 | var baseUrlPostResponse = app.Post("/",
52 | with =>
53 | {
54 | with.FormValue("url", "http://www.longurlplease.com/");
55 | with.HttpRequest();
56 | });
57 |
58 | baseUrlPostResponse.Body["a#shorturl"]
59 | .ShouldExist().And
60 | .ShouldContain("http://");
61 | }
62 |
63 | [Fact]
64 | public void should_redirect_to_original_url_when_getting_short_url()
65 | {
66 | //when
67 | var baseUrlPostResponse = app.Post("/",
68 | with =>
69 | {
70 | with.FormValue("url", "http://www.longurlplease.com/");
71 | with.HttpRequest();
72 | }).GetBodyAsXml();
73 |
74 | var shortUrl = baseUrlPostResponse
75 | .Element("html").Element("body").Element("a")
76 | .Attribute("href").Value
77 | .Split('/')
78 | .Last();
79 |
80 | //then
81 | app.Get("/" + shortUrl, with => with.HttpRequest())
82 | .ShouldHaveRedirectedTo("http://www.longurlplease.com/");
83 | }
84 | }
85 | }
86 |
--------------------------------------------------------------------------------
/ShortUrlTest/BrowserResponseExtensions.cs:
--------------------------------------------------------------------------------
1 | namespace ShortUrlTest
2 | {
3 | using System.IO;
4 | using System.Xml.Linq;
5 | using Nancy.Testing;
6 |
7 | public static class BrowserResponseExtensions
8 | {
9 | public static XDocument GetBodyAsXml(this BrowserResponse response)
10 | {
11 | using (var contentsStream = new MemoryStream())
12 | {
13 | response.Context.Response.Contents.Invoke(contentsStream);
14 | contentsStream.Position = 0;
15 | return XDocument.Load(contentsStream);
16 | }
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/ShortUrlTest/MongoUrlStoreTest.cs:
--------------------------------------------------------------------------------
1 | namespace ShortUrlTest
2 | {
3 | using System.Threading.Tasks;
4 | using MongoDB.Bson;
5 | using MongoDB.Driver;
6 | using ShortUrl.DataAccess;
7 | using Xunit;
8 |
9 | public class MongoUrlStoreTest
10 | {
11 | private string connectionString = "mongodb://localhost:27010/short_url_test";
12 | private IMongoDatabase database;
13 | private IMongoCollection urlCollection;
14 |
15 | public MongoUrlStoreTest()
16 | {
17 | //given
18 | this.database = new MongoClient(this.connectionString).GetDatabase("short_url");
19 | this.urlCollection = this.database.GetCollection("urls");
20 | }
21 |
22 | [Fact]
23 | public async Task should_store_urls_in_mongo()
24 | {
25 | //when
26 | var store = new MongoUrlStore(this.connectionString);
27 | store.SaveUrl("http://somelongurl.com/", "http://shorturl/abc");
28 |
29 | //then
30 | var urlFromDB = await this.urlCollection
31 | .Find(Builders.Filter.Eq("url", "http://somelongurl.com/"))
32 | .FirstOrDefaultAsync();
33 |
34 | Assert.NotNull(urlFromDB);
35 | Assert.Equal(urlFromDB["shortenedUrl"], "http://shorturl/abc");
36 | }
37 |
38 | [Fact]
39 | public void should_be_able_to_find_shortened_urls()
40 | {
41 | //given
42 | var store = new MongoUrlStore(this.connectionString);
43 | store.SaveUrl("http://somelongurl.com/", "http://shorturl/abc");
44 |
45 | //when
46 | var longUrl = store.GetUrlFor("http://shorturl/abc");
47 |
48 | //then
49 | Assert.Equal("http://somelongurl.com/", longUrl);
50 | }
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/ShortUrlTest/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("ShortUrlTest")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("Microsoft")]
12 | [assembly: AssemblyProduct("ShortUrlTest")]
13 | [assembly: AssemblyCopyright("Copyright © Microsoft 2011")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("6ff66d36-ddeb-407b-b4be-0daddf39628c")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/ShortUrlTest/ShortUrlTest.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | 8.0.30703
8 | 2.0
9 | {8396657E-23FB-403F-AA46-C05DB6402B1B}
10 | Library
11 | Properties
12 | ShortUrlTest
13 | ShortUrlTest
14 | v4.6
15 | 512
16 | ..\
17 | true
18 |
19 |
20 |
21 |
22 |
23 | true
24 | full
25 | false
26 | bin\Debug\
27 | DEBUG;TRACE
28 | prompt
29 | 4
30 | false
31 |
32 |
33 | pdbonly
34 | true
35 | bin\Release\
36 | TRACE
37 | prompt
38 | 4
39 | false
40 |
41 |
42 |
43 | ..\packages\CsQuery.1.3.4\lib\net40\CsQuery.dll
44 | True
45 |
46 |
47 | ..\packages\Nancy.Testing.0.11.0\lib\net40\HtmlAgilityPack.dll
48 |
49 |
50 | ..\packages\Nancy.Testing.0.11.0\lib\net40\HtmlAgilityPlus.dll
51 |
52 |
53 | ..\packages\MongoDB.Bson.2.0.0\lib\net45\MongoDB.Bson.dll
54 | True
55 |
56 |
57 | ..\packages\MongoDB.Driver.2.0.0\lib\net45\MongoDB.Driver.dll
58 | True
59 |
60 |
61 | ..\packages\MongoDB.Driver.Core.2.0.0\lib\net45\MongoDB.Driver.Core.dll
62 | True
63 |
64 |
65 | ..\packages\mongocsharpdriver.2.0.0\lib\net45\MongoDB.Driver.Legacy.dll
66 | True
67 |
68 |
69 | ..\packages\Moq.4.2.1502.0911\lib\net40\Moq.dll
70 | True
71 |
72 |
73 | ..\packages\Nancy.1.2.0\lib\net40\Nancy.dll
74 | True
75 |
76 |
77 | ..\packages\Nancy.Testing.1.2.0\lib\net40\Nancy.Testing.dll
78 | True
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 | ..\packages\xunit.abstractions.2.0.0\lib\net35\xunit.abstractions.dll
89 | True
90 |
91 |
92 | ..\packages\xunit.assert.2.0.0\lib\portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS\xunit.assert.dll
93 | True
94 |
95 |
96 | ..\packages\xunit.extensibility.core.2.0.0\lib\portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS\xunit.core.dll
97 | True
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 |
110 |
111 |
112 |
113 | {CBF3CC93-1A13-4F53-A7FD-18DE3C848550}
114 | ShortUrl
115 |
116 |
117 |
118 |
119 |
120 |
121 | This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.
122 |
123 |
124 |
125 |
132 |
--------------------------------------------------------------------------------
/ShortUrlTest/UrlStorageTest.cs:
--------------------------------------------------------------------------------
1 | namespace ShortUrlTest
2 | {
3 | using Xunit;
4 | using Nancy.Testing;
5 | using Moq;
6 | using ShortUrl;
7 |
8 | public class UrlStorageTest
9 | {
10 | private Browser app;
11 | private Mock fakeStorage;
12 |
13 | public UrlStorageTest()
14 | {
15 | ShortUrlModule artificiaReference;
16 |
17 | //Given
18 | fakeStorage = new Mock();
19 | app = new Browser(
20 | new ConfigurableBootstrapper(
21 | with => with.Dependency(fakeStorage.Object)));
22 |
23 | }
24 |
25 | [Fact]
26 | public void app_should_store_url_when_one_is_posted()
27 | {
28 | //When
29 | app.Post("/",
30 | with =>
31 | {
32 | with.FormValue("url", "http://www.longurlplease.com/");
33 | with.HttpRequest();
34 | });
35 |
36 | //Then
37 | fakeStorage
38 | .Verify(store =>
39 | store.SaveUrl("http://www.longurlplease.com/",
40 | It.IsAny()));
41 | }
42 |
43 | [Fact]
44 | public void app_should_try_to_retrieve_url_when_getting_a_short_url()
45 | {
46 | //When
47 | app.Get("/shorturl",
48 | with => with.HttpRequest());
49 |
50 | //Then
51 | fakeStorage
52 | .Verify(store =>
53 | store.GetUrlFor("shorturl"));
54 | }
55 | }
56 | }
57 |
--------------------------------------------------------------------------------
/ShortUrlTest/app.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/ShortUrlTest/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/ShortUrlWebApp/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("ShortUrlWebApp")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("Microsoft")]
12 | [assembly: AssemblyProduct("ShortUrlWebApp")]
13 | [assembly: AssemblyCopyright("Copyright © Microsoft 2011")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("ba79783f-ba04-4601-9b3e-2321ff8841bb")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Revision and Build Numbers
33 | // by using the '*' as shown below:
34 | [assembly: AssemblyVersion("1.0.0.0")]
35 | [assembly: AssemblyFileVersion("1.0.0.0")]
36 |
--------------------------------------------------------------------------------
/ShortUrlWebApp/ShortUrlWebApp.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 |
8 |
9 | 2.0
10 | {036F3F5D-BC1A-4BE5-8620-FCEDDFF361E3}
11 | {349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}
12 | Library
13 | Properties
14 | ShortUrlWebApp
15 | ShortUrlWebApp
16 | v4.6
17 | false
18 |
19 |
20 |
21 |
22 | 4.0
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 | true
32 | full
33 | false
34 | bin\
35 | DEBUG;TRACE
36 | prompt
37 | 4
38 | false
39 |
40 |
41 | pdbonly
42 | true
43 | bin\
44 | TRACE
45 | prompt
46 | 4
47 | false
48 |
49 |
50 |
51 |
52 | ..\packages\Nancy.1.2.0\lib\net40\Nancy.dll
53 | True
54 |
55 |
56 | ..\packages\Nancy.Hosting.Aspnet.1.2.0\lib\net40\Nancy.Hosting.Aspnet.dll
57 | True
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 | Web.config
78 |
79 |
80 | Web.config
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 | {CBF3CC93-1A13-4F53-A7FD-18DE3C848550}
89 | ShortUrl
90 |
91 |
92 |
93 |
94 |
95 |
96 | 10.0
97 | $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 | False
107 | True
108 | 60419
109 | /
110 |
111 |
112 | False
113 | False
114 |
115 |
116 | False
117 |
118 |
119 |
120 |
121 |
128 |
--------------------------------------------------------------------------------
/ShortUrlWebApp/Web.Debug.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
17 |
18 |
29 |
30 |
--------------------------------------------------------------------------------
/ShortUrlWebApp/Web.Release.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
17 |
18 |
19 |
30 |
31 |
--------------------------------------------------------------------------------
/ShortUrlWebApp/Web.config:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/ShortUrlWebApp/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/packages/CsQuery.1.3.4/CsQuery.1.3.4.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/CsQuery.1.3.4/CsQuery.1.3.4.nupkg
--------------------------------------------------------------------------------
/packages/CsQuery.1.3.4/[Content_Types].xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/CsQuery.1.3.4/lib/net40/CsQuery.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/CsQuery.1.3.4/lib/net40/CsQuery.dll
--------------------------------------------------------------------------------
/packages/MongoDB.Bson.2.0.0/License.rtf:
--------------------------------------------------------------------------------
1 | {\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fmodern\fprq1\fcharset0 Courier New;}{\f1\fswiss\fprq2\fcharset0 Calibri;}}
2 | {\colortbl ;\red0\green0\blue255;}
3 | {\*\generator Riched20 6.2.9200}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1
4 | \pard\widctlpar\f0\fs20 Copyright 2010-2014 MongoDB Inc.\par
5 | \par
6 | Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at\par
7 | \par
8 | {{\field{\*\fldinst{HYPERLINK http://www.apache.org/licenses/LICENSE-2.0 }}{\fldrslt{http://www.apache.org/licenses/LICENSE-2.0\ul0\cf0}}}}\f0\fs20\par
9 | \par
10 | Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.\par
11 |
12 | \pard\widctlpar\sa200\sl276\slmult1\f1\fs22\par
13 | }
14 |
--------------------------------------------------------------------------------
/packages/MongoDB.Bson.2.0.0/MongoDB.Bson.2.0.0.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/MongoDB.Bson.2.0.0/MongoDB.Bson.2.0.0.nupkg
--------------------------------------------------------------------------------
/packages/MongoDB.Bson.2.0.0/[Content_Types].xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/MongoDB.Bson.2.0.0/lib/net45/MongoDB.Bson.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/MongoDB.Bson.2.0.0/lib/net45/MongoDB.Bson.dll
--------------------------------------------------------------------------------
/packages/MongoDB.Driver.2.0.0/License.rtf:
--------------------------------------------------------------------------------
1 | {\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fmodern\fprq1\fcharset0 Courier New;}{\f1\fswiss\fprq2\fcharset0 Calibri;}}
2 | {\colortbl ;\red0\green0\blue255;}
3 | {\*\generator Riched20 6.2.9200}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1
4 | \pard\widctlpar\f0\fs20 Copyright 2010-2014 MongoDB Inc.\par
5 | \par
6 | Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at\par
7 | \par
8 | {{\field{\*\fldinst{HYPERLINK http://www.apache.org/licenses/LICENSE-2.0 }}{\fldrslt{http://www.apache.org/licenses/LICENSE-2.0\ul0\cf0}}}}\f0\fs20\par
9 | \par
10 | Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.\par
11 |
12 | \pard\widctlpar\sa200\sl276\slmult1\f1\fs22\par
13 | }
14 |
--------------------------------------------------------------------------------
/packages/MongoDB.Driver.2.0.0/MongoDB.Driver.2.0.0.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/MongoDB.Driver.2.0.0/MongoDB.Driver.2.0.0.nupkg
--------------------------------------------------------------------------------
/packages/MongoDB.Driver.2.0.0/[Content_Types].xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/MongoDB.Driver.2.0.0/lib/net45/MongoDB.Driver.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/MongoDB.Driver.2.0.0/lib/net45/MongoDB.Driver.dll
--------------------------------------------------------------------------------
/packages/MongoDB.Driver.Core.2.0.0/License.rtf:
--------------------------------------------------------------------------------
1 | {\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fmodern\fprq1\fcharset0 Courier New;}{\f1\fswiss\fprq2\fcharset0 Calibri;}}
2 | {\colortbl ;\red0\green0\blue255;}
3 | {\*\generator Riched20 6.2.9200}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1
4 | \pard\widctlpar\f0\fs20 Copyright 2010-2014 MongoDB Inc.\par
5 | \par
6 | Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at\par
7 | \par
8 | {{\field{\*\fldinst{HYPERLINK http://www.apache.org/licenses/LICENSE-2.0 }}{\fldrslt{http://www.apache.org/licenses/LICENSE-2.0\ul0\cf0}}}}\f0\fs20\par
9 | \par
10 | Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.\par
11 |
12 | \pard\widctlpar\sa200\sl276\slmult1\f1\fs22\par
13 | }
14 |
--------------------------------------------------------------------------------
/packages/MongoDB.Driver.Core.2.0.0/MongoDB.Driver.Core.2.0.0.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/MongoDB.Driver.Core.2.0.0/MongoDB.Driver.Core.2.0.0.nupkg
--------------------------------------------------------------------------------
/packages/MongoDB.Driver.Core.2.0.0/[Content_Types].xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/MongoDB.Driver.Core.2.0.0/lib/net45/MongoDB.Driver.Core.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/MongoDB.Driver.Core.2.0.0/lib/net45/MongoDB.Driver.Core.dll
--------------------------------------------------------------------------------
/packages/Moq.4.2.1502.0911/Moq.4.2.1502.911.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/Moq.4.2.1502.0911/Moq.4.2.1502.911.nupkg
--------------------------------------------------------------------------------
/packages/Moq.4.2.1502.0911/[Content_Types].xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/Moq.4.2.1502.0911/lib/net35/Moq.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/Moq.4.2.1502.0911/lib/net35/Moq.dll
--------------------------------------------------------------------------------
/packages/Moq.4.2.1502.0911/lib/net40/Moq.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/Moq.4.2.1502.0911/lib/net40/Moq.dll
--------------------------------------------------------------------------------
/packages/Moq.4.2.1502.0911/lib/sl4/Moq.Silverlight.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/Moq.4.2.1502.0911/lib/sl4/Moq.Silverlight.dll
--------------------------------------------------------------------------------
/packages/Nancy.1.2.0/Nancy.1.2.0.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/Nancy.1.2.0/Nancy.1.2.0.nupkg
--------------------------------------------------------------------------------
/packages/Nancy.1.2.0/[Content_Types].xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/Nancy.1.2.0/lib/net40/Nancy.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/Nancy.1.2.0/lib/net40/Nancy.dll
--------------------------------------------------------------------------------
/packages/Nancy.Hosting.Aspnet.1.2.0/Nancy.Hosting.Aspnet.1.2.0.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/Nancy.Hosting.Aspnet.1.2.0/Nancy.Hosting.Aspnet.1.2.0.nupkg
--------------------------------------------------------------------------------
/packages/Nancy.Hosting.Aspnet.1.2.0/[Content_Types].xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/Nancy.Hosting.Aspnet.1.2.0/content/web.config.transform:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/packages/Nancy.Hosting.Aspnet.1.2.0/lib/net40/Nancy.Hosting.Aspnet.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/Nancy.Hosting.Aspnet.1.2.0/lib/net40/Nancy.Hosting.Aspnet.dll
--------------------------------------------------------------------------------
/packages/Nancy.Hosting.Aspnet.1.2.0/lib/net40/Nancy.Hosting.Aspnet.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Nancy.Hosting.Aspnet
5 |
6 |
7 |
8 |
9 | TinyIoC ASP.Net Bootstrapper
10 | No child container support because per-request is handled by the AsPerRequestSingleton option
11 |
12 |
13 |
14 |
15 | Gets the diagnostics for initialisation
16 |
17 | IDiagnostics implementation
18 |
19 |
20 |
21 | Gets all registered startup tasks
22 |
23 | An instance containing instances.
24 |
25 |
26 |
27 | Resolves all request startup tasks
28 |
29 | Container to use
30 | Types to register - not used
31 | An instance containing instances.
32 |
33 |
34 |
35 | Gets all registered application registration tasks
36 |
37 | An instance containing instances.
38 |
39 |
40 |
41 | Get all NancyModule implementation instances - should be multi-instance
42 |
43 | Current request context
44 | IEnumerable of INancyModule
45 |
46 |
47 |
48 | Retrieves a specific implementation - should be per-request lifetime
49 |
50 | Module type
51 | The current context
52 | The instance
53 |
54 |
55 |
56 | Creates and initializes the request pipelines.
57 |
58 | The used by the request.
59 | An instance.
60 |
61 |
62 |
63 | Configures the container using AutoRegister followed by registration
64 | of default INancyModuleCatalog and IRouteResolver.
65 |
66 | Container instance
67 |
68 |
69 |
70 | Resolve INancyEngine
71 |
72 | INancyEngine implementation
73 |
74 |
75 |
76 | Create a default, unconfigured, container
77 |
78 | Container instance
79 |
80 |
81 |
82 | Register the bootstrapper's implemented types into the container.
83 | This is necessary so a user can pass in a populated container but not have
84 | to take the responsibility of registering things like INancyModuleCatalog manually.
85 |
86 | Application container to register into
87 |
88 |
89 |
90 | Register the default implementations of internally used types into the container as singletons
91 |
92 | Container to register into
93 | Type registrations to register
94 |
95 |
96 |
97 | Register the various collections into the container as singletons to later be resolved
98 | by IEnumerable{Type} constructor dependencies.
99 |
100 | Container to register into
101 | Collection type registrations to register
102 |
103 |
104 |
105 | Register the given module types into the container
106 |
107 | Container to register into
108 | NancyModule types
109 |
110 |
111 |
112 | Register the given instances into the container
113 |
114 | Container to register into
115 | Instance registration types
116 |
117 |
118 |
119 | Gets all request startup tasks
120 |
121 |
122 |
123 |
124 | Bridges the communication between Nancy and ASP.NET based hosting.
125 |
126 |
127 |
128 |
129 | Initializes a new instance of the type for the specified .
130 |
131 | An instance, that should be used by the handler.
132 |
133 |
134 |
135 | Processes the ASP.NET request with Nancy.
136 |
137 | The of the request.
138 |
139 |
140 |
141 |
142 |
143 | Registers the dependency as per request lifetime
144 |
145 | Register options
146 | Register options
147 |
148 |
149 |
150 | Registers each item in the collection as per request lifetime
151 |
152 | Register options
153 | Register options
154 |
155 |
156 |
157 |
--------------------------------------------------------------------------------
/packages/Nancy.Hosting.Self.1.2.0/Nancy.Hosting.Self.1.2.0.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/Nancy.Hosting.Self.1.2.0/Nancy.Hosting.Self.1.2.0.nupkg
--------------------------------------------------------------------------------
/packages/Nancy.Hosting.Self.1.2.0/[Content_Types].xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/Nancy.Hosting.Self.1.2.0/lib/net40/Nancy.Hosting.Self.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/Nancy.Hosting.Self.1.2.0/lib/net40/Nancy.Hosting.Self.dll
--------------------------------------------------------------------------------
/packages/Nancy.Hosting.Self.1.2.0/lib/net40/Nancy.Hosting.Self.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Nancy.Hosting.Self
5 |
6 |
7 |
8 |
9 | A helper class that checks for a header against a list of headers that should be ignored
10 | when populating the headers of an object.
11 |
12 |
13 |
14 |
15 | Determines if a header is ignored when populating the headers of an
16 | object.
17 |
18 | The name of the header.
19 | true if the header is ignored; otherwise, false.
20 |
21 |
22 |
23 | Configuration for automatic url reservation creation
24 |
25 |
26 |
27 |
28 | Gets or sets a value indicating whether url reservations
29 | are automatically created when necessary.
30 | Defaults to false.
31 |
32 |
33 |
34 |
35 | Gets or sets a value for the user to use to create the url reservations for.
36 | Defaults to the "Everyone" group.
37 |
38 |
39 |
40 |
41 | Helpers for UAC
42 |
43 |
44 |
45 |
46 | Run an executable elevated
47 |
48 | File to execute
49 | Arguments to pass to the executable
50 | True if successful, false otherwise
51 |
52 |
53 |
54 | Host configuration for the self host
55 |
56 |
57 |
58 |
59 | Gets or sets a property that determines if localhost uris are
60 | rewritten to htp://+:port/ style uris to allow for listening on
61 | all ports, but requiring either a url reservation, or admin
62 | access
63 | Defaults to true.
64 |
65 |
66 |
67 |
68 | Configuration around automatically creating url reservations
69 |
70 |
71 |
72 |
73 | Gets or sets a property that determines if Transfer-Encoding: Chunked is allowed
74 | for the response instead of Content-Length (default: true).
75 |
76 |
77 |
78 |
79 | Gets or sets a property that provides a callback to be called
80 | if there's an unhandled exception in the self host.
81 | Note: this will *not* be called for normal nancy Exceptions
82 | that are handled by the Nancy handlers.
83 | Defaults to writing to debug out.
84 |
85 |
86 |
87 |
88 | Gets or sets a property that determines whether client certificates
89 | are enabled or not.
90 | When set to true the self host will request a client certificate if the
91 | request is running over SSL.
92 | Defaults to false.
93 |
94 |
95 |
96 |
97 | Gets or sets a property determining if base uri matching can fall back to just
98 | using Authority (Schema + Host + Port) as base uri if it cannot match anything in
99 | the known list. This should only be set to True if you have issues with port forwarding
100 | (e.g. on Azure).
101 |
102 |
103 |
104 |
105 | Allows to host Nancy server inside any application - console or windows service.
106 |
107 |
108 | NancyHost uses internally. Therefore, it requires full .net 4.0 profile (not client profile)
109 | to run. will launch a thread that will listen for requests and then process them. Each request is processed in
110 | its own execution thread. NancyHost needs in order to be used from another appdomain under
111 | mono. Working with AppDomains is necessary if you want to unload the dependencies that come with NancyHost.
112 |
113 |
114 |
115 |
116 | Initializes a new instance of the class for the specified .
117 | Uses the default configuration
118 |
119 | The s that the host will listen to.
120 |
121 |
122 |
123 | Initializes a new instance of the class for the specified .
124 | Uses the specified configuration.
125 |
126 | The s that the host will listen to.
127 | Configuration to use
128 |
129 |
130 |
131 | Initializes a new instance of the class for the specified , using
132 | the provided .
133 | Uses the default configuration
134 |
135 | The bootstrapper that should be used to handle the request.
136 | The s that the host will listen to.
137 |
138 |
139 |
140 | Initializes a new instance of the class for the specified , using
141 | the provided .
142 | Uses the specified configuration.
143 |
144 | The bootstrapper that should be used to handle the request.
145 | Configuration to use
146 | The s that the host will listen to.
147 |
148 |
149 |
150 | Initializes a new instance of the class for the specified , using
151 | the provided .
152 | Uses the default configuration
153 |
154 | The that the host will listen to.
155 | The bootstrapper that should be used to handle the request.
156 |
157 |
158 |
159 | Initializes a new instance of the class for the specified , using
160 | the provided .
161 | Uses the specified configuration.
162 |
163 | The that the host will listen to.
164 | The bootstrapper that should be used to handle the request.
165 | Configuration to use
166 |
167 |
168 |
169 | Stops the host if it is running.
170 |
171 |
172 |
173 |
174 | Start listening for incoming requests with the given configuration
175 |
176 |
177 |
178 |
179 | Stop listening for incoming requests.
180 |
181 |
182 |
183 |
184 | Executes NetSh commands
185 |
186 |
187 |
188 |
189 | Add a url reservation
190 |
191 | Url to add
192 | User to add the reservation for
193 | True if successful, false otherwise.
194 |
195 |
196 |
197 | Exception for when automatic address reservation creation fails.
198 | Provides the user with manual instructions.
199 |
200 |
201 |
202 |
203 | Gets a message that describes the current exception.
204 |
205 |
206 | The error message that explains the reason for the exception, or an empty string("").
207 |
208 | 1
209 |
210 |
211 |
212 | Extension methods for working with instances.
213 |
214 |
215 |
216 |
217 |
--------------------------------------------------------------------------------
/packages/Nancy.Testing.1.2.0/Nancy.Testing.1.2.0.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/Nancy.Testing.1.2.0/Nancy.Testing.1.2.0.nupkg
--------------------------------------------------------------------------------
/packages/Nancy.Testing.1.2.0/[Content_Types].xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/Nancy.Testing.1.2.0/lib/net40/Nancy.Testing.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/Nancy.Testing.1.2.0/lib/net40/Nancy.Testing.dll
--------------------------------------------------------------------------------
/packages/mongocsharpdriver.2.0.0/License.rtf:
--------------------------------------------------------------------------------
1 | {\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fmodern\fprq1\fcharset0 Courier New;}{\f1\fswiss\fprq2\fcharset0 Calibri;}}
2 | {\colortbl ;\red0\green0\blue255;}
3 | {\*\generator Riched20 6.2.9200}{\*\mmathPr\mnaryLim0\mdispDef1\mwrapIndent1440 }\viewkind4\uc1
4 | \pard\widctlpar\f0\fs20 Copyright 2010-2014 MongoDB Inc.\par
5 | \par
6 | Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at\par
7 | \par
8 | {{\field{\*\fldinst{HYPERLINK http://www.apache.org/licenses/LICENSE-2.0 }}{\fldrslt{http://www.apache.org/licenses/LICENSE-2.0\ul0\cf0}}}}\f0\fs20\par
9 | \par
10 | Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.\par
11 |
12 | \pard\widctlpar\sa200\sl276\slmult1\f1\fs22\par
13 | }
14 |
--------------------------------------------------------------------------------
/packages/mongocsharpdriver.2.0.0/[Content_Types].xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/mongocsharpdriver.2.0.0/lib/net45/MongoDB.Driver.Legacy.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/mongocsharpdriver.2.0.0/lib/net45/MongoDB.Driver.Legacy.dll
--------------------------------------------------------------------------------
/packages/mongocsharpdriver.2.0.0/mongocsharpdriver.2.0.0.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/mongocsharpdriver.2.0.0/mongocsharpdriver.2.0.0.nupkg
--------------------------------------------------------------------------------
/packages/repositories.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/packages/xunit.2.0.0/[Content_Types].xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/xunit.2.0.0/xunit.2.0.0.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/xunit.2.0.0/xunit.2.0.0.nupkg
--------------------------------------------------------------------------------
/packages/xunit.abstractions.2.0.0/[Content_Types].xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/xunit.abstractions.2.0.0/lib/net35/xunit.abstractions.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/xunit.abstractions.2.0.0/lib/net35/xunit.abstractions.dll
--------------------------------------------------------------------------------
/packages/xunit.abstractions.2.0.0/lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.abstractions.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/xunit.abstractions.2.0.0/lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.abstractions.dll
--------------------------------------------------------------------------------
/packages/xunit.abstractions.2.0.0/xunit.abstractions.2.0.0.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/xunit.abstractions.2.0.0/xunit.abstractions.2.0.0.nupkg
--------------------------------------------------------------------------------
/packages/xunit.assert.2.0.0/[Content_Types].xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/xunit.assert.2.0.0/lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/xunit.assert.2.0.0/lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.dll
--------------------------------------------------------------------------------
/packages/xunit.assert.2.0.0/lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/xunit.assert.2.0.0/lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.assert.pdb
--------------------------------------------------------------------------------
/packages/xunit.assert.2.0.0/xunit.assert.2.0.0.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/xunit.assert.2.0.0/xunit.assert.2.0.0.nupkg
--------------------------------------------------------------------------------
/packages/xunit.core.2.0.0/[Content_Types].xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/xunit.core.2.0.0/build/Xamarin.iOS/xunit.core.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | %(Filename)%(Extension)
6 | PreserveNewest
7 | False
8 |
9 |
10 |
--------------------------------------------------------------------------------
/packages/xunit.core.2.0.0/build/Xamarin.iOS/xunit.execution.iOS-Universal.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/xunit.core.2.0.0/build/Xamarin.iOS/xunit.execution.iOS-Universal.dll
--------------------------------------------------------------------------------
/packages/xunit.core.2.0.0/build/_Desktop/xunit.execution.desktop.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/xunit.core.2.0.0/build/_Desktop/xunit.execution.desktop.dll
--------------------------------------------------------------------------------
/packages/xunit.core.2.0.0/build/monoandroid/xunit.core.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | %(Filename)%(Extension)
6 | PreserveNewest
7 | False
8 |
9 |
10 |
--------------------------------------------------------------------------------
/packages/xunit.core.2.0.0/build/monoandroid/xunit.execution.MonoAndroid.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/xunit.core.2.0.0/build/monoandroid/xunit.execution.MonoAndroid.dll
--------------------------------------------------------------------------------
/packages/xunit.core.2.0.0/build/monotouch/xunit.core.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | %(Filename)%(Extension)
6 | PreserveNewest
7 | False
8 |
9 |
10 |
--------------------------------------------------------------------------------
/packages/xunit.core.2.0.0/build/monotouch/xunit.execution.MonoTouch.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/xunit.core.2.0.0/build/monotouch/xunit.execution.MonoTouch.dll
--------------------------------------------------------------------------------
/packages/xunit.core.2.0.0/build/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | %(Filename)%(Extension)
6 | PreserveNewest
7 | False
8 |
9 |
10 | xunit.execution.desktop.dll
11 | PreserveNewest
12 | False
13 |
14 |
15 |
--------------------------------------------------------------------------------
/packages/xunit.core.2.0.0/build/portable-win81+wpa81/xunit.core.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | %(Filename)%(Extension)
6 | PreserveNewest
7 | False
8 |
9 |
10 | xunit.execution.desktop.dll
11 | PreserveNewest
12 | False
13 |
14 |
15 |
--------------------------------------------------------------------------------
/packages/xunit.core.2.0.0/build/portable-win81+wpa81/xunit.core.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | xunit.execution.universal.dll
7 |
8 |
9 | xunit.execution.universal.pri
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/packages/xunit.core.2.0.0/build/portable-win81+wpa81/xunit.execution.universal.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/xunit.core.2.0.0/build/portable-win81+wpa81/xunit.execution.universal.dll
--------------------------------------------------------------------------------
/packages/xunit.core.2.0.0/build/portable-win81+wpa81/xunit.execution.universal.pri:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/xunit.core.2.0.0/build/portable-win81+wpa81/xunit.execution.universal.pri
--------------------------------------------------------------------------------
/packages/xunit.core.2.0.0/build/win8/xunit.core.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | %(Filename)%(Extension)
6 | PreserveNewest
7 | False
8 |
9 |
10 | xunit.execution.desktop.dll
11 | PreserveNewest
12 | False
13 |
14 |
15 |
--------------------------------------------------------------------------------
/packages/xunit.core.2.0.0/build/win8/xunit.core.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | xunit.execution.win8.dll
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/packages/xunit.core.2.0.0/build/win8/xunit.execution.win8.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/xunit.core.2.0.0/build/win8/xunit.execution.win8.dll
--------------------------------------------------------------------------------
/packages/xunit.core.2.0.0/build/wp8/xunit.core.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | %(Filename)%(Extension)
6 | PreserveNewest
7 | False
8 |
9 |
10 |
--------------------------------------------------------------------------------
/packages/xunit.core.2.0.0/build/wp8/xunit.core.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | xunit.execution.wp8.dll
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/packages/xunit.core.2.0.0/build/wp8/xunit.execution.wp8.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/xunit.core.2.0.0/build/wp8/xunit.execution.wp8.dll
--------------------------------------------------------------------------------
/packages/xunit.core.2.0.0/xunit.core.2.0.0.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/xunit.core.2.0.0/xunit.core.2.0.0.nupkg
--------------------------------------------------------------------------------
/packages/xunit.extensibility.core.2.0.0/[Content_Types].xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/xunit.extensibility.core.2.0.0/lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/xunit.extensibility.core.2.0.0/lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll
--------------------------------------------------------------------------------
/packages/xunit.extensibility.core.2.0.0/lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.dll.tdnet:
--------------------------------------------------------------------------------
1 |
2 | xUnit.net {0}.{1}.{2} build {3}
3 | xunit.runner.tdnet.dll
4 | Xunit.Runner.TdNet.TdNetRunner
5 |
--------------------------------------------------------------------------------
/packages/xunit.extensibility.core.2.0.0/lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/xunit.extensibility.core.2.0.0/lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.pdb
--------------------------------------------------------------------------------
/packages/xunit.extensibility.core.2.0.0/lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.core.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | xunit.core
5 |
6 |
7 |
8 |
9 | Rethrows an exception object without losing the existing stack trace information
10 |
11 | The exception to re-throw.
12 |
13 | For more information on this technique, see
14 | http://www.dotnetjunkies.com/WebLog/chris.taylor/archive/2004/03/03/8353.aspx.
15 | The remote_stack_trace string is here to support Mono.
16 |
17 |
18 |
19 |
20 | Unwraps an exception to remove any wrappers, like .
21 |
22 | The exception to unwrap.
23 | The unwrapped exception.
24 |
25 |
26 |
27 | Guard class, used for guard clauses and argument validation
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 | Indicates the default display name format for test methods.
42 |
43 |
44 |
45 |
46 | Use a fully qualified name (namespace + class + method)
47 |
48 |
49 |
50 |
51 | Use just the method name (without class)
52 |
53 |
54 |
55 |
56 | Formats arguments for display in theories.
57 |
58 |
59 |
60 |
61 | Format the value for presentation.
62 |
63 | The value to be formatted.
64 | The formatted value.
65 |
66 |
67 |
68 | Default implementation of used by the xUnit.net equality assertions.
69 |
70 | The type that is being compared.
71 |
72 |
73 |
74 | Initializes a new instance of the class.
75 |
76 | Set to true to skip type equality checks.
77 | The inner comparer to be used when the compared objects are enumerable.
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 | A class that wraps to create .
88 |
89 | The type that is being compared.
90 |
91 |
92 |
93 | Initializes a new instance of the class.
94 |
95 | The comparer that is being adapted.
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 | Used to declare a specific test collection for a test class.
106 |
107 |
108 |
109 |
110 | Initializes a new instance of the class.
111 |
112 | The test collection name.
113 |
114 |
115 |
116 | Defines the built-in behavior types for collections in xUnit.net.
117 |
118 |
119 |
120 |
121 | By default, generates a collection per assembly, and any test classes that are not
122 | decorated with will be placed into the assembly-level
123 | collection.
124 |
125 |
126 |
127 |
128 | By default, generates a collection per test class for any test classes that are not
129 | decorated with .
130 |
131 |
132 |
133 |
134 | Used to declare a the default test collection behavior for the assembly.
135 |
136 |
137 |
138 |
139 | Initializes a new instance of the class.
140 |
141 |
142 |
143 |
144 | Initializes a new instance of the class.
145 |
146 | The collection behavior for the assembly.
147 |
148 |
149 |
150 | Initializes a new instance of the class.
151 |
152 | The type name of the test collection factory (that implements ).
153 | The assembly that exists in.
154 |
155 |
156 |
157 | Determines whether tests in this assembly are run in parallel.
158 |
159 |
160 |
161 |
162 | Determines how many tests can run in parallel with each other.
163 |
164 |
165 |
166 |
167 | Used to declare a test collection container class. The container class gives
168 | developers a place to attach interfaces like and
169 | that will be applied to all tests classes
170 | that are members of the test collection.
171 |
172 |
173 |
174 |
175 | Initializes a new instance of the class.
176 |
177 | The test collection name.
178 |
179 |
180 |
181 | Attribute that is applied to a method to indicate that it is a fact that should be run
182 | by the test runner. It can also be extended to support a customized definition of a
183 | test method.
184 |
185 |
186 |
187 |
188 | Gets the name of the test to be used when the test is skipped. Defaults to
189 | null, which will cause the fully qualified test name to be used.
190 |
191 |
192 |
193 |
194 | Marks the test so that it will not be run, and gets or sets the skip reason
195 |
196 |
197 |
198 |
199 | Used to decorate xUnit.net test classes and collections to indicate a test which has
200 | per-test-class fixture data. An instance of the fixture data is initialized just before
201 | the first test in the class is run, and if it implements IDisposable, is disposed
202 | after the last test in the class is run. To gain access to the fixture data from
203 | inside the test, a constructor argument should be added to the test class which
204 | exactly matches the .
205 |
206 | The type of the fixture.
207 |
208 |
209 |
210 | Used to decorate xUnit.net test classes and collections to indicate a test which has
211 | per-test-collection fixture data. An instance of the fixture data is initialized just before
212 | the first test in the collection is run, and if it implements IDisposable, is disposed
213 | after the last test in the collection is run. To gain access to the fixture data from
214 | inside the test, a constructor argument should be added to the test class which
215 | exactly matches the .
216 |
217 | The type of the fixture.
218 |
219 |
220 |
221 | Provides a data source for a data theory, with the data coming from inline values.
222 |
223 |
224 |
225 |
226 | Abstract attribute which represents a data source for a data theory.
227 | Data source providers derive from this attribute and implement GetData
228 | to return the data for the theory.
229 |
230 |
231 |
232 |
233 | Returns the data to be used to test the theory.
234 |
235 | The method that is being tested
236 | One or more sets of theory data. Each invocation of the test method
237 | is represented by a single object array.
238 |
239 |
240 |
241 | Initializes a new instance of the class.
242 |
243 | The data values to pass to the theory.
244 |
245 |
246 |
247 |
248 |
249 |
250 | A class implements this interface to participate in ordering tests
251 | for the test runner. Test collection orderers are applied using the
252 | , which can be applied at
253 | the assembly level.
254 |
255 |
256 |
257 |
258 | Orders test collections for execution.
259 |
260 | The test collections to be ordered.
261 | The test collections in the order to be run.
262 |
263 |
264 |
265 | Provides a data source for a data theory, with the data coming from one of the following sources:
266 | 1. A static property
267 | 2. A static field
268 | 3. A static method (with parameters)
269 | The member must return something compatible with IEnumerable<object[]> with the test data.
270 |
271 |
272 |
273 |
274 | Provides a base class for attributes that will provide member data. The member data must return
275 | something compatible with .
276 |
277 |
278 |
279 |
280 | Initializes a new instance of the class.
281 |
282 | The name of the public static member on the test class that will provide the test data
283 | The parameters for the member (only supported for methods; ignored for everything else)
284 |
285 |
286 |
287 |
288 |
289 |
290 | Converts an item yielded by the data member to an object array, for return from .
291 |
292 | The method that is being tested.
293 | An item yielded from the data member.
294 | An suitable for return from .
295 |
296 |
297 |
298 | Returns true if the data attribute wants to skip enumerating data during discovery.
299 | This will cause the theory to yield a single test case for all data, and the data discovery
300 | will be during test execution instead of discovery.
301 |
302 |
303 |
304 |
305 | Gets the member name.
306 |
307 |
308 |
309 |
310 | Gets or sets the type to retrieve the member from. If not set, then the property will be
311 | retrieved from the unit test class.
312 |
313 |
314 |
315 |
316 | Gets or sets the parameters passed to the member. Only supported for static methods.
317 |
318 |
319 |
320 |
321 | Initializes a new instance of the class.
322 |
323 | The name of the public static member on the test class that will provide the test data
324 | The parameters for the member (only supported for methods; ignored for everything else)
325 |
326 |
327 |
328 |
329 |
330 |
331 |
332 |
333 |
334 |
335 |
336 |
337 |
338 |
339 |
340 | Allows the user to record actions for a test.
341 |
342 |
343 |
344 |
345 | Records any exception which is thrown by the given code.
346 |
347 | The code which may thrown an exception.
348 | Returns the exception that was thrown by the code; null, otherwise.
349 |
350 |
351 |
352 | Records any exception which is thrown by the given code that has
353 | a return value. Generally used for testing property accessors.
354 |
355 | The code which may thrown an exception.
356 | Returns the exception that was thrown by the code; null, otherwise.
357 |
358 |
359 |
360 |
361 |
362 |
363 | Records any exception which is thrown by the given task.
364 |
365 | The task which may thrown an exception.
366 | Returns the exception that was thrown by the code; null, otherwise.
367 |
368 |
369 |
370 |
371 |
372 |
373 | Base attribute which indicates a test method interception (allows code to be run before and
374 | after the test is run).
375 |
376 |
377 |
378 |
379 | This method is called after the test method is executed.
380 |
381 | The method under test
382 |
383 |
384 |
385 | This method is called before the test method is executed.
386 |
387 | The method under test
388 |
389 |
390 |
391 | Implementation of for discovering .
392 |
393 |
394 |
395 |
396 | Default implementation of . Uses reflection to find the
397 | data associated with ; may return null when called
398 | without reflection-based abstraction implementations.
399 |
400 |
401 |
402 |
403 | This class is responsible for discovering the data available in an implementation
404 | of . The discovery process may not always have access
405 | to reflection (i.e., running in Resharper), so the discoverer must make a best
406 | effort to return data, but may return null when there is not enough information
407 | available (for example, if reflection is required to answer the question).
408 |
409 |
410 |
411 |
412 | Returns the data to be used to test the theory.
413 |
414 |
415 | This will be called during
416 | discovery, at which point the may or may not
417 | be backed by reflection (i.e., implementing ).
418 | If the data is not available because reflection is required, then you may return
419 | null to inform xUnit that the quantity of data is unknown at this point.
420 | When the tests are run, if you returned back null during discovery, then this method
421 | will be called again to retrieve the data, this time guaranteed to provide
422 | an implementation of . At this time, you
423 | must return the actual data, and returning null is not legal.
424 |
425 | The data attribute being discovered
426 | The method that is being tested/discovered
427 | The theory data (or null during discovery, if not enough
428 | information is available to enumerate the data)
429 |
430 |
431 |
432 | Returns true if the data attribute supports enumeration during
433 | discovery; false otherwise. Data attributes with expensive computational
434 | costs should return false.
435 |
436 |
437 |
438 |
439 |
440 |
441 |
442 |
443 |
444 |
445 |
446 |
447 |
448 | An attribute used to decorate classes which derive from ,
449 | to indicate how data elements should be discovered.
450 |
451 |
452 |
453 |
454 | Initializes an instance of .
455 |
456 | The fully qualified type name of the discoverer
457 | (f.e., 'Xunit.Sdk.DataDiscoverer')
458 | The name of the assembly that the discoverer type
459 | is located in, without file extension (f.e., 'xunit.execution')
460 |
461 |
462 |
463 | Aggregates exceptions. Intended to run one or more code blocks, and collect the
464 | exceptions thrown by those code blocks.
465 |
466 |
467 |
468 |
469 | Initializes a new instance of the class.
470 |
471 |
472 |
473 |
474 | Initializes a new instance of the class that
475 | contains the exception list of its parent.
476 |
477 | The parent aggregator to copy exceptions from.
478 |
479 |
480 |
481 | Adds an exception to the aggregator.
482 |
483 | The exception to be added.
484 |
485 |
486 |
487 | Adds exceptions from another aggregator into this aggregator.
488 |
489 | The aggregator whose exceptions should be copied.
490 |
491 |
492 |
493 | Clears the aggregator.
494 |
495 |
496 |
497 |
498 | Runs the code, catching the exception that is thrown and adding it to
499 | the aggregate.
500 |
501 | The code to be run.
502 |
503 |
504 |
505 | Runs the code, catching the exception that is thrown and adding it to
506 | the aggregate.
507 |
508 | The code to be run.
509 |
510 |
511 |
512 | Runs the code, catching the exception that is thrown and adding it to
513 | the aggregate.
514 |
515 | The code to be run.
516 |
517 |
518 |
519 | Returns an exception that represents the exceptions thrown by the code
520 | passed to the or method.
521 |
522 | Returns null if no exceptions were thrown; returns the
523 | exact exception is a single exception was thrown; returns
524 | if more than one exception was thrown.
525 |
526 |
527 |
528 | Returns true if the aggregator has at least one exception inside it.
529 |
530 |
531 |
532 |
533 | Used by discovery, execution, and extensibility code to send messages to the runner.
534 |
535 |
536 |
537 |
538 | Queues a message to be sent to the runner.
539 |
540 | The message to be sent to the runner
541 |
542 | Returns true if discovery/execution should continue; false, otherwise.
543 | The return value may be safely ignored by components which are not directly responsible
544 | for discovery or execution, and this is intended to communicate to those sub-systems that
545 | that they should short circuit and stop their work as quickly as is reasonable.
546 |
547 |
548 |
549 |
550 | Implementation of used to discover the data
551 | provided by .
552 |
553 |
554 |
555 |
556 |
557 |
558 |
559 |
560 |
561 |
562 | A class implements this interface to participate in ordering tests
563 | for the test runner. Test case orderers are applied using the
564 | , which can be applied at
565 | the assembly, test collection, and test class level.
566 |
567 |
568 |
569 |
570 | Orders test cases for execution.
571 |
572 | The test cases to be ordered.
573 | The test cases in the order to be run.
574 |
575 |
576 |
577 | Marker interface that must be implemented by test framework attributes, so
578 | that the test framework attribute discoverer can find them.
579 |
580 |
581 |
582 |
583 | Interface to be implemented by classes which are used to discover the test framework.
584 |
585 |
586 |
587 |
588 | Gets the type that implements to be used to discover
589 | and run tests.
590 |
591 | The test framework attribute that decorated the assembly
592 | The test framework type
593 |
594 |
595 |
596 | Marker interface used by attributes which provide trait data.
597 |
598 |
599 |
600 |
601 | This interface is implemented by discoverers that provide trait values to
602 | xUnit.net v2 tests.
603 |
604 |
605 |
606 |
607 | Gets the trait values from the trait attribute.
608 |
609 | The trait attribute containing the trait values.
610 | The trait values.
611 |
612 |
613 |
614 | Interface to be implemented by classes which are used to discover tests cases attached
615 | to test methods that are attributed with (or a subclass).
616 |
617 |
618 |
619 |
620 | Discover test cases from a test method.
621 |
622 | The discovery options to be used.
623 | The test method the test cases belong to.
624 | The fact attribute attached to the test method.
625 | Returns zero or more test cases represented by the test method.
626 |
627 |
628 |
629 | Represents a single test case from xUnit.net v2.
630 |
631 |
632 |
633 |
634 | Executes the test case, returning 0 or more result messages through the message sink.
635 |
636 | The message sink used to send diagnostic messages to.
637 | The message bus to report results to.
638 | The arguments to pass to the constructor.
639 | The error aggregator to use for catching exception.
640 | The cancellation token source that indicates whether cancellation has been requested.
641 | Returns the summary of the test case run.
642 |
643 |
644 |
645 | Gets the method to be run. Differs from . in that
646 | any generic argument types will have been closed based on the arguments.
647 |
648 |
649 |
650 |
651 | This interface is intended to be implemented by components which generate test collections.
652 | End users specify the desired test collection factory by applying
653 | at the assembly level. Classes which implement this interface must have a constructor
654 | that takes and .
655 |
656 |
657 |
658 |
659 | Gets the test collection for a given test class.
660 |
661 | The test class.
662 | The test collection.
663 |
664 |
665 |
666 | Gets the display name for the test collection factory. This information is shown to the end
667 | user as part of the description of the test environment.
668 |
669 |
670 |
671 |
672 | Marks an assembly as a platform specific assembly for use with xUnit.net. Type references from
673 | such assemblies are allowed to use a special suffix ("My.Assembly.{Platform}"), which will
674 | automatically be translated into the correct platform-specific name ("My.Assembly.desktop",
675 | "My.Assembly.win8", etc.). This affects both extensibility points which require specifying
676 | a string-based type name and assembly, as well as serialization. The supported platform target
677 | names include:
678 | "desktop" (for desktop and PCL tests),
679 | "iOS-Universal" (for Xamarin test projects targeting iOS),
680 | "MonoAndroid" (for Xamarin MonoAndroid tests),
681 | "MonoTouch" (for Xamarin MonoTouch tests),
682 | "universal" (for Windows Phone 8.1 and Windows 8.1 tests),
683 | "win8" (for Modern Windows 8 tests), and
684 | "wp8" (for Windows Phone 8 Silverlight tests).
685 | Note that file names may be case sensitive (when running on platforms with case sensitive
686 | file systems like Linux), so ensure that your assembly file name casing is consistent, and
687 | that you use the suffixes here with the exact case shown.
688 |
689 |
690 |
691 |
692 | Represents the statistical summary from a run of one or more tests.
693 |
694 |
695 |
696 |
697 | The total number of tests run.
698 |
699 |
700 |
701 |
702 | The number of failed tests.
703 |
704 |
705 |
706 |
707 | The number of skipped tests.
708 |
709 |
710 |
711 |
712 | The total time taken to run the tests, in seconds.
713 |
714 |
715 |
716 |
717 | Adds a run summary's totals into this run summary.
718 |
719 | The run summary to be added.
720 |
721 |
722 |
723 | Decorates an implementation of that is used to
724 | determine which test framework is used to discover and run tests.
725 |
726 |
727 |
728 |
729 | Initializes an instance of .
730 |
731 | The fully qualified type name of the discoverer
732 | (f.e., 'Xunit.Sdk.DataDiscoverer')
733 | The name of the assembly that the discoverer type
734 | is located in, without file extension (f.e., 'xunit.execution')
735 |
736 |
737 |
738 | An attribute used to decorate classes which derive from ,
739 | to indicate how test cases should be discovered.
740 |
741 |
742 |
743 |
744 | Initializes an instance of the class.
745 |
746 | The fully qualified type name of the discoverer
747 | (f.e., 'Xunit.Sdk.FactDiscoverer')
748 | The name of the assembly that the discoverer type
749 | is located in, without file extension (f.e., 'xunit.execution')
750 |
751 |
752 |
753 | The implementation of which returns the trait values
754 | for .
755 |
756 |
757 |
758 |
759 |
760 |
761 |
762 | An attribute used to decorate classes which implement ,
763 | to indicate how trait values should be discovered. The discoverer type must implement
764 | .
765 |
766 |
767 |
768 |
769 | Initializes an instance of .
770 |
771 | The fully qualified type name of the discoverer
772 | (f.e., 'Xunit.Sdk.TraitDiscoverer')
773 | The name of the assembly that the discoverer type
774 | is located in, without file extension (f.e., 'xunit.execution')
775 |
776 |
777 |
778 | Used to decorate an assembly to allow the use a custom .
779 |
780 |
781 |
782 |
783 | Initializes a new instance of the class.
784 |
785 | The type name of the orderer class (that implements ).
786 | The assembly that exists in.
787 |
788 |
789 |
790 | Used to decorate an assembly, test collection, or test class to allow
791 | the use a custom .
792 |
793 |
794 |
795 |
796 | Initializes a new instance of the class.
797 |
798 | The type name of the orderer class (that implements ).
799 | The assembly that exists in.
800 |
801 |
802 |
803 | Used to decorate an assembly to allow the use a custom .
804 |
805 |
806 |
807 |
808 | Initializes an instance of .
809 |
810 | The fully qualified type name of the test framework
811 | (f.e., 'Xunit.Sdk.XunitTestFramework')
812 | The name of the assembly that the test framework type
813 | is located in, without file extension (f.e., 'xunit.execution')
814 |
815 |
816 |
817 | Marks a test method as being a data theory. Data theories are tests which are fed
818 | various bits of data from a data source, mapping to parameters on the test method.
819 | If the data source contains multiple rows, then the test method is executed
820 | multiple times (once with each data row). Data is provided by attributes which
821 | derive from (notably, and
822 | ).
823 |
824 |
825 |
826 |
827 | Provides data for theories based on collection initialization syntax.
828 |
829 |
830 |
831 |
832 | Adds a row to the theory.
833 |
834 | The values to be added.
835 |
836 |
837 |
838 |
839 |
840 |
841 |
842 |
843 |
844 | Represents a set of data for a theory with a single parameter. Data can
845 | be added to the data set using the collection initializer syntax.
846 |
847 | The parameter type.
848 |
849 |
850 |
851 | Adds data to the theory data set.
852 |
853 | The data value.
854 |
855 |
856 |
857 | Represents a set of data for a theory with 2 parameters. Data can
858 | be added to the data set using the collection initializer syntax.
859 |
860 | The first parameter type.
861 | The second parameter type.
862 |
863 |
864 |
865 | Adds data to the theory data set.
866 |
867 | The first data value.
868 | The second data value.
869 |
870 |
871 |
872 | Represents a set of data for a theory with 3 parameters. Data can
873 | be added to the data set using the collection initializer syntax.
874 |
875 | The first parameter type.
876 | The second parameter type.
877 | The third parameter type.
878 |
879 |
880 |
881 | Adds data to the theory data set.
882 |
883 | The first data value.
884 | The second data value.
885 | The third data value.
886 |
887 |
888 |
889 | Represents a set of data for a theory with 3 parameters. Data can
890 | be added to the data set using the collection initializer syntax.
891 |
892 | The first parameter type.
893 | The second parameter type.
894 | The third parameter type.
895 | The fourth parameter type.
896 |
897 |
898 |
899 | Adds data to the theory data set.
900 |
901 | The first data value.
902 | The second data value.
903 | The third data value.
904 | The fourth data value.
905 |
906 |
907 |
908 | Represents a set of data for a theory with 3 parameters. Data can
909 | be added to the data set using the collection initializer syntax.
910 |
911 | The first parameter type.
912 | The second parameter type.
913 | The third parameter type.
914 | The fourth parameter type.
915 | The fifth parameter type.
916 |
917 |
918 |
919 | Adds data to the theory data set.
920 |
921 | The first data value.
922 | The second data value.
923 | The third data value.
924 | The fourth data value.
925 | The fifth data value.
926 |
927 |
928 |
929 | Attribute used to decorate a test method with arbitrary name/value pairs ("traits").
930 |
931 |
932 |
933 |
934 | Creates a new instance of the class.
935 |
936 | The trait name
937 | The trait value
938 |
939 |
940 |
941 |
--------------------------------------------------------------------------------
/packages/xunit.extensibility.core.2.0.0/lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/xunit.extensibility.core.2.0.0/lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.tdnet.dll
--------------------------------------------------------------------------------
/packages/xunit.extensibility.core.2.0.0/lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/xunit.extensibility.core.2.0.0/lib/portable-net45+win+wpa81+wp80+monotouch+monoandroid+Xamarin.iOS/xunit.runner.utility.desktop.dll
--------------------------------------------------------------------------------
/packages/xunit.extensibility.core.2.0.0/xunit.extensibility.core.2.0.0.nupkg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/horsdal/ShortURL/c6cf54ff691c5664424f47f96ab1c499ef1362a0/packages/xunit.extensibility.core.2.0.0/xunit.extensibility.core.2.0.0.nupkg
--------------------------------------------------------------------------------