protected void StartQuartermaster() { var compendium = new AffixCompendium(); var lexicon = new ItemTypeLexicon(); var parsers = new ModParsers(lexicon, compendium); _itemFactory = new PoeItemFactory(lexicon, parsers); _clipboardItemTextSource = new ClipboardItemTextSource(ClipboardMonitor, _itemTextChecker); Quartermaster = new QuartermasterStore(_itemFactory, _clipboardItemTextSource); QuartermasterViewModel = new QuartermasterViewModel(Substitute.For <IWindowManager>(), Quartermaster, ClipboardMonitor); QuartermasterViewModel.MonitorEvents(); }
public void Copying_game_text_into_clipboard_produces_correct_weapon(string expectedItemName, double dps) { var expectedItem = ExampleItemReflectionHelper.GetItem(Weapons.Instance, expectedItemName); var gameText = ExampleItemReflectionHelper.GetItemText(Weapons.Instance, expectedItemName); Console.WriteLine(gameText); CopyIntoClipboard(gameText); Quartermaster.Item.ShouldMatch(expectedItem.ToExpectedObject()); Quartermaster.Item.Damage.DPS.Should().Be(dps); QuartermasterViewModel.Item.ShouldMatch(expectedItem.ToExpectedObject()); QuartermasterViewModel.ShouldRaisePropertyChangeFor(x => x.Item); }
public void DPS_should_only_be_set_for_weapons(string gameItemText, bool isWeapon) { CopyIntoClipboard(gameItemText); if (isWeapon) { QuartermasterViewModel.Item.Damage.DPS.Should().NotBe(0.0); } else { QuartermasterViewModel.Item.Damage.DPS.Should().Be(0.0); } QuartermasterViewModel.ShouldRaisePropertyChangeFor(x => x.Item); }