コード例 #1
0
ファイル: AnExtensions.cs プロジェクト: MovGP0/WebsitePoller
        public static SettingsLoader SettingsLoader(this IAn an)
        {
            var settingsManager = an.SettingsManager();
            var mapper          = an.Mapper();

            return(new SettingsLoader(settingsManager, mapper));
        }
コード例 #2
0
 public static IMore <string> Ant(this IAn <string> an)
 {
     return(an.Compose(
                actual =>
     {
         Expect(actual).To.Contain("ant");
     }));
 }
コード例 #3
0
ファイル: AnExtensions.cs プロジェクト: MovGP0/WebsitePoller
 public static AddressFieldParserResult AddressFieldParserResult(this IAn an)
 {
     return(new AddressFieldParserResult
     {
         City = "Wien",
         PostalCode = 1010,
         Street = "Gürtel Straße 3-2a/16"
     });
 }
コード例 #4
0
ファイル: AnExtensions.cs プロジェクト: MovGP0/WebsitePoller
        public static Container Container(this IAn an)
        {
            var container = new Container(rules => rules.WithoutThrowOnRegisteringDisposableTransient());

            container
            .SetupMappings()
            .SetupDependencies();
            return(container);
        }
コード例 #5
0
ファイル: AnExtensions.cs プロジェクト: MovGP0/WebsitePoller
        public static string AssemblyPath(this IAn an)
        {
            var result = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);

            if (result == null)
            {
                throw new Exception("Assembly path was null.");
            }
            return(result);
        }
コード例 #6
0
ファイル: AnExtensions.cs プロジェクト: MovGP0/WebsitePoller
        public static HtmlDocument EmptyHtmlDocument(this IAn an)
        {
            var assemblyPath = an.AssemblyPath();
            var documentPath = Path.Combine(assemblyPath, "empty.html");
            var document     = new HtmlDocument();

            using (var stream = File.OpenRead(documentPath))
            {
                document.Load(stream);
            }

            return(document);
        }
コード例 #7
0
ファイル: AnExtensions.cs プロジェクト: MovGP0/WebsitePoller
 public static AltbauWohnungInfo AltbauWohnungInfo2(this IAn an)
 {
     return(new AltbauWohnungInfo
     {
         City = "Wien",
         PostalCode = 1010,
         Eigenmittel = 10000m,
         MonatlicheKosten = 800m,
         Street = "Straße",
         Href = "/foo%20",
         NumberOfRooms = 3
     });
 }
コード例 #8
0
 public static void Ostrich(this IAn <object> continuation)
 {
     continuation.AddMatcher(
         o =>
     {
         var passed = o is Ostrich;
         return(new MatcherResult(
                    passed,
                    () => passed
                     ? "Expected not to get an Ostrich"
                     : "Expected to get an Ostrich"));
     });
 }
コード例 #9
0
ファイル: AnExtensions.cs プロジェクト: MovGP0/WebsitePoller
 public static Settings Settings(this IAn an)
 {
     return(new Settings
     {
         PostalAddress = an.PostalAddress(),
         From = new LocalTime(10, 20, 30),
         Till = new LocalTime(12, 23, 45),
         Cities = new[] { "Wien" },
         MaxEigenmittel = 10000m,
         Url = new Uri(@"/foo/bar", UriKind.Relative),
         MaxMonatlicheKosten = 800m,
         TimeZone = @"Europe/Vienna",
         PostalCodes = new [] { 1000, 1010 },
         MinNumberOfRooms = 3,
         PollingIntervallInSeconds = 20
     });
 }
コード例 #10
0
        public static HtmlNodeCollection TableRows(this IAn an)
        {
            var doc          = new HtmlDocument();
            var assemblyPath = an.AssemblyPath();
            var path         = Path.Combine(assemblyPath, "Parser", "table-rows.xml");

            using (var file = File.OpenRead(path))
                using (var fileReader = new StreamReader(file))
                {
                    var line = string.Empty;
                    while ((line = fileReader.ReadLine()) != null)
                    {
                        var row = HtmlNode.CreateNode(line);
                        doc.DocumentNode.AppendChild(row);
                    }
                }
            return(doc.DocumentNode.ChildNodes);
        }
