diff --git a/.appveyor.yml b/.appveyor.yml index df81851..598322e 100644 --- a/.appveyor.yml +++ b/.appveyor.yml @@ -96,13 +96,13 @@ test_script: # # Also use -oldStyle flag which uses an alternate instrumentation hook that is available for .NET Core # Some comments on this can be found here: https://github.com/OpenCover/opencover/issues/601 - - .\tools\OpenCover.4.6.519\tools\OpenCover.Console.exe -target:dotnet.exe -targetargs:"test --logger \"trx;LogFileName=netstandard_test_results.xml\" .\Keen.NetStandard.Test\Keen.NetStandard.Test.csproj /property:DebugType=Full" -mergeoutput -output:coverage.xml -filter:"+[*]* -[*.Test]* -[Moq*]*" -oldStyle -returntargetcode -register:user + - .\tools\OpenCover.4.6.519\tools\OpenCover.Console.exe -target:dotnet.exe -targetargs:"test --logger \"trx;LogFileName=dotnetcore_test_results.xml\" .\Keen.Test\Keen.Test.csproj /property:DebugType=Full" -mergeoutput -output:coverage.xml -filter:"+[*]* -[*.Test]* -[Moq*]*" -oldStyle -returntargetcode -register:user # Upload coverage results - .\tools\coveralls.net.0.8.0-unstable0013\tools\csmacnz.Coveralls.exe --opencover -i .\coverage.xml # Upload netstandard test results to appveyor - - ps: (New-Object 'System.Net.WebClient').UploadFile("https://ci.appveyor.com/api/testresults/mstest/$($env:APPVEYOR_JOB_ID)", (Resolve-Path .\Keen.NetStandard.Test\TestResults\netstandard_test_results.xml)) + - ps: (New-Object 'System.Net.WebClient').UploadFile("https://ci.appveyor.com/api/testresults/mstest/$($env:APPVEYOR_JOB_ID)", (Resolve-Path .\Keen.Test\TestResults\dotnetcore_test_results.xml)) #---------------------------------# # notifications # diff --git a/.travis.yml b/.travis.yml index 4cf4029..303a91a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -17,7 +17,7 @@ dist: trusty # The image to use for the osx build osx_image: xcode8.3 -# Build and run the Keen.NetStandard project and run its tests +# Build and run the Keen project and run its tests script: | - cd Keen.NetStandard.Test + cd Keen.Test dotnet test diff --git a/Keen.NetStandard/Properties/AssenblyInfo.cs b/Keen.NetStandard/Properties/AssenblyInfo.cs deleted file mode 100644 index dc947ea..0000000 --- a/Keen.NetStandard/Properties/AssenblyInfo.cs +++ /dev/null @@ -1,4 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; - -[assembly: InternalsVisibleTo("Keen.NetStandard.Test")] diff --git a/Keen.NetStandard.Test/AddOnsTest.cs b/Keen.Test/AddOnsTest.cs similarity index 88% rename from Keen.NetStandard.Test/AddOnsTest.cs rename to Keen.Test/AddOnsTest.cs index b0b25ae..8725787 100644 --- a/Keen.NetStandard.Test/AddOnsTest.cs +++ b/Keen.Test/AddOnsTest.cs @@ -1,10 +1,11 @@ using System; using System.Collections.Generic; -using Keen.Core.DataEnrichment; +using Keen.Core; +using Keen.DataEnrichment; using NUnit.Framework; -namespace Keen.Core.Test +namespace Keen.Test { [TestFixture] public class AddOnsTest : TestBase @@ -14,12 +15,16 @@ public void No_AddOn_Success() { var client = new KeenClient(SettingsEnv); if (UseMocks) + { client.EventCollection = new EventCollectionMock(SettingsEnv, addEvent: (c, e, p) => { if (e["keen"].ToString().Contains("keen:ip_to_geo")) + { throw new Exception("Unexpected values"); + } }); + } Assert.DoesNotThrow(() => client.AddEvent("AddOnTest", new { an_ip = "70.187.8.97" })); } @@ -29,12 +34,16 @@ public void IpToGeo_Send_Success() { var client = new KeenClient(SettingsEnv); if (UseMocks) + { client.EventCollection = new EventCollectionMock(SettingsEnv, addEvent: (c, e, p) => { if (!e["keen"].ToString().Contains("keen:ip_to_geo")) + { throw new Exception("Unexpected values"); + } }); + } var a = AddOn.IpToGeo("an_ip", "geocode"); @@ -46,12 +55,16 @@ public void IpToGeo_MissingInput_Throws() { var client = new KeenClient(SettingsEnv); if (UseMocks) + { client.EventCollection = new EventCollectionMock(SettingsEnv, addEvent: (c, e, p) => { if (!e["keen"].ToString().Contains("\"ip\": \"an_ip\"")) + { throw new KeenException("Unexpected values"); + } }); + } var a = AddOn.IpToGeo("wrong_field", "geocode"); @@ -64,12 +77,16 @@ public void UserAgentParser_Send_Success() { var client = new KeenClient(SettingsEnv); if (UseMocks) + { client.EventCollection = new EventCollectionMock(SettingsEnv, addEvent: (c, e, p) => { if (!e["keen"].ToString().Contains("keen:ua_parser")) + { throw new Exception("Unexpected values"); + } }); + } var a = AddOn.UserAgentParser("user_agent_string", "user_agent_parsed"); @@ -81,12 +98,16 @@ public void UrlParser_Send_Success() { var client = new KeenClient(SettingsEnv); if (UseMocks) + { client.EventCollection = new EventCollectionMock(SettingsEnv, addEvent: (c, e, p) => { if (!e["keen"].ToString().Contains("keen:url_parser")) + { throw new Exception("Unexpected values"); + } }); + } var a = AddOn.UrlParser("url", "url_parsed"); @@ -98,12 +119,16 @@ public void ReferrerParser_Send_Success() { var client = new KeenClient(SettingsEnv); if (UseMocks) + { client.EventCollection = new EventCollectionMock(SettingsEnv, addEvent: (c, e, p) => { if (!e["keen"].ToString().Contains("keen:referrer_parser")) + { throw new Exception("Unexpected values"); + } }); + } var a = AddOn.ReferrerParser("referrer", "page", "referrer_parsed"); diff --git a/Keen.NetStandard.Test/ApiResponses/GetDatasetDefinition.json b/Keen.Test/ApiResponses/GetDatasetDefinition.json similarity index 100% rename from Keen.NetStandard.Test/ApiResponses/GetDatasetDefinition.json rename to Keen.Test/ApiResponses/GetDatasetDefinition.json diff --git a/Keen.NetStandard.Test/ApiResponses/GetDatasetResults.json b/Keen.Test/ApiResponses/GetDatasetResults.json similarity index 100% rename from Keen.NetStandard.Test/ApiResponses/GetDatasetResults.json rename to Keen.Test/ApiResponses/GetDatasetResults.json diff --git a/Keen.NetStandard.Test/ApiResponses/ListDatasetDefinitions.json b/Keen.Test/ApiResponses/ListDatasetDefinitions.json similarity index 100% rename from Keen.NetStandard.Test/ApiResponses/ListDatasetDefinitions.json rename to Keen.Test/ApiResponses/ListDatasetDefinitions.json diff --git a/Keen.NetStandard.Test/DatasetTests.cs b/Keen.Test/DatasetTests.cs similarity index 98% rename from Keen.NetStandard.Test/DatasetTests.cs rename to Keen.Test/DatasetTests.cs index 2b1a049..b6615c7 100644 --- a/Keen.NetStandard.Test/DatasetTests.cs +++ b/Keen.Test/DatasetTests.cs @@ -1,13 +1,14 @@ using System.Collections.Generic; using System.Threading.Tasks; -using Keen.Core.Dataset; -using Keen.Core.Query; +using Keen.Core; +using Keen.Dataset; +using Keen.Query; using Moq; using Newtonsoft.Json.Linq; using NUnit.Framework; -namespace Keen.Core.Test +namespace Keen.Test { [TestFixture] public class DatasetTests : TestBase diff --git a/Keen.NetStandard.Test/DatasetTests_Integration.cs b/Keen.Test/DatasetTests_Integration.cs similarity index 99% rename from Keen.NetStandard.Test/DatasetTests_Integration.cs rename to Keen.Test/DatasetTests_Integration.cs index 7827fee..1bf09a3 100644 --- a/Keen.NetStandard.Test/DatasetTests_Integration.cs +++ b/Keen.Test/DatasetTests_Integration.cs @@ -5,13 +5,14 @@ using System.Net; using System.Net.Http; using System.Threading.Tasks; -using Keen.Core.Dataset; -using Keen.Core.Query; +using Keen.Core; +using Keen.Dataset; +using Keen.Query; using Moq; using NUnit.Framework; -namespace Keen.Core.Test +namespace Keen.Test { [TestFixture] public class DatasetTests_Integration : TestBase diff --git a/Keen.NetStandard.Test/DelegatingHandlerMock.cs b/Keen.Test/DelegatingHandlerMock.cs similarity index 97% rename from Keen.NetStandard.Test/DelegatingHandlerMock.cs rename to Keen.Test/DelegatingHandlerMock.cs index a85fadd..b31079d 100644 --- a/Keen.NetStandard.Test/DelegatingHandlerMock.cs +++ b/Keen.Test/DelegatingHandlerMock.cs @@ -3,7 +3,7 @@ using System.Threading.Tasks; -namespace Keen.Core.Test +namespace Keen.Test { /// /// Wraps an and allows for using it as a DelegatingHandler. diff --git a/Keen.NetStandard.Test/EventCachePortableTestable.cs b/Keen.Test/EventCachePortableTestable.cs similarity index 91% rename from Keen.NetStandard.Test/EventCachePortableTestable.cs rename to Keen.Test/EventCachePortableTestable.cs index 29d6307..f4ea419 100644 --- a/Keen.NetStandard.Test/EventCachePortableTestable.cs +++ b/Keen.Test/EventCachePortableTestable.cs @@ -1,7 +1,8 @@ using System.Threading.Tasks; +using Keen.Core; -namespace Keen.Core.Test +namespace Keen.Test { class EventCachePortableTestable : EventCachePortable { diff --git a/Keen.NetStandard.Test/EventCacheTest.cs b/Keen.Test/EventCacheTest.cs similarity index 98% rename from Keen.NetStandard.Test/EventCacheTest.cs rename to Keen.Test/EventCacheTest.cs index 66100df..a2432c0 100644 --- a/Keen.NetStandard.Test/EventCacheTest.cs +++ b/Keen.Test/EventCacheTest.cs @@ -2,12 +2,13 @@ using System.IO; using System.Linq; using System.Threading.Tasks; -using Keen.Core.EventCache; +using Keen.Core; +using Keen.EventCache; using Newtonsoft.Json.Linq; using NUnit.Framework; -namespace Keen.Core.Test +namespace Keen.Test { [TestFixture] public class EventCacheTests : TestBase diff --git a/Keen.NetStandard.Test/EventCollectionMock.cs b/Keen.Test/EventCollectionMock.cs similarity index 97% rename from Keen.NetStandard.Test/EventCollectionMock.cs rename to Keen.Test/EventCollectionMock.cs index 93bf05d..6a312d5 100644 --- a/Keen.NetStandard.Test/EventCollectionMock.cs +++ b/Keen.Test/EventCollectionMock.cs @@ -1,9 +1,10 @@ using System; using System.Threading.Tasks; +using Keen.Core; using Newtonsoft.Json.Linq; -namespace Keen.Core.Test +namespace Keen.Test { /// /// EventCollectionMock provides an implementation of IEventCollection with a diff --git a/Keen.NetStandard.Test/EventMock.cs b/Keen.Test/EventMock.cs similarity index 95% rename from Keen.NetStandard.Test/EventMock.cs rename to Keen.Test/EventMock.cs index f886be6..2b99f7c 100644 --- a/Keen.NetStandard.Test/EventMock.cs +++ b/Keen.Test/EventMock.cs @@ -1,11 +1,12 @@ using System; using System.Collections.Generic; using System.Threading.Tasks; -using Keen.Core.EventCache; +using Keen.Core; +using Keen.EventCache; using Newtonsoft.Json.Linq; -namespace Keen.Core.Test +namespace Keen.Test { /// /// EventMock provides an implementation of IEvent with a constructor that diff --git a/Keen.NetStandard.Test/FuncHandler.cs b/Keen.Test/FuncHandler.cs similarity index 98% rename from Keen.NetStandard.Test/FuncHandler.cs rename to Keen.Test/FuncHandler.cs index 6c76d5b..9da859d 100644 --- a/Keen.NetStandard.Test/FuncHandler.cs +++ b/Keen.Test/FuncHandler.cs @@ -4,7 +4,7 @@ using System.Threading.Tasks; -namespace Keen.Core.Test +namespace Keen.Test { /// /// An that has pre/post/default message handlers functors, diff --git a/Keen.NetStandard.Test/FunnelTest.cs b/Keen.Test/FunnelTest.cs similarity index 99% rename from Keen.NetStandard.Test/FunnelTest.cs rename to Keen.Test/FunnelTest.cs index 55acbad..e570e00 100644 --- a/Keen.NetStandard.Test/FunnelTest.cs +++ b/Keen.Test/FunnelTest.cs @@ -3,12 +3,13 @@ using System.Linq; using System.Threading; using System.Threading.Tasks; -using Keen.Core.Query; +using Keen.Core; +using Keen.Query; using Moq; using NUnit.Framework; -namespace Keen.Core.Test +namespace Keen.Test { [TestFixture] public class FunnelTest : TestBase diff --git a/Keen.NetStandard.Test/HttpClientHandlerMock.cs b/Keen.Test/HttpClientHandlerMock.cs similarity index 97% rename from Keen.NetStandard.Test/HttpClientHandlerMock.cs rename to Keen.Test/HttpClientHandlerMock.cs index db4cb2d..29548d6 100644 --- a/Keen.NetStandard.Test/HttpClientHandlerMock.cs +++ b/Keen.Test/HttpClientHandlerMock.cs @@ -3,7 +3,7 @@ using System.Threading.Tasks; -namespace Keen.Core.Test +namespace Keen.Test { /// /// Wraps an and allows for using it as an HttpClientHandler. diff --git a/Keen.NetStandard.Test/HttpTests.cs b/Keen.Test/HttpTests.cs similarity index 99% rename from Keen.NetStandard.Test/HttpTests.cs rename to Keen.Test/HttpTests.cs index a2fa027..3593b6f 100644 --- a/Keen.NetStandard.Test/HttpTests.cs +++ b/Keen.Test/HttpTests.cs @@ -4,13 +4,14 @@ using System.Net.Http; using System.Net.Http.Headers; using System.Threading.Tasks; -using Keen.Core.Query; +using Keen.Core; +using Keen.Query; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using NUnit.Framework; -namespace Keen.Core.Test +namespace Keen.Test { [TestFixture] internal class HttpTests : TestBase diff --git a/Keen.NetStandard.Test/IHttpMessageHandler.cs b/Keen.Test/IHttpMessageHandler.cs similarity index 98% rename from Keen.NetStandard.Test/IHttpMessageHandler.cs rename to Keen.Test/IHttpMessageHandler.cs index 484eb32..6cc3d89 100644 --- a/Keen.NetStandard.Test/IHttpMessageHandler.cs +++ b/Keen.Test/IHttpMessageHandler.cs @@ -4,7 +4,7 @@ using System.Threading.Tasks; -namespace Keen.Core +namespace Keen.Test { /// /// Represents the main functionality needed to override both HttpClientHandler and diff --git a/Keen.NetStandard.Test/Keen.NetStandard.Test.csproj b/Keen.Test/Keen.Test.csproj similarity index 94% rename from Keen.NetStandard.Test/Keen.NetStandard.Test.csproj rename to Keen.Test/Keen.Test.csproj index 6c196b5..6e43d6f 100644 --- a/Keen.NetStandard.Test/Keen.NetStandard.Test.csproj +++ b/Keen.Test/Keen.Test.csproj @@ -19,9 +19,8 @@ - - + diff --git a/Keen.NetStandard.Test/KeenClientTest.cs b/Keen.Test/KeenClientTest.cs similarity index 99% rename from Keen.NetStandard.Test/KeenClientTest.cs rename to Keen.Test/KeenClientTest.cs index fdae48f..c7c60f5 100644 --- a/Keen.NetStandard.Test/KeenClientTest.cs +++ b/Keen.Test/KeenClientTest.cs @@ -3,13 +3,14 @@ using System.Dynamic; using System.Linq; using System.Threading.Tasks; -using Keen.Core.EventCache; +using Keen.Core; +using Keen.EventCache; using Moq; using Newtonsoft.Json.Linq; using NUnit.Framework; -namespace Keen.Core.Test +namespace Keen.Test { [TestFixture] public class BulkEventTest : TestBase diff --git a/Keen.NetStandard.Test/ProjectSettingsProviderTest.cs b/Keen.Test/ProjectSettingsProviderTest.cs similarity index 99% rename from Keen.NetStandard.Test/ProjectSettingsProviderTest.cs rename to Keen.Test/ProjectSettingsProviderTest.cs index dd0c335..74a85f3 100644 --- a/Keen.NetStandard.Test/ProjectSettingsProviderTest.cs +++ b/Keen.Test/ProjectSettingsProviderTest.cs @@ -1,11 +1,12 @@ using System; using System.Collections.Generic; using System.IO; +using Keen.Core; using Newtonsoft.Json; using NUnit.Framework; -namespace Keen.Core.Test +namespace Keen.Test { [TestFixture] class ProjectSettingsProviderTest diff --git a/Keen.NetStandard.Test/QueryTest.cs b/Keen.Test/QueryTest.cs similarity index 99% rename from Keen.NetStandard.Test/QueryTest.cs rename to Keen.Test/QueryTest.cs index 1e9c577..4e4d000 100644 --- a/Keen.NetStandard.Test/QueryTest.cs +++ b/Keen.Test/QueryTest.cs @@ -4,13 +4,14 @@ using System.Dynamic; using System.Linq; using System.Threading.Tasks; -using Keen.Core.Query; +using Keen.Core; +using Keen.Query; using Moq; using Newtonsoft.Json.Linq; using NUnit.Framework; -namespace Keen.Core.Test +namespace Keen.Test { [TestFixture] public class QueryTest : TestBase diff --git a/Keen.NetStandard.Test/QueryTests_Integration.cs b/Keen.Test/QueryTests_Integration.cs similarity index 99% rename from Keen.NetStandard.Test/QueryTests_Integration.cs rename to Keen.Test/QueryTests_Integration.cs index d0cc03e..2855ae3 100644 --- a/Keen.NetStandard.Test/QueryTests_Integration.cs +++ b/Keen.Test/QueryTests_Integration.cs @@ -4,13 +4,14 @@ using System.Linq; using System.Threading.Tasks; using System.Web; -using Keen.Core.Query; +using Keen.Core; +using Keen.Query; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using NUnit.Framework; -namespace Keen.Core.Test +namespace Keen.Test { /// /// Integration tests for Queries. These will exercise more than unit tests, like the diff --git a/Keen.NetStandard.Test/ScopedKeyTest.cs b/Keen.Test/ScopedKeyTest.cs similarity index 99% rename from Keen.NetStandard.Test/ScopedKeyTest.cs rename to Keen.Test/ScopedKeyTest.cs index 0a7510f..c3252eb 100644 --- a/Keen.NetStandard.Test/ScopedKeyTest.cs +++ b/Keen.Test/ScopedKeyTest.cs @@ -3,11 +3,12 @@ using System.Diagnostics; using System.Dynamic; using System.Linq; +using Keen.Core; using Newtonsoft.Json.Linq; using NUnit.Framework; -namespace Keen.Core.Test +namespace Keen.Test { [TestFixture] public class ScopedKeyTest : TestBase diff --git a/Keen.NetStandard.Test/TestBase.cs b/Keen.Test/TestBase.cs similarity index 96% rename from Keen.NetStandard.Test/TestBase.cs rename to Keen.Test/TestBase.cs index 07dcbd2..b953f6f 100644 --- a/Keen.NetStandard.Test/TestBase.cs +++ b/Keen.Test/TestBase.cs @@ -1,8 +1,9 @@ using System; +using Keen.Core; using NUnit.Framework; -namespace Keen.Core.Test +namespace Keen.Test { public class TestBase { diff --git a/Keen.NetStandard.Test/TestKeenHttpClientProvider.cs b/Keen.Test/TestKeenHttpClientProvider.cs similarity index 94% rename from Keen.NetStandard.Test/TestKeenHttpClientProvider.cs rename to Keen.Test/TestKeenHttpClientProvider.cs index 035cc6a..0dbed58 100644 --- a/Keen.NetStandard.Test/TestKeenHttpClientProvider.cs +++ b/Keen.Test/TestKeenHttpClientProvider.cs @@ -1,7 +1,8 @@ using System; +using Keen.Core; -namespace Keen.Core.Test +namespace Keen.Test { /// /// An implementation of that behaves just like diff --git a/Keen.NetStandard.Test/TimeframeConverterTest.cs b/Keen.Test/TimeframeConverterTest.cs similarity index 93% rename from Keen.NetStandard.Test/TimeframeConverterTest.cs rename to Keen.Test/TimeframeConverterTest.cs index 6fde2e0..edcc03f 100644 --- a/Keen.NetStandard.Test/TimeframeConverterTest.cs +++ b/Keen.Test/TimeframeConverterTest.cs @@ -1,9 +1,9 @@ -using Keen.Core.Query; +using Keen.Query; using Newtonsoft.Json; using NUnit.Framework; -namespace Keen.NetStandard.Test +namespace Keen.Test { [TestFixture] class TimeframeConverterTest diff --git a/Keen.NetStandard.Test/UrlToMessageHandler.cs b/Keen.Test/UrlToMessageHandler.cs similarity index 99% rename from Keen.NetStandard.Test/UrlToMessageHandler.cs rename to Keen.Test/UrlToMessageHandler.cs index 1f8c7e7..91d8d79 100644 --- a/Keen.NetStandard.Test/UrlToMessageHandler.cs +++ b/Keen.Test/UrlToMessageHandler.cs @@ -7,7 +7,7 @@ using System.Threading.Tasks; -namespace Keen.Core.Test +namespace Keen.Test { /// /// An that matches request URIs with other diff --git a/Keen.sln b/Keen.sln index 9e69a9f..441c1ab 100644 --- a/Keen.sln +++ b/Keen.sln @@ -3,9 +3,9 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 15 VisualStudioVersion = 15.0.27019.1 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Keen.NetStandard", "Keen.NetStandard\Keen.NetStandard.csproj", "{711F4331-198A-4919-ACA8-C2B303E045A8}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Keen", "Keen\Keen.csproj", "{711F4331-198A-4919-ACA8-C2B303E045A8}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Keen.NetStandard.Test", "Keen.NetStandard.Test\Keen.NetStandard.Test.csproj", "{DC84C790-A0B0-4D40-A835-8128177F8FA3}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Keen.Test", "Keen.Test\Keen.Test.csproj", "{DC84C790-A0B0-4D40-A835-8128177F8FA3}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution diff --git a/Keen.NetStandard/AsyncLazy.cs b/Keen/AsyncLazy.cs similarity index 100% rename from Keen.NetStandard/AsyncLazy.cs rename to Keen/AsyncLazy.cs diff --git a/Keen.NetStandard/CachedEvent.cs b/Keen/CachedEvent.cs similarity index 96% rename from Keen.NetStandard/CachedEvent.cs rename to Keen/CachedEvent.cs index b802f42..e8940f1 100644 --- a/Keen.NetStandard/CachedEvent.cs +++ b/Keen/CachedEvent.cs @@ -2,7 +2,7 @@ using Newtonsoft.Json.Linq; -namespace Keen.Core.EventCache +namespace Keen.EventCache { /// /// CachedEvent is a container for user event data which associates the diff --git a/Keen.NetStandard/DataEnrichment/EventAddOn.cs b/Keen/DataEnrichment/EventAddOn.cs similarity index 99% rename from Keen.NetStandard/DataEnrichment/EventAddOn.cs rename to Keen/DataEnrichment/EventAddOn.cs index f8a8e3e..a79366b 100644 --- a/Keen.NetStandard/DataEnrichment/EventAddOn.cs +++ b/Keen/DataEnrichment/EventAddOn.cs @@ -1,8 +1,9 @@ using System.Collections.Generic; +using Keen.Core; using Newtonsoft.Json; -namespace Keen.Core.DataEnrichment +namespace Keen.DataEnrichment { /// /// Represents a Data Enrichment add-on. diff --git a/Keen.NetStandard/Dataset/DatasetDefinition.cs b/Keen/Dataset/DatasetDefinition.cs similarity index 97% rename from Keen.NetStandard/Dataset/DatasetDefinition.cs rename to Keen/Dataset/DatasetDefinition.cs index ba1d10d..1f0f44f 100644 --- a/Keen.NetStandard/Dataset/DatasetDefinition.cs +++ b/Keen/Dataset/DatasetDefinition.cs @@ -1,10 +1,11 @@ using System; using System.Collections.Generic; using System.Linq; -using Keen.Core.Query; +using Keen.Core; +using Keen.Query; -namespace Keen.Core.Dataset +namespace Keen.Dataset { public class DatasetDefinition { diff --git a/Keen.NetStandard/Dataset/DatasetDefinitionCollection.cs b/Keen/Dataset/DatasetDefinitionCollection.cs similarity index 96% rename from Keen.NetStandard/Dataset/DatasetDefinitionCollection.cs rename to Keen/Dataset/DatasetDefinitionCollection.cs index dc9aa2c..13e9e57 100644 --- a/Keen.NetStandard/Dataset/DatasetDefinitionCollection.cs +++ b/Keen/Dataset/DatasetDefinitionCollection.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; -namespace Keen.Core.Dataset +namespace Keen.Dataset { /// /// A model for a collection of DatasetDefinitions with paging information. diff --git a/Keen.NetStandard/Dataset/Datasets.cs b/Keen/Dataset/Datasets.cs similarity index 99% rename from Keen.NetStandard/Dataset/Datasets.cs rename to Keen/Dataset/Datasets.cs index f14224a..ccecd60 100644 --- a/Keen.NetStandard/Dataset/Datasets.cs +++ b/Keen/Dataset/Datasets.cs @@ -3,12 +3,13 @@ using System.Linq; using System.Net; using System.Threading.Tasks; +using Keen.Core; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Serialization; -namespace Keen.Core.Dataset +namespace Keen.Dataset { /// /// Datasets implements the IDataset interface which represents the Keen.IO Cached Datasets diff --git a/Keen.NetStandard/Dataset/IDataset.cs b/Keen/Dataset/IDataset.cs similarity index 98% rename from Keen.NetStandard/Dataset/IDataset.cs rename to Keen/Dataset/IDataset.cs index d7fe6e4..f623c3a 100644 --- a/Keen.NetStandard/Dataset/IDataset.cs +++ b/Keen/Dataset/IDataset.cs @@ -3,7 +3,7 @@ using Newtonsoft.Json.Linq; -namespace Keen.Core.Dataset +namespace Keen.Dataset { public interface IDataset { diff --git a/Keen.NetStandard/Dataset/QueryDefinitionExtensions.cs b/Keen/Dataset/QueryDefinitionExtensions.cs similarity index 93% rename from Keen.NetStandard/Dataset/QueryDefinitionExtensions.cs rename to Keen/Dataset/QueryDefinitionExtensions.cs index ea8b62b..a5abdeb 100644 --- a/Keen.NetStandard/Dataset/QueryDefinitionExtensions.cs +++ b/Keen/Dataset/QueryDefinitionExtensions.cs @@ -1,7 +1,8 @@ -using Keen.Core.Query; +using Keen.Core; +using Keen.Query; -namespace Keen.Core.Dataset +namespace Keen.Dataset { internal static class QueryDefinitionExtensions { diff --git a/Keen.NetStandard/DynamicPropertyValue.cs b/Keen/DynamicPropertyValue.cs similarity index 100% rename from Keen.NetStandard/DynamicPropertyValue.cs rename to Keen/DynamicPropertyValue.cs diff --git a/Keen.NetStandard/Event.cs b/Keen/Event.cs similarity index 99% rename from Keen.NetStandard/Event.cs rename to Keen/Event.cs index 67ce730..9307686 100644 --- a/Keen.NetStandard/Event.cs +++ b/Keen/Event.cs @@ -2,7 +2,7 @@ using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; -using Keen.Core.EventCache; +using Keen.EventCache; using Newtonsoft.Json.Linq; diff --git a/Keen.NetStandard/EventCacheMemory.cs b/Keen/EventCacheMemory.cs similarity index 97% rename from Keen.NetStandard/EventCacheMemory.cs rename to Keen/EventCacheMemory.cs index d4624fa..be5f0b5 100644 --- a/Keen.NetStandard/EventCacheMemory.cs +++ b/Keen/EventCacheMemory.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; -using Keen.Core.EventCache; +using Keen.EventCache; namespace Keen.Core diff --git a/Keen.NetStandard/EventCachePortable.cs b/Keen/EventCachePortable.cs similarity index 99% rename from Keen.NetStandard/EventCachePortable.cs rename to Keen/EventCachePortable.cs index 3bfa9fa..71945b9 100644 --- a/Keen.NetStandard/EventCachePortable.cs +++ b/Keen/EventCachePortable.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -using Keen.Core.EventCache; +using Keen.EventCache; using Newtonsoft.Json.Linq; diff --git a/Keen.NetStandard/EventCollection.cs b/Keen/EventCollection.cs similarity index 100% rename from Keen.NetStandard/EventCollection.cs rename to Keen/EventCollection.cs diff --git a/Keen.NetStandard/HttpClientCache.cs b/Keen/HttpClientCache.cs similarity index 100% rename from Keen.NetStandard/HttpClientCache.cs rename to Keen/HttpClientCache.cs diff --git a/Keen.NetStandard/IDynamicPropertyValue.cs b/Keen/IDynamicPropertyValue.cs similarity index 100% rename from Keen.NetStandard/IDynamicPropertyValue.cs rename to Keen/IDynamicPropertyValue.cs diff --git a/Keen.NetStandard/IEvent.cs b/Keen/IEvent.cs similarity index 95% rename from Keen.NetStandard/IEvent.cs rename to Keen/IEvent.cs index 6f08416..c5b1f88 100644 --- a/Keen.NetStandard/IEvent.cs +++ b/Keen/IEvent.cs @@ -1,6 +1,6 @@ using System.Collections.Generic; using System.Threading.Tasks; -using Keen.Core.EventCache; +using Keen.EventCache; using Newtonsoft.Json.Linq; diff --git a/Keen.NetStandard/IEventCache.cs b/Keen/IEventCache.cs similarity index 85% rename from Keen.NetStandard/IEventCache.cs rename to Keen/IEventCache.cs index 6a3592e..9c69d99 100644 --- a/Keen.NetStandard/IEventCache.cs +++ b/Keen/IEventCache.cs @@ -1,7 +1,7 @@ using System.Threading.Tasks; -namespace Keen.Core.EventCache +namespace Keen.EventCache { public interface IEventCache { diff --git a/Keen.NetStandard/IEventCollection.cs b/Keen/IEventCollection.cs similarity index 100% rename from Keen.NetStandard/IEventCollection.cs rename to Keen/IEventCollection.cs diff --git a/Keen.NetStandard/IHttpClientProvider.cs b/Keen/IHttpClientProvider.cs similarity index 100% rename from Keen.NetStandard/IHttpClientProvider.cs rename to Keen/IHttpClientProvider.cs diff --git a/Keen.NetStandard/IKeenHttpClient.cs b/Keen/IKeenHttpClient.cs similarity index 100% rename from Keen.NetStandard/IKeenHttpClient.cs rename to Keen/IKeenHttpClient.cs diff --git a/Keen.NetStandard/IKeenHttpClientProvider.cs b/Keen/IKeenHttpClientProvider.cs similarity index 100% rename from Keen.NetStandard/IKeenHttpClientProvider.cs rename to Keen/IKeenHttpClientProvider.cs diff --git a/Keen.NetStandard/IProjectSettings.cs b/Keen/IProjectSettings.cs similarity index 100% rename from Keen.NetStandard/IProjectSettings.cs rename to Keen/IProjectSettings.cs diff --git a/Keen.NetStandard/Keen.NetStandard.csproj b/Keen/Keen.csproj similarity index 98% rename from Keen.NetStandard/Keen.NetStandard.csproj rename to Keen/Keen.csproj index da7e1d0..604a2bf 100644 --- a/Keen.NetStandard/Keen.NetStandard.csproj +++ b/Keen/Keen.csproj @@ -3,7 +3,7 @@ netstandard2.0;net45 Debug;Release;netfx David Knaack, Brian Baumhover, Justin Mason - 0.3.17 + 0.4.0 Keen IO Keen IO .NET SDK Keen IO is an analytics API for modern developers. Track any event: signups, upgrades, impressions, purchases, powerups, errors, shares... Keen IO stores events in arbitrary JSON format, automatically ingesting any new events and rich custom properties you send. Our elegant query APIs make it straightforward to run counts, sums, segmentation, and more. diff --git a/Keen.NetStandard/KeenClient.cs b/Keen/KeenClient.cs similarity index 99% rename from Keen.NetStandard/KeenClient.cs rename to Keen/KeenClient.cs index a230f95..8fc8ba1 100644 --- a/Keen.NetStandard/KeenClient.cs +++ b/Keen/KeenClient.cs @@ -3,10 +3,10 @@ using System.Diagnostics; using System.Linq; using System.Threading.Tasks; -using Keen.Core.DataEnrichment; -using Keen.Core.Dataset; -using Keen.Core.EventCache; -using Keen.Core.Query; +using Keen.DataEnrichment; +using Keen.Dataset; +using Keen.EventCache; +using Keen.Query; using Newtonsoft.Json.Linq; diff --git a/Keen.NetStandard/KeenConstants.cs b/Keen/KeenConstants.cs similarity index 100% rename from Keen.NetStandard/KeenConstants.cs rename to Keen/KeenConstants.cs diff --git a/Keen.NetStandard/KeenException.cs b/Keen/KeenException.cs similarity index 99% rename from Keen.NetStandard/KeenException.cs rename to Keen/KeenException.cs index c5a215f..ae5b2e8 100644 --- a/Keen.NetStandard/KeenException.cs +++ b/Keen/KeenException.cs @@ -1,6 +1,6 @@ using System; using System.Collections.Generic; -using Keen.Core.EventCache; +using Keen.EventCache; namespace Keen.Core diff --git a/Keen.NetStandard/KeenHttpClient.cs b/Keen/KeenHttpClient.cs similarity index 100% rename from Keen.NetStandard/KeenHttpClient.cs rename to Keen/KeenHttpClient.cs diff --git a/Keen.NetStandard/KeenHttpClientFactory.cs b/Keen/KeenHttpClientFactory.cs similarity index 100% rename from Keen.NetStandard/KeenHttpClientFactory.cs rename to Keen/KeenHttpClientFactory.cs diff --git a/Keen.NetStandard/KeenHttpClientProvider.cs b/Keen/KeenHttpClientProvider.cs similarity index 100% rename from Keen.NetStandard/KeenHttpClientProvider.cs rename to Keen/KeenHttpClientProvider.cs diff --git a/Keen.NetStandard/KeenUtil.cs b/Keen/KeenUtil.cs similarity index 100% rename from Keen.NetStandard/KeenUtil.cs rename to Keen/KeenUtil.cs diff --git a/Keen.NetStandard/ProjectSettingsProvider.cs b/Keen/ProjectSettingsProvider.cs similarity index 100% rename from Keen.NetStandard/ProjectSettingsProvider.cs rename to Keen/ProjectSettingsProvider.cs diff --git a/Keen.NetStandard/ProjectSettingsProviderEnv.cs b/Keen/ProjectSettingsProviderEnv.cs similarity index 100% rename from Keen.NetStandard/ProjectSettingsProviderEnv.cs rename to Keen/ProjectSettingsProviderEnv.cs diff --git a/Keen.NetStandard/ProjectSettingsProviderFile.cs b/Keen/ProjectSettingsProviderFile.cs similarity index 100% rename from Keen.NetStandard/ProjectSettingsProviderFile.cs rename to Keen/ProjectSettingsProviderFile.cs diff --git a/Keen/Properties/AssemblyInfo.cs b/Keen/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..4e1f23e --- /dev/null +++ b/Keen/Properties/AssemblyInfo.cs @@ -0,0 +1,4 @@ +using System.Runtime.CompilerServices; + + +[assembly: InternalsVisibleTo("Keen.Test")] diff --git a/Keen.NetStandard/Query/FunnelResult.cs b/Keen/Query/FunnelResult.cs similarity index 95% rename from Keen.NetStandard/Query/FunnelResult.cs rename to Keen/Query/FunnelResult.cs index f5b0329..34041b6 100644 --- a/Keen.NetStandard/Query/FunnelResult.cs +++ b/Keen/Query/FunnelResult.cs @@ -2,7 +2,7 @@ using Newtonsoft.Json; -namespace Keen.Core.Query +namespace Keen.Query { public class FunnelResult { diff --git a/Keen.NetStandard/Query/FunnelResultStep.cs b/Keen/Query/FunnelResultStep.cs similarity index 98% rename from Keen.NetStandard/Query/FunnelResultStep.cs rename to Keen/Query/FunnelResultStep.cs index 7ba5e4c..92b99cf 100644 --- a/Keen.NetStandard/Query/FunnelResultStep.cs +++ b/Keen/Query/FunnelResultStep.cs @@ -2,7 +2,7 @@ using Newtonsoft.Json; -namespace Keen.Core.Query +namespace Keen.Query { public class FunnelResultStep { diff --git a/Keen.NetStandard/Query/FunnelStep.cs b/Keen/Query/FunnelStep.cs similarity index 99% rename from Keen.NetStandard/Query/FunnelStep.cs rename to Keen/Query/FunnelStep.cs index ce3d710..35e70b1 100644 --- a/Keen.NetStandard/Query/FunnelStep.cs +++ b/Keen/Query/FunnelStep.cs @@ -2,7 +2,7 @@ using Newtonsoft.Json; -namespace Keen.Core.Query +namespace Keen.Query { /// /// Represents one step in a funnel query. See the Keen.IO API for details on how to perform a funnel query. diff --git a/Keen.NetStandard/Query/IQueries.cs b/Keen/Query/IQueries.cs similarity index 99% rename from Keen.NetStandard/Query/IQueries.cs rename to Keen/Query/IQueries.cs index cc275a7..a6e328e 100644 --- a/Keen.NetStandard/Query/IQueries.cs +++ b/Keen/Query/IQueries.cs @@ -3,7 +3,7 @@ using Newtonsoft.Json.Linq; -namespace Keen.Core.Query +namespace Keen.Query { public interface IQueries { diff --git a/Keen.NetStandard/Query/IQueryTimeframe.cs b/Keen/Query/IQueryTimeframe.cs similarity index 67% rename from Keen.NetStandard/Query/IQueryTimeframe.cs rename to Keen/Query/IQueryTimeframe.cs index 8416b45..648b25e 100644 --- a/Keen.NetStandard/Query/IQueryTimeframe.cs +++ b/Keen/Query/IQueryTimeframe.cs @@ -1,5 +1,5 @@ -namespace Keen.Core.Query +namespace Keen.Query { public interface IQueryTimeframe { diff --git a/Keen.NetStandard/Query/MultiAnalysisParam.cs b/Keen/Query/MultiAnalysisParam.cs similarity index 98% rename from Keen.NetStandard/Query/MultiAnalysisParam.cs rename to Keen/Query/MultiAnalysisParam.cs index b086e0d..14292dc 100644 --- a/Keen.NetStandard/Query/MultiAnalysisParam.cs +++ b/Keen/Query/MultiAnalysisParam.cs @@ -1,5 +1,5 @@ -namespace Keen.Core.Query +namespace Keen.Query { public sealed class MultiAnalysisParam { diff --git a/Keen.NetStandard/Query/Queries.cs b/Keen/Query/Queries.cs similarity index 99% rename from Keen.NetStandard/Query/Queries.cs rename to Keen/Query/Queries.cs index 8461245..9af7950 100644 --- a/Keen.NetStandard/Query/Queries.cs +++ b/Keen/Query/Queries.cs @@ -2,11 +2,12 @@ using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; +using Keen.Core; using Newtonsoft.Json; using Newtonsoft.Json.Linq; -namespace Keen.Core.Query +namespace Keen.Query { /// /// Queries implements the IQueries interface which represents the Keen.IO Query API methods. diff --git a/Keen.NetStandard/Query/QueryAbsoluteTimeframe.cs b/Keen/Query/QueryAbsoluteTimeframe.cs similarity index 98% rename from Keen.NetStandard/Query/QueryAbsoluteTimeframe.cs rename to Keen/Query/QueryAbsoluteTimeframe.cs index 7a0d762..f080d3a 100644 --- a/Keen.NetStandard/Query/QueryAbsoluteTimeframe.cs +++ b/Keen/Query/QueryAbsoluteTimeframe.cs @@ -3,7 +3,7 @@ using Newtonsoft.Json.Linq; -namespace Keen.Core.Query +namespace Keen.Query { /// /// A pair of dates representing a time interval. diff --git a/Keen.NetStandard/Query/QueryDefinition.cs b/Keen/Query/QueryDefinition.cs similarity index 98% rename from Keen.NetStandard/Query/QueryDefinition.cs rename to Keen/Query/QueryDefinition.cs index 1522850..d195108 100644 --- a/Keen.NetStandard/Query/QueryDefinition.cs +++ b/Keen/Query/QueryDefinition.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; -namespace Keen.Core.Query +namespace Keen.Query { /// /// Holds information describing the query that is cached within a cached dataset. diff --git a/Keen.NetStandard/Query/QueryFilter.cs b/Keen/Query/QueryFilter.cs similarity index 99% rename from Keen.NetStandard/Query/QueryFilter.cs rename to Keen/Query/QueryFilter.cs index d2ae0b8..5428a09 100644 --- a/Keen.NetStandard/Query/QueryFilter.cs +++ b/Keen/Query/QueryFilter.cs @@ -2,7 +2,7 @@ using Newtonsoft.Json; -namespace Keen.Core.Query +namespace Keen.Query { /// /// Represents a filter that can be applied to a query. diff --git a/Keen.NetStandard/Query/QueryGroupValue.cs b/Keen/Query/QueryGroupValue.cs similarity index 98% rename from Keen.NetStandard/Query/QueryGroupValue.cs rename to Keen/Query/QueryGroupValue.cs index 498ee87..394bf4a 100644 --- a/Keen.NetStandard/Query/QueryGroupValue.cs +++ b/Keen/Query/QueryGroupValue.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; -namespace Keen.Core.Query +namespace Keen.Query { /// /// Represents the values from a query performed with a groupby. diff --git a/Keen.NetStandard/Query/QueryInterval.cs b/Keen/Query/QueryInterval.cs similarity index 99% rename from Keen.NetStandard/Query/QueryInterval.cs rename to Keen/Query/QueryInterval.cs index d60b731..525ad08 100644 --- a/Keen.NetStandard/Query/QueryInterval.cs +++ b/Keen/Query/QueryInterval.cs @@ -1,5 +1,5 @@ -namespace Keen.Core.Query +namespace Keen.Query { /// /// Provides values for interval query parameter diff --git a/Keen.NetStandard/Query/QueryIntervalValue.cs b/Keen/Query/QueryIntervalValue.cs similarity index 98% rename from Keen.NetStandard/Query/QueryIntervalValue.cs rename to Keen/Query/QueryIntervalValue.cs index 1dc3585..775ad62 100644 --- a/Keen.NetStandard/Query/QueryIntervalValue.cs +++ b/Keen/Query/QueryIntervalValue.cs @@ -2,7 +2,7 @@ using System.Collections.Generic; -namespace Keen.Core.Query +namespace Keen.Query { /// /// Represents a set of values from a query performed with an interval parameter. diff --git a/Keen.NetStandard/Query/QueryRelativeTimeframe.cs b/Keen/Query/QueryRelativeTimeframe.cs similarity index 99% rename from Keen.NetStandard/Query/QueryRelativeTimeframe.cs rename to Keen/Query/QueryRelativeTimeframe.cs index 084c36b..87c17fa 100644 --- a/Keen.NetStandard/Query/QueryRelativeTimeframe.cs +++ b/Keen/Query/QueryRelativeTimeframe.cs @@ -2,7 +2,7 @@ using Newtonsoft.Json; -namespace Keen.Core.Query +namespace Keen.Query { /// /// Provides values for relative timeframe query parameter. diff --git a/Keen.NetStandard/Query/QueryType.cs b/Keen/Query/QueryType.cs similarity index 98% rename from Keen.NetStandard/Query/QueryType.cs rename to Keen/Query/QueryType.cs index d038fa3..ba62f19 100644 --- a/Keen.NetStandard/Query/QueryType.cs +++ b/Keen/Query/QueryType.cs @@ -1,5 +1,5 @@ -namespace Keen.Core.Query +namespace Keen.Query { public sealed class QueryType { diff --git a/Keen.NetStandard/Query/TimeframeConverter.cs b/Keen/Query/TimeframeConverter.cs similarity index 98% rename from Keen.NetStandard/Query/TimeframeConverter.cs rename to Keen/Query/TimeframeConverter.cs index c2eccbf..c4a1eb7 100644 --- a/Keen.NetStandard/Query/TimeframeConverter.cs +++ b/Keen/Query/TimeframeConverter.cs @@ -3,7 +3,7 @@ using Newtonsoft.Json.Linq; -namespace Keen.Core.Query +namespace Keen.Query { /// /// Used for converting IQueryTimeframe instances to/from JSON. diff --git a/Keen.NetStandard/ScopedKey.cs b/Keen/ScopedKey.cs similarity index 100% rename from Keen.NetStandard/ScopedKey.cs rename to Keen/ScopedKey.cs diff --git a/NewSemVer.ps1 b/NewSemVer.ps1 index a7d1b79..d0cd35e 100644 --- a/NewSemVer.ps1 +++ b/NewSemVer.ps1 @@ -25,7 +25,7 @@ Print usage info. #> function Usage { "Updates the Version in the .csproj file. Then, tries to create a new NuGet package, which will" - "fail if nuget.exe isn't in the PATH or the script's directory.`n" + "fail if dotnet core tools aren't installed.`n" ".\NewSemVer.ps1 `n" " The version number to set, for example: 1.2.3" " If prelease/metadata info (e.g. 1.2.3-beta) is provided, only " @@ -48,7 +48,7 @@ function Update-AssemblyVersionAttributes ([string] $version) { $majMinPatchVersion = Get-MajMinPatchVersion($version) $newNetStandardVersion = "$majMinPatchVersion" - Get-ChildItem -r -filter .\* -Include Keen.NetStandard.csproj | ForEach-Object { + Get-ChildItem -r -filter .\* -Include Keen.csproj | ForEach-Object { $filename = $_.Directory.ToString() + [IO.Path]::DirectorySeparatorChar + $_.Name "Setting version to $version in $filename" @@ -71,7 +71,7 @@ Update-AssemblyVersionAttributes $version # Create another .nupkg for the .NET Standard stuff based on the .csproj, which will be the only .nupkg going forward -& pushd .\Keen.NetStandard +& pushd .\Keen & dotnet clean & dotnet pack -c Release & popd