public void WhenGameMangerCalledANewRoomShouldBeCreated()
        {
            _filenameHelper = Substitute.For <IFilenameHelper>();
            _wordService    = Substitute.For <IWordService>();

            var gameManager = new GameManager(new JoinRoomHelper(), new ShuffleHelper <string>(), new ScoreHelper(), _filenameHelper, _wordService);

            gameManager.SetupNewGame("newRoom", "Joshua", GameType.ThoughtsAndCrosses);

            Rooms
            .RoomsList
            .Should()
            .ContainKey("newRoom")
            .WhichValue
            .Users
            .Should()
            .ContainKey("Joshua")
            .WhichValue
            .ThoughtsAndCrosses
            .Should()
            .NotBeNull();

            Rooms
            .RoomsList["newRoom"]
            .ThoughtsAndCrosses
            .Should()
            .NotBeNull();

            gameManager
            .ActiveGameType
            .Should()
            .Be(GameType.ThoughtsAndCrosses);
        }
        public AmendDictionaryTests()
        {
            var data = new Dictionary
            {
                Words = new List <WordData>
                {
                    new WordData
                    {
                        Word   = "pelican",
                        Status = WordStatus.Temporary,
                        PermanentDefinition = null,
                        TemporaryDefinition = null
                    }
                }
            };

            _filenameHelper = Substitute.For <IFilenameHelper>();
            _filenameHelper
            .GetGuessedWordsFilename()
            .Returns(GuessedWordsFilename);
            _filenameHelper.GetDictionaryFilename().Returns(Filename);

            TestFileHelper.CreateCustomFile(Filename, data);
            _fileHelper  = new FileHelper();
            _wordService = new WordService(_wordExistenceHelper, _wordHelper, _wordDefinitionHelper, _fileHelper, _filenameHelper);
        }
示例#3
0
        public WordManagerTests()
        {
            TestFileHelper.Create(Filename);

            _filenameHelper = Substitute.For <IFilenameHelper>();
            _filenameHelper.GetDictionaryFilename().Returns(Filename);
            _wordService = Substitute.For <IWordService>();
        }
示例#4
0
 public GameManager(IJoinRoomHelper joinRoomHelper, IShuffleHelper <string> shuffleHelper, IScoreHelper scoreHelper, IFilenameHelper filenameHelper, IWordService wordService)
 {
     _joinRoomHelper = joinRoomHelper;
     _shuffleHelper  = shuffleHelper;
     _scoreHelper    = scoreHelper;
     _filenameHelper = filenameHelper;
     _wordService    = wordService;
 }
 public WordCategoryHelper(IFileHelper fileHelper, IFilenameHelper fileNameHelper)
 {
     _fileHelper     = fileHelper;
     _fileNameHelper = fileNameHelper;
     if (_dictionary == null)
     {
         _dictionary = _fileHelper.ReadDictionary(_fileNameHelper.GetDictionaryFilename());
     }
 }
示例#6
0
 public WordManager(IWordService wordService, IFilenameHelper filenameHelper, string word)
 {
     _wordService    = wordService;
     Word            = word;
     _filenameHelper = filenameHelper;
     Definition      = GetDefinition();
     Score           = CalculateWordScore();
     IsValid         = SetInitialValidity();
 }
        public WordServiceTests()
        {
            _filenameHelper = Substitute.For <IFilenameHelper>();
            _filenameHelper.GetDictionaryFilename().Returns(Filename);

            _wordHelper           = Substitute.For <IWordHelper>();
            _wordExistenceHelper  = Substitute.For <IWordExistenceHelper>();
            _wordDefinitionHelper = Substitute.For <IWordDefinitionHelper>();
            _fileHelper           = Substitute.For <IFileHelper>();
        }
        public UpdateExistingWordInDictionary()
        {
            _filenameHelper = Substitute.For <IFilenameHelper>();
            _filenameHelper
            .GetGuessedWordsFilename()
            .Returns(Filename);
            _filenameHelper.GetDictionaryFilename().Returns(Filename);

            TestFileHelper.Create(Filename);
            _fileHelper  = new FileHelper();
            _wordService = new WordService(_wordExistenceHelper, _wordHelper, _wordDefinitionHelper, _fileHelper, _filenameHelper);
        }
示例#9
0
        public AddWordToGuessedWordsTest()
        {
            _dictionary = new Dictionary
            {
                Words = new List <WordData>
                {
                    new WordData
                    {
                        Word = _words[0],
                        PermanentDefinition = null,
                        TemporaryDefinition = null,
                        Status = WordStatus.Permanent
                    },
                    new WordData
                    {
                        Word = _words[1],
                        PermanentDefinition = null,
                        TemporaryDefinition = null,
                        Status = WordStatus.Temporary
                    },
                    new WordData()
                    {
                        Word = _words[2],
                        PermanentDefinition = null,
                        TemporaryDefinition = null,
                        Status = WordStatus.Suffix
                    },
                    new WordData()
                    {
                        Word = _words[3],
                        PermanentDefinition = null,
                        TemporaryDefinition = null,
                        Status = WordStatus.DoesNotExist
                    }
                }
            };

            _filenameHelper = Substitute.For <IFilenameHelper>();
            _filenameHelper
            .GetGuessedWordsFilename()
            .Returns(GuessedWordsFilename);
            _filenameHelper.GetDictionaryFilename().Returns(DictionaryFilename);

            TestFileHelper.CreateCustomFile(GuessedWordsFilename, null);
            TestFileHelper.CreateCustomFile(DictionaryFilename, _dictionary);

            _wordService = new WordService(_wordExistenceHelper, _wordHelper, _wordDefinitionHelper, _fileHelper, _filenameHelper);
        }
