|
|
|
@ -1,4 +1,5 @@
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using DeskMetrics;
|
|
|
|
|
using Moq;
|
|
|
|
|
using NUnit.Framework;
|
|
|
|
@ -19,6 +20,12 @@ namespace NzbDrone.Core.Test.ProviderTests.AnalyticsProviderTests
|
|
|
|
|
Mocker.GetMock<ConfigProvider>().SetupGet(c => c.UpdateUrl).Returns(UpdateProvider.DEFAULT_UPDATE_URL);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private void WithStageClient()
|
|
|
|
|
{
|
|
|
|
|
Mocker.SetConstant(new DeskMetricsClient(Guid.NewGuid().ToString(), AnalyticsProvider.DESKMETRICS_TEST_ID, new Version(9, 9, 9)));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Test]
|
|
|
|
|
public void checkpoint_should_stop_existing_start_then_start_again()
|
|
|
|
|
{
|
|
|
|
@ -27,8 +34,8 @@ namespace NzbDrone.Core.Test.ProviderTests.AnalyticsProviderTests
|
|
|
|
|
|
|
|
|
|
provider.Checkpoint();
|
|
|
|
|
|
|
|
|
|
Mocker.GetMock<IDeskMetricsClient>().Verify(c=>c.Start(), Times.Once());
|
|
|
|
|
Mocker.GetMock<IDeskMetricsClient>().Verify(c=>c.Stop(), Times.Once());
|
|
|
|
|
Mocker.GetMock<IDeskMetricsClient>().Verify(c => c.Start(), Times.Once());
|
|
|
|
|
Mocker.GetMock<IDeskMetricsClient>().Verify(c => c.Stop(), Times.Once());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Test]
|
|
|
|
@ -46,7 +53,7 @@ namespace NzbDrone.Core.Test.ProviderTests.AnalyticsProviderTests
|
|
|
|
|
[Test]
|
|
|
|
|
public void new_install_should_be_registered()
|
|
|
|
|
{
|
|
|
|
|
EnviromentProvider.IsNewInstall = true;
|
|
|
|
|
EnviromentProvider.RegisterNewInstall = true;
|
|
|
|
|
|
|
|
|
|
var provider = Mocker.Resolve<AnalyticsProvider>();
|
|
|
|
|
|
|
|
|
@ -55,10 +62,24 @@ namespace NzbDrone.Core.Test.ProviderTests.AnalyticsProviderTests
|
|
|
|
|
Mocker.GetMock<IDeskMetricsClient>().Verify(c => c.RegisterInstall(), Times.Once());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Test]
|
|
|
|
|
public void new_install_should_only_be_registered_on_first_call()
|
|
|
|
|
{
|
|
|
|
|
EnviromentProvider.RegisterNewInstall = true;
|
|
|
|
|
|
|
|
|
|
var provider = Mocker.Resolve<AnalyticsProvider>();
|
|
|
|
|
|
|
|
|
|
provider.Checkpoint();
|
|
|
|
|
provider.Checkpoint();
|
|
|
|
|
provider.Checkpoint();
|
|
|
|
|
|
|
|
|
|
Mocker.GetMock<IDeskMetricsClient>().Verify(c => c.RegisterInstall(), Times.Once());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Test]
|
|
|
|
|
public void upgrade_should_not_register_install()
|
|
|
|
|
{
|
|
|
|
|
EnviromentProvider.IsNewInstall = false;
|
|
|
|
|
EnviromentProvider.RegisterNewInstall = false;
|
|
|
|
|
|
|
|
|
|
var provider = Mocker.Resolve<AnalyticsProvider>();
|
|
|
|
|
|
|
|
|
@ -71,7 +92,7 @@ namespace NzbDrone.Core.Test.ProviderTests.AnalyticsProviderTests
|
|
|
|
|
[Test]
|
|
|
|
|
public void shouldnt_register_anything_if_not_on_master_branch()
|
|
|
|
|
{
|
|
|
|
|
EnviromentProvider.IsNewInstall = false;
|
|
|
|
|
EnviromentProvider.RegisterNewInstall = false;
|
|
|
|
|
|
|
|
|
|
Mocker.GetMock<ConfigProvider>().SetupGet(c => c.UpdateUrl).Returns("http://update.nzbdrone.com/master_auto/");
|
|
|
|
|
|
|
|
|
@ -83,7 +104,7 @@ namespace NzbDrone.Core.Test.ProviderTests.AnalyticsProviderTests
|
|
|
|
|
[Test]
|
|
|
|
|
public void new_install_shouldnt_register_anything_if_not_on_master_branch()
|
|
|
|
|
{
|
|
|
|
|
EnviromentProvider.IsNewInstall = true;
|
|
|
|
|
EnviromentProvider.RegisterNewInstall = true;
|
|
|
|
|
|
|
|
|
|
Mocker.GetMock<ConfigProvider>().SetupGet(c => c.UpdateUrl).Returns("http://update.nzbdrone.com/master_auto/");
|
|
|
|
|
|
|
|
|
@ -92,6 +113,16 @@ namespace NzbDrone.Core.Test.ProviderTests.AnalyticsProviderTests
|
|
|
|
|
Mocker.Resolve<AnalyticsProvider>().Checkpoint();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Test]
|
|
|
|
|
public void should_be_able_to_call_deskmetrics_using_test_appid()
|
|
|
|
|
{
|
|
|
|
|
EnviromentProvider.RegisterNewInstall = true;
|
|
|
|
|
Mocker.Resolve<AnalyticsProvider>().Checkpoint();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[TestCase("http://update.nzbdrone.com/master/")]
|
|
|
|
|
[TestCase("http://update.nzbdrone.com/master//")]
|
|
|
|
|