// ACT
            public override void Act(out object[] actual)
            {
                // Get 1st line
                var first_line = new PrivateProfileLine(this.RawLines[0]);

                // Get Null Section Flag
                var null_section = (first_line.LineType != PrivateProfileLineType.Section);

                // NEW Lines
                var lines = new PrivateProfileLine[this.RawLines.Length + (null_section ? 1 : 0)];

                // Add Null Section Line
                if (null_section)
                {
                    lines[0] = new PrivateProfileLine(null);
                }

                // for Lines
                for (int i = (null_section ? 1 : 0); i < lines.Length; i++)
                {
                    // NEW Line
                    lines[i] = new PrivateProfileLine(this.RawLines[i - (null_section ? 1 : 0)]);
                }


                // ACT: NEW Section
                var section = new PrivateProfileSection(lines);


                // GET Actual
                actual = SectionTestParameter.ConvertSectionToObjectArray(section);
            }
Example #2
0
            // GET Actual
            public object[] GetActual(SectionKeyValuePropertiesChangeTestTarget target)
            {
                // Prepare Line
                PrivateProfileLine line;

                switch (target)
                {
                case SectionKeyValuePropertiesChangeTestTarget.SectionName:

                    // New Line for SectionNamePropertyChangeTest
                    line = new PrivateProfileLine()
                    {
                        SectionName = this.BeforeChange
                    };

                    // ACT: Change value
                    line.SectionName = this.SectionName;

                    // RETURN
                    return(LineTestParameter.ConvertToObjectArray(line.LineType, line.RawLine, line.SectionName, null, null));

                case SectionKeyValuePropertiesChangeTestTarget.Key:

                    // New Line for KeyPropertyChangeTest
                    line = new PrivateProfileLine()
                    {
                        Key = this.BeforeChange, Value = this.Value
                    };

                    // ACT: Change KEY
                    line.Key = this.Key;

                    // RETURN
                    return(LineTestParameter.ConvertToObjectArray(line.LineType, line.RawLine, null, line.Key, line.Value));

                case SectionKeyValuePropertiesChangeTestTarget.Value:

                    // New Line for ValuePropertyChangeTest
                    line = new PrivateProfileLine()
                    {
                        Key = this.Key, Value = this.BeforeChange
                    };

                    // ACT: Change VALUE
                    line.Value = this.Value;

                    // RETURN
                    return(LineTestParameter.ConvertToObjectArray(line.LineType, line.RawLine, null, line.Key, line.Value));

                default:
                    throw new InternalTestFailureException();
                }
            }
Example #3
0
            // ACT
            public override void Act(out object[] actual)
            {
                var line = new PrivateProfileLine(this.RawLine);

                actual = this.LineType switch
                {
                    PrivateProfileLineType.NotInitialized => throw new InvalidOperationException(),
                          PrivateProfileLineType.Section => LineTestParameter.ConvertToObjectArray(line.LineType, line.RawLine, line.SectionName, null, null),
                          PrivateProfileLineType.Entry => LineTestParameter.ConvertToObjectArray(line.LineType, line.RawLine, null, line.Key, line.Value),
                          PrivateProfileLineType.Other => LineTestParameter.ConvertToObjectArray(line.LineType, line.RawLine, null, null, null),
                          _ => throw new InvalidOperationException(),
                };
            }
Example #4
0
            // ACT
            public override void Act(out object[] actual)
            {
                // Prepare PrivateProfileLine
                PrivateProfileLine line;

                switch (this.LineType)
                {
                case PrivateProfileLineType.NotInitialized:
                    throw new InvalidOperationException();

                case PrivateProfileLineType.Section:

                    // ACT
                    line = new PrivateProfileLine()
                    {
                        SectionName = this.SectionName
                    };

                    actual = LineTestParameter.ConvertToObjectArray(line.LineType, line.RawLine, line.SectionName, null, null);
                    break;

                case PrivateProfileLineType.Entry:

                    // ACT
                    line = new PrivateProfileLine()
                    {
                        Key = this.Key, Value = this.Value
                    };

                    actual = LineTestParameter.ConvertToObjectArray(line.LineType, line.RawLine, null, line.Key, line.Value);
                    break;

                case PrivateProfileLineType.Other:
                    throw new NotSupportedException();

                default:
                    throw new InvalidOperationException();
                }
            }
Example #5
0
 public void ValueNotInitializedTest() => _ = new PrivateProfileLine().Value;
Example #6
0
 public void KeyNotInitializedTest() => _ = new PrivateProfileLine().Key;
Example #7
0
 public void SectionNameNotInitializedTest() => _ = new PrivateProfileLine().SectionName;
Example #8
0
 // ACT: GET Actual
 public override void Act(out string actual) => actual = PrivateProfileLine.Trim(this.Before);
Example #9
0
 public void ValueInvalidOperationTest() => _ = new PrivateProfileLine()
 {
     SectionName = "SECTION"
 }.Value;
Example #10
0
 public void SectionNameInvalidOperationTest() => _ = new PrivateProfileLine()
 {
     Key = "KEY", Value = "VALUE"
 }.SectionName;
Example #11
0
 public void InvalidLineFormatTest(string line) => _ = new PrivateProfileLine(line);