tests/DotNetCommon.Test/Extensions/EnumExtensionsTests.cs

(开头部分) 8KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using NUnit.Framework;
using Shouldly;
using System;
using System.Collections.Generic;
using System.Text;
using DotNetCommon.Extensions;

namespace DotNetCommon.Test.Extensions
{
    [TestFixture]
    public sealed class EnumExtensionsTests
    {
        [Test]
        public void EnumToDescriptionTest()
        {
            //普通枚举无特性
            EnumTest test = EnumTest.B;
            test.ToDescription().ShouldBe("B");

            //普通枚举有特性
            var test2 = EnumTest2.B;
            test2.ToDescription().ShouldBe("测试描述");
            test2 = EnumTest2.C;
            test2.ToDescription().ShouldBe("C");

            //位枚举无特性
            var test3 = EnumTest3.B | EnumTest3.C;
            test3.ToDescription().ShouldBe("B, C");

            //位枚举有特性
            var test4 = EnumTest4.B | EnumTest4.C;
            test4.ToDescription().ShouldBe("这是B, 这是C");

            //位枚举混合特性
            var test5 = EnumTest4.A | EnumTest4.B | EnumTest4.C;
            test5.ToDescription().ShouldBe("A, 这是B, 这是C");
        }

        /// <summary>
        /// ToCodeKeyDescriptionList
        /// </summary>
        [Test]
        public void ToCodeKeyDescriptionListTest()
        {
            EnumTest2 test = EnumTest2.B;
            var list = test.ToCodeKeyDescriptionList();
            list.Count.ShouldBe(3);
            list[0].code.ShouldBe(0);
            list[0].key.ShouldBe("A");
            list[0].desc.ShouldBe("A");

            list[1].code.ShouldBe(1);
            list[1].key.ShouldBe("B");
            list[1].desc.ShouldBe("测试描述");

            list[2].code.ShouldBe(2);
            list[2].key.ShouldBe("C");
            list[2].desc.ShouldBe("C");

            list = test.ToCodeKeyDescriptionList(false);
后面还有 220 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。