PageRenderTime 39ms CodeModel.GetById 14ms RepoModel.GetById 1ms app.codeStats 0ms

/src/tests/Text/MultiLineTextAttributeFixture.cs

https://github.com/sflanker/commandline
C# | 66 lines | 34 code | 7 blank | 25 comment | 0 complexity | 82c19519a547eef78973c5f22a93e299 MD5 | raw file
Possible License(s): Apache-2.0
  1. #region License
  2. //
  3. // Command Line Library: MultiLineTextAttributeFixture.cs
  4. //
  5. // Author:
  6. // Robert Kayman (rkayman@gmail.com) / https://github.com/rkayman
  7. //
  8. // Copyright (C) 2013 Robert Kayman
  9. //
  10. // Permission is hereby granted, free of charge, to any person obtaining a copy
  11. // of this software and associated documentation files (the "Software"), to deal
  12. // in the Software without restriction, including without limitation the rights
  13. // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  14. // copies of the Software, and to permit persons to whom the Software is
  15. // furnished to do so, subject to the following conditions:
  16. //
  17. // The above copyright notice and this permission notice shall be included in
  18. // all copies or substantial portions of the Software.
  19. //
  20. // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  21. // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  22. // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  23. // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  24. // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  25. // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  26. // THE SOFTWARE.
  27. #endregion
  28. #region Using Directives
  29. using CommandLine;
  30. using System;
  31. using System.Collections.Generic;
  32. using System.Linq;
  33. using System.Reflection;
  34. using Xunit;
  35. using FluentAssertions;
  36. #endregion
  37. namespace CommandLine.Text.Tests
  38. {
  39. public class MultiLineTextAttributeFixture
  40. {
  41. [Fact]
  42. public void Assembly_license_should_offer_read_only_property_named_value()
  43. {
  44. IEnumerable<AssemblyLicenseAttribute> licenseAttributes = this.GetType().Assembly.GetCustomAttributes(typeof(AssemblyLicenseAttribute), false) as AssemblyLicenseAttribute[];
  45. licenseAttributes.Count().Should().Be(1);
  46. string license = licenseAttributes.Single().Value;
  47. string[] lines = license.Split(new[] { Environment.NewLine }, StringSplitOptions.None);
  48. lines[0].Should().Be(@"This is free software. You may redistribute copies of it under the terms of");
  49. lines[1].Should().Be(@"the MIT License <http://www.opensource.org/licenses/mit-license.php>.");
  50. }
  51. [Fact]
  52. public void Assembly_usage_should_offer_read_only_property_named_value()
  53. {
  54. IEnumerable<AssemblyUsageAttribute> usageAttributes = this.GetType().Assembly.GetCustomAttributes(typeof(AssemblyUsageAttribute), false) as AssemblyUsageAttribute[];
  55. usageAttributes.Count().Should().Be(1);
  56. usageAttributes.Single().Value.Should().Be(@"[no usage, this is a dll]" + Environment.NewLine);
  57. }
  58. }
  59. }