示例#10
0
        public AddNewWordToDictionaryTests()
        {
            _wordDefinitionHelper = Substitute.For <IWordDefinitionHelper>();
            _wordExistenceHelper  = Substitute.For <IWordExistenceHelper>();
            _wordHelper           = Substitute.For <IWordHelper>();
            _fileHelper           = new FileHelper();
            _filenameHelper       = Substitute.For <IFilenameHelper>();
            _filenameHelper.GetDictionaryFilename().Returns(Filename);
            _filenameHelper.GetGuessedWordsFilename().Returns(Filename);

            if (File.Exists(Filename))
            {
                File.Delete(Filename);
            }

            TestFileHelper.Create(Filename);
        }
示例#11
0
        public LettersHub(IWordService wordService, IFileHelper fileHelper, IFilenameHelper filenameHelper, IJoinRoomHelper joinRoomHelper, IGameManager gameManager)
        {
            _wordService    = wordService;
            _fileHelper     = fileHelper;
            _filenameHelper = filenameHelper;
            _joinRoomHelper = joinRoomHelper;
            _gameManager    = gameManager;

            if (!File.Exists(_filenameHelper.GetDictionaryFilename()))
            {
                File.Create(_filenameHelper.GetDictionaryFilename());
            }

            if (!File.Exists(_filenameHelper.GetGuessedWordsFilename()))
            {
                File.Create(_filenameHelper.GetGuessedWordsFilename());
            }
        }
        public AutomaticallySetTemporaryDefinitions()
        {
            TestFileHelper.Create(Filename);

            var json = TestFileHelper.Read(Filename);

            _webDictionaryRequestHelper = Substitute.For <IWebDictionaryRequestHelper>();
            _wordExistenceHelper        = Substitute.For <IWordExistenceHelper>();
            _wordDefinitionHelper       = Substitute.For <IWordDefinitionHelper>();
            _fileHelper = new FileHelper();

            _filenameHelper = Substitute.For <IFilenameHelper>();
            _filenameHelper.GetGuessedWordsFilename().Returns(Filename);
            _filenameHelper.GetDictionaryFilename().Returns(Filename);

            _wordService = new WordService(_wordExistenceHelper, _wordHelper, _wordDefinitionHelper, _fileHelper, _filenameHelper);
            _dictionary  = _wordService.GetDictionary();
        }
示例#13
0
        public WordService(IWordExistenceHelper wordExistenceHelper, IWordHelper wordHelper, IWordDefinitionHelper wordDefinitionHelper, IFileHelper fileHelper, IFilenameHelper filenameHelper)
        {
            _wordExistenceHelper  = wordExistenceHelper;
            _wordHelper           = wordHelper;
            _wordDefinitionHelper = wordDefinitionHelper;
            _fileHelper           = fileHelper;
            _filenameHelper       = filenameHelper;

            if (_dictionary == null)
            {
                Console.WriteLine("Hello");
                _dictionary = _fileHelper.ReadDictionary(_filenameHelper.GetDictionaryFilename());
            }

            if (_guessedWords == null)
            {
                Console.WriteLine("Guessed words");
                var json = _fileHelper.ReadFile(_filenameHelper.GetGuessedWordsFilename());
                _guessedWords = JsonConvert.DeserializeObject <GuessedWords>(json) ?? new GuessedWords();
            }
        }
        public AutomaticallyAddNewWordToDictionaryTests()
        {
            _wordDefinitionHelper = Substitute.For <IWordDefinitionHelper>();
            _wordExistenceHelper  = Substitute.For <IWordExistenceHelper>();
            _wordHelper           = Substitute.For <IWordHelper>();
            _filenameHelper       = Substitute.For <IFilenameHelper>();
            _filenameHelper.GetDictionaryFilename().Returns(Filename);
            _filenameHelper.GetGuessedWordsFilename().Returns(Filename);
            _fileHelper = new FileHelper();


            if (File.Exists(Filename))
            {
                File.Delete(Filename);
            }

            TestFileHelper.Create(Filename);
            _wordService = new WordService(_wordExistenceHelper, _wordHelper, _wordDefinitionHelper, _fileHelper, _filenameHelper);
            var json = TestFileHelper.Read(Filename);

            _dictionary = _wordService.GetDictionary();
        }
示例#15
0
        public WordStatusTests()
        {
            _filenameHelper = Substitute.For <IFilenameHelper>();
            _filenameHelper
            .GetGuessedWordsFilename()
            .Returns(Filename);

            _filenameHelper
            .GetDictionaryFilename()
            .Returns(Filename);

            TestFileHelper.Create(Filename);
            var json = TestFileHelper.Read(Filename);

            _wordDefinitionHelper = Substitute.For <IWordDefinitionHelper>();
            _wordExistenceHelper  = Substitute.For <IWordExistenceHelper>();
            _wordHelper           = Substitute.For <IWordHelper>();
            _fileHelper           = new FileHelper();

            _wordService = new WordService(_wordExistenceHelper, _wordHelper, _wordDefinitionHelper, _fileHelper, _filenameHelper);
            _dictionary  = _wordService.GetDictionary();
        }
示例#16
0
 public UserWordGame(IWordService wordService, IFilenameHelper filenameHelper)
 {
     _wordService    = wordService;
     _filenameHelper = filenameHelper;
     WordList        = new Dictionary <string, WordManager>();
 }
示例#17
0
 public UserWordGameTests()
 {
     _filenameHelper = Substitute.For <IFilenameHelper>();
     _filenameHelper.GetDictionaryFilename().Returns(Filename);
     _wordService = Substitute.For <IWordService>();
 }