コード例 #11
0
 public static void Ostrich <T>(this IAn <T> an)
 {
     an.AddMatcher(item =>
     {
         var asOstrich = item as Ostrich;
         var passed    = asOstrich != null &&
                         asOstrich.Legs == 2 &&
                         asOstrich.Habitat == Habitats.Savanna &&
                         asOstrich.Colors.Contains(Colors.Black) &&
                         asOstrich.Colors.Contains(Colors.White) &&
                         !asOstrich.Colors.Contains(Colors.Pink);
         var not = passed
             ? ""
             : "not ";
         return(new MatcherResult(
                    passed,
                    $"Expected {item} {not}to be an ostrich"
                    ));
     });
 }
コード例 #12
0
ファイル: AnExtensions.cs プロジェクト: MovGP0/WebsitePoller
 public static PostalAddress PostalAddress(this IAn an)
 {
     return(new PostalAddress
     {
         BirthDate = new DateTime(1980, 12, 31),
         PhoneNumber = "0664/123 45 67",
         FirstName = "Franz",
         FamilyName = "Mustermann",
         IsTenant = false,
         PostalCode = 2000,
         Street = "Straße",
         EmailAddress = "*****@*****.**",
         HouseNumber = "12a",
         Title = "",
         Salutation = "Herr",
         City = "Wien",
         StairsNumber = "4b",
         ApartmentNumber = "9c"
     });
 }
コード例 #13
0
ファイル: AnExtensions.cs プロジェクト: MovGP0/WebsitePoller
 public static VersionFromTillEqualityComparer VersionFromTillEqualityComparer(this IAn an)
 {
     return(new VersionFromTillEqualityComparer());
 }
コード例 #14
0
ファイル: AnExtensions.cs プロジェクト: MovGP0/WebsitePoller
 public static IResolver Resolver(this IAn an)
 {
     return(an.Container());
 }
コード例 #15
0
ファイル: AnExtensions.cs プロジェクト: MovGP0/WebsitePoller
 public static SettingsBaseEqualityComparer SettingsBaseEqualityComparer(this IAn an)
 {
     return(new SettingsBaseEqualityComparer());
 }
コード例 #16
0
ファイル: AnExtensions.cs プロジェクト: MovGP0/WebsitePoller
 public static IRegistrator Registrator(this IAn an)
 {
     return(an.Container());
 }
コード例 #17
0
ファイル: AnExtensions.cs プロジェクト: MovGP0/WebsitePoller
 public static HtmlDocumentComparer HtmlDocumentComparer(this IAn an)
 {
     return(new HtmlDocumentComparer());
 }
コード例 #18
0
ファイル: AnExtensions.cs プロジェクト: MovGP0/WebsitePoller
 public static SettingsManager SettingsManager(this IAn an)
 {
     return(SettingsManagerFactory.Value);
 }
コード例 #19
0
ファイル: AnExtensions.cs プロジェクト: MovGP0/WebsitePoller
        public static IMapper Mapper(this IAn an)
        {
            var resolver = an.Resolver();

            return(resolver.Resolve <IMapper>());
        }
コード例 #20
0
ファイル: AnExtensions.cs プロジェクト: MovGP0/WebsitePoller
 public static AltbauWohnungInfoEqualityComparer AltbauWohnungInfoEqualityComparer(this IAn an)
 {
     return(new AltbauWohnungInfoEqualityComparer());
 }
コード例 #21
0
ファイル: AnExtensions.cs プロジェクト: MovGP0/WebsitePoller
 public static AddressFieldParser AddressFieldParser(this IAn an)
 {
     return(new AddressFieldParser());
 }