public void DefaultValuesTest()
        {
            var userInfo = new EPuzzleUserInfo();
            Assert.AreNotEqual(default(Guid), userInfo.UserId);
            Assert.AreEqual("User's Name", userInfo.UserName);
            Assert.AreEqual(Difficulty.Normal, userInfo.Difficulty);
            Assert.AreEqual(20, userInfo.NumberOfQuestionsThatYouHaveToDoToday);
            Assert.False(userInfo.IgnoreDifficultyWhenGettingMondaiResults);
            Assert.AreEqual(1.0f, userInfo.TimeLimit.TimeLimitTweak);
            Assert.AreEqual(6.0f, userInfo.HoursToIgnoreMondaisThatYouHaveDone);
            //			Assert.AreEqual(TimeSpan.FromHours(6f), userInfo.GradeProcessor.Nodes.Last().Duration);
            Assert.AreEqual(new TimeSpan(3, 0, 0), userInfo.TimeToChangeDay);
            Assert.False(userInfo.UseNewMethodThatGetsChumonsThatYouHaveDoneToday);
            Assert.False(userInfo.DoesNotShowChumonsYouHaveNeverDone);
            Assert.False(userInfo.TreatChumonsThatWillExpireTodayAsOnesThatHaveAlreadyExpired);
            Assert.False(userInfo.HideChumonsYouHaveGotGradeAToday);

            //			Assert.AreEqual("名称未設定", userInfo.UserName);
            //			Assert.False(userInfo.LastDaimonInfos.Any());
            Assert.False(userInfo.MondaiResults.Any());

            Assert.AreEqual(24, userInfo.KeyBindings.Count());

            CollectionAssert.AreEquivalent(new []
            {
                new KeyBinding(Command.Action0, Keys.Return, false, false, false),
                new KeyBinding(Command.Action1, Keys.Back, false, false, false),
                new KeyBinding(Command.Action2, Keys.Tab, false, false, false),
                new KeyBinding(Command.Action3, Keys.Escape, false, false, false),
                new KeyBinding(Command.Action4, Keys.OemOpenBrackets, false, false, false),

                new KeyBinding(Command.Action5, Keys.F2, false, false, false),
                new KeyBinding(Command.Action6, Keys.F3, false, false, false),
                new KeyBinding(Command.Action7, Keys.F4, false, false, false),
                new KeyBinding(Command.Action8, Keys.F5, false, false, false),
                new KeyBinding(Command.Action9, Keys.F6, false, false, false),
                new KeyBinding(Command.Action10, Keys.F7, false, false, false),
                new KeyBinding(Command.Action11, Keys.F8, false, false, false),

                new KeyBinding(Command.ActionLeft, Keys.Left, false, true, false),
                new KeyBinding(Command.ActionRight, Keys.Right, false, true, false),
                new KeyBinding(Command.ActionUp, Keys.Up, false, true, false),
                new KeyBinding(Command.ActionDown, Keys.Down, false, true, false),
                new KeyBinding(Command.MoveLeft, Keys.Left, false, false, false),
                new KeyBinding(Command.MoveRight, Keys.Right, false, false, false),
                new KeyBinding(Command.MoveUp, Keys.Up, false, false, false),
                new KeyBinding(Command.MoveDown, Keys.Down, false, false, false),

                new KeyBinding(Command.MoveLeft, Keys.NumPad4, false, false, false),
                new KeyBinding(Command.MoveRight, Keys.NumPad6, false, false, false),
                new KeyBinding(Command.MoveUp, Keys.NumPad8, false, false, false),
                new KeyBinding(Command.MoveDown, Keys.NumPad2, false, false, false),
            }, userInfo.KeyBindings);

            Assert.AreEqual(Fish.eigotest.Command.Action0, userInfo.GetKeyBindings(Keys.Return).First().Command);
            Assert.AreEqual(Fish.eigotest.Command.Action1, userInfo.GetKeyBindings(Keys.Back).First().Command);
        }