Exemplo n.º 1
0
        public void Parse_Returns_Null_When_LinkTarget_Is_Badly_Formed(
            string value)
        {
            var linkValue = LinkValue.Parse(value);

            Assert.Null(linkValue);
        }
Exemplo n.º 2
0
        public void AddLinkParam_Adds_Nothing_When_Param_Is_Null()
        {
            var linkValue = new LinkValue()
                            .AddLinkParam(null);

            Assert.Empty(linkValue.TargetAttributes);
        }
Exemplo n.º 3
0
        public void Parse_Returns_LinkValue(
            string value,
            LinkValue expected)
        {
            var actual = LinkValue.Parse(value);

            Assert.NotNull(actual);
            AssertEqual(
                expected,
                actual);
        }
Exemplo n.º 4
0
        public void AddLinkParam_Adds_RelationType()
        {
            var expected = new LinkParam
            {
                Key   = LinkParam.Rel,
                Value = "something something_else",
            };
            var linkValue = new LinkValue()
                            .AddLinkParam(expected);

            Assert.NotNull(linkValue.RelationType);
            Assert.Equal(
                new[] { "something", "something_else" },
                linkValue.RelationType.Relations);
        }
Exemplo n.º 5
0
        public void AddLinkParam_Adds_Anchor()
        {
            const string expected = "#anchor";
            var          param    = new LinkParam
            {
                Key   = LinkParam.Anchor,
                Value = expected,
            };
            var linkValue = new LinkValue()
                            .AddLinkParam(param);

            Assert.NotNull(linkValue.Anchor);
            Assert.Equal(
                expected,
                linkValue.Anchor);
        }
Exemplo n.º 6
0
        private static void AssertEqual(
            LinkValue expected,
            LinkValue actual)
        {
            Assert.Equal(
                expected.TargetUri,
                actual.TargetUri);
            Assert.Equal(
                expected.Anchor,
                actual.Anchor);

            AssertEqual(
                expected.RelationType,
                actual.RelationType);
            AssertEqual(
                expected.TargetAttributes,
                actual.TargetAttributes);
        }
        public static IHeaderDictionary AddWebLink(
            this IHeaderDictionary headers,
            LinkValue linkValue)
        {
            if (headers == null)
            {
                throw new ArgumentNullException(nameof(headers));
            }

            if (linkValue == null)
            {
                throw new ArgumentNullException(nameof(linkValue));
            }

            headers.Add(
                "Link",
                new StringValues(linkValue.ToString()));
            return(headers);
        }
Exemplo n.º 8
0
 public void Parse_Returns_Null_When_Value_Is_NullEmptyOrWhitespace(
     string value)
 {
     Assert.Null(LinkValue.Parse(value));
 }
Exemplo n.º 9
0
        private void RunH()
        {
            TimeSteps = new List <TimeSpan>();

            while (true)
            {
                var timeStep = EpanetNative.RunH();
                TimeSteps.Add(TimeSpan.FromSeconds(timeStep));
                for (int index = 1; index <= NodesCount; index++)
                {
                    var value = new NodeValue(TimeSpan.FromSeconds(timeStep));
                    value[NodeProperty.EN_ELEVATION]   = EpanetNative.GetNodeValue(index, NodeProperty.EN_ELEVATION);
                    value[NodeProperty.EN_BASEDEMAND]  = EpanetNative.GetNodeValue(index, NodeProperty.EN_BASEDEMAND);
                    value[NodeProperty.EN_PATTERN]     = EpanetNative.GetNodeValue(index, NodeProperty.EN_PATTERN);
                    value[NodeProperty.EN_EMITTER]     = EpanetNative.GetNodeValue(index, NodeProperty.EN_EMITTER);
                    value[NodeProperty.EN_INITQUAL]    = EpanetNative.GetNodeValue(index, NodeProperty.EN_INITQUAL);
                    value[NodeProperty.EN_SOURCEQUAL]  = EpanetNative.GetNodeValue(index, NodeProperty.EN_SOURCEQUAL);
                    value[NodeProperty.EN_SOURCEPAT]   = EpanetNative.GetNodeValue(index, NodeProperty.EN_SOURCEPAT);
                    value[NodeProperty.EN_SOURCETYPE]  = EpanetNative.GetNodeValue(index, NodeProperty.EN_SOURCETYPE);
                    value[NodeProperty.EN_TANKLEVEL]   = EpanetNative.GetNodeValue(index, NodeProperty.EN_TANKLEVEL);
                    value[NodeProperty.EN_DEMAND]      = EpanetNative.GetNodeValue(index, NodeProperty.EN_DEMAND);
                    value[NodeProperty.EN_HEAD]        = EpanetNative.GetNodeValue(index, NodeProperty.EN_HEAD);
                    value[NodeProperty.EN_PRESSURE]    = EpanetNative.GetNodeValue(index, NodeProperty.EN_PRESSURE);
                    value[NodeProperty.EN_QUALITY]     = EpanetNative.GetNodeValue(index, NodeProperty.EN_QUALITY);
                    value[NodeProperty.EN_SOURCEMASS]  = EpanetNative.GetNodeValue(index, NodeProperty.EN_SOURCEMASS);
                    value[NodeProperty.EN_INITVOLUME]  = EpanetNative.GetNodeValue(index, NodeProperty.EN_INITVOLUME);
                    value[NodeProperty.EN_MIXMODEL]    = EpanetNative.GetNodeValue(index, NodeProperty.EN_MIXMODEL);
                    value[NodeProperty.EN_MIXZONEVOL]  = EpanetNative.GetNodeValue(index, NodeProperty.EN_MIXZONEVOL);
                    value[NodeProperty.EN_TANKDIAM]    = EpanetNative.GetNodeValue(index, NodeProperty.EN_TANKDIAM);
                    value[NodeProperty.EN_MINVOLUME]   = EpanetNative.GetNodeValue(index, NodeProperty.EN_MINVOLUME);
                    value[NodeProperty.EN_VOLCURVE]    = EpanetNative.GetNodeValue(index, NodeProperty.EN_VOLCURVE);
                    value[NodeProperty.EN_MINLEVEL]    = EpanetNative.GetNodeValue(index, NodeProperty.EN_MINLEVEL);
                    value[NodeProperty.EN_MAXLEVEL]    = EpanetNative.GetNodeValue(index, NodeProperty.EN_MAXLEVEL);
                    value[NodeProperty.EN_MIXFRACTION] = EpanetNative.GetNodeValue(index, NodeProperty.EN_MIXFRACTION);
                    value[NodeProperty.EN_TANK_KBULK]  = EpanetNative.GetNodeValue(index, NodeProperty.EN_TANK_KBULK);

                    var node = GetNodeByIndex(index);
                    node.AddValue(value);
                }
                for (int index = 1; index <= LinksCount; index++)
                {
                    var value = new LinkValue(TimeSpan.FromSeconds(timeStep));
                    value[LinkProperty.EN_DIAMETER]    = EpanetNative.GetLinkValue(index, LinkProperty.EN_DIAMETER);
                    value[LinkProperty.EN_LENGTH]      = EpanetNative.GetLinkValue(index, LinkProperty.EN_LENGTH);
                    value[LinkProperty.EN_ROUGHNESS]   = EpanetNative.GetLinkValue(index, LinkProperty.EN_ROUGHNESS);
                    value[LinkProperty.EN_MINORLOSS]   = EpanetNative.GetLinkValue(index, LinkProperty.EN_MINORLOSS);
                    value[LinkProperty.EN_INITSTATUS]  = EpanetNative.GetLinkValue(index, LinkProperty.EN_INITSTATUS);
                    value[LinkProperty.EN_INITSETTING] = EpanetNative.GetLinkValue(index, LinkProperty.EN_INITSETTING);
                    value[LinkProperty.EN_KBULK]       = EpanetNative.GetLinkValue(index, LinkProperty.EN_KBULK);
                    value[LinkProperty.EN_KWALL]       = EpanetNative.GetLinkValue(index, LinkProperty.EN_KWALL);
                    value[LinkProperty.EN_FLOW]        = EpanetNative.GetLinkValue(index, LinkProperty.EN_FLOW);
                    value[LinkProperty.EN_VELOCITY]    = EpanetNative.GetLinkValue(index, LinkProperty.EN_VELOCITY);
                    value[LinkProperty.EN_HEADLOSS]    = EpanetNative.GetLinkValue(index, LinkProperty.EN_HEADLOSS);
                    value[LinkProperty.EN_STATUS]      = EpanetNative.GetLinkValue(index, LinkProperty.EN_STATUS);
                    value[LinkProperty.EN_SETTING]     = EpanetNative.GetLinkValue(index, LinkProperty.EN_SETTING);
                    value[LinkProperty.EN_ENERGY]      = EpanetNative.GetLinkValue(index, LinkProperty.EN_ENERGY);

                    var link = GetLinkByIndex(index);
                    link.AddValue(value);
                }
                if (EpanetNative.NextH() == 0)
                {
                    break;
                }
            }
        }
Exemplo n.º 10
0
 public override AWzImageProperty GetFromPath(string pPath)
 {
     return(LinkValue.GetFromPath(pPath));
 }