Skip to content

Commit

Permalink
Added unit tests.
Browse files Browse the repository at this point in the history
  • Loading branch information
eajhnsn1 committed Jan 23, 2018
1 parent bf350a1 commit 952bf05
Showing 1 changed file with 34 additions and 1 deletion.
35 changes: 34 additions & 1 deletion src/Carnac.Tests/KeyProviderTests.cs
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
using System.Linq;
using System.Diagnostics;
using System.Linq;
using System.Reactive.Linq;
using System.Threading.Tasks;
using Carnac.Logic;
using Carnac.Logic.KeyMonitor;
using Carnac.Logic.Models;
using Microsoft.Win32;
using NSubstitute;
using SettingsProviderNet;
Expand Down Expand Up @@ -108,5 +110,36 @@ public async Task keyprovider_detects_windows_key_presses()
// assert
Assert.Equal(new[] { "Win", "e" }, processedKeys.Single().Input);
}

[Fact]
public async Task output_with_matching_filter()
{
// arrange
string currentProcessName = Process.GetCurrentProcess().ProcessName;
settingsProvider.GetSettings<PopupSettings>().Returns(new PopupSettings() { ProcessFilterExpression = currentProcessName });
var player = KeyStreams.LetterL();
var provider = new KeyProvider(player, passwordModeService, desktopLockEventService, settingsProvider);

// act
var processedKeys = await provider.GetKeyStream().ToList();

// assert
Assert.Equal(new[] { "l" }, processedKeys.Single().Input);
}

[Fact]
public async Task no_output_with_no_match_filter()
{
// arrange
settingsProvider.GetSettings<PopupSettings>().Returns(new PopupSettings() { ProcessFilterExpression = "notepad" });
var player = KeyStreams.LetterL();
var provider = new KeyProvider(player, passwordModeService, desktopLockEventService, settingsProvider);

// act
var processedKeys = await provider.GetKeyStream().ToList();

// assert
Assert.Equal(0, processedKeys.Count);
}
}
}

0 comments on commit 952bf05

Please sign in to comment.