示例#1
0
        public void EnumerateKnownStatesTest()
        {
            foreach (var state in MuiDbStates.Enumerate())
            {
                switch (state)
                {
                case MuiDbStates.New:
                case MuiDbStates.Translated:
                case MuiDbStates.Reviewed:
                case MuiDbStates.Final:
                    break;

                default:
                    Assert.Fail($"state {state} is unknown! Please adjust other tests as well!");
                    break;
                }
            }

            foreach (var state in Xlf12States.Enumerate())
            {
                switch (state)
                {
                case Xlf12States.Final:
                case Xlf12States.NeedsAdaptation:
                case Xlf12States.NeedsL10n:
                case Xlf12States.NeedsReviewAdaptation:
                case Xlf12States.NeedsReviewL10n:
                case Xlf12States.NeedsReviewTranslation:
                case Xlf12States.NeedsTranslation:
                case Xlf12States.New:
                case Xlf12States.SignedOff:
                case Xlf12States.Translated:
                    break;

                default:
                    Assert.Fail($"state {state} is unknown! Please adjust other tests as well!");
                    break;
                }
            }

            foreach (var state in Xlf20States.Enumerate())
            {
                switch (state)
                {
                case Xlf20States.Initial:
                case Xlf20States.Translated:
                case Xlf20States.Reviewed:
                case Xlf20States.Final:
                    break;

                default:
                    Assert.Fail($"state {state} is unknown! Please adjust other tests as well!");
                    break;
                }
            }
        }
示例#2
0
        public void ToMuiDBTest()
        {
            Assert.ThrowsException <ArgumentNullException>(() => StateConverter.ToMuiDB(null));
            StateConverter.ToMuiDB(string.Empty).Should().Be(MuiDbStates.New);
            StateConverter.ToMuiDB(" ").Should().Be(MuiDbStates.New);

            // MuiDB states
            foreach (var state in MuiDbStates.Enumerate())
            {
                StateConverter.ToMuiDB(state).Should().Be(state);
            }

            // XLIFF 1.2
            StateConverter.ToMuiDB(Xlf12States.New).Should().Be(MuiDbStates.New);
            StateConverter.ToMuiDB(Xlf12States.NeedsAdaptation).Should().Be(MuiDbStates.New);
            StateConverter.ToMuiDB(Xlf12States.NeedsReviewAdaptation).Should().Be(MuiDbStates.New);
            StateConverter.ToMuiDB(Xlf12States.NeedsL10n).Should().Be(MuiDbStates.New);
            StateConverter.ToMuiDB(Xlf12States.NeedsTranslation).Should().Be(MuiDbStates.New);
            StateConverter.ToMuiDB(Xlf12States.Translated).Should().Be(MuiDbStates.Translated);
            StateConverter.ToMuiDB(Xlf12States.NeedsReviewL10n).Should().Be(MuiDbStates.Translated);
            StateConverter.ToMuiDB(Xlf12States.NeedsReviewTranslation).Should().Be(MuiDbStates.Translated);
            StateConverter.ToMuiDB(Xlf12States.SignedOff).Should().Be(MuiDbStates.Reviewed);
            StateConverter.ToMuiDB(Xlf12States.Final).Should().Be(MuiDbStates.Final);

            // XLIFF 1.2 user states
            StateConverter.ToMuiDB(StateConverter.XlfV12UserStatePrefix).Should().Be(MuiDbStates.New, "All user specific states are mapped to the New state!");
            StateConverter.ToMuiDB(StateConverter.XlfV12UserStatePrefix + "hkjfhskfahsldf").Should().Be(MuiDbStates.New, "All user specific states are mapped to the New state!");

            // XLIFF 2.0
            StateConverter.ToMuiDB(Xlf20States.Initial).Should().Be(MuiDbStates.New);
            StateConverter.ToMuiDB(Xlf20States.Translated).Should().Be(MuiDbStates.Translated);
            StateConverter.ToMuiDB(Xlf20States.Reviewed).Should().Be(MuiDbStates.Reviewed);
            StateConverter.ToMuiDB(Xlf20States.Final).Should().Be(MuiDbStates.Final);

            Assert.ThrowsException <ArgumentOutOfRangeException>(() => StateConverter.ToMuiDB("asdsadsad"), "States that can not be mapped result in an ArgumentException");
        }