Skip to content

Commit

Permalink
Added LordOfTheRings faker (#84)
Browse files Browse the repository at this point in the history
* Added requested feature

* Added the docs.

* Fixed the ordering.

* Updated the data class.

Closes #84
  • Loading branch information
BeastlyGNome authored and mrstebo committed Feb 2, 2019
1 parent 8a1f9aa commit ae67270
Show file tree
Hide file tree
Showing 9 changed files with 435 additions and 1 deletion.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ A .NET port of the Ruby [faker](https://github.com/stympy/faker) gem
- [Faker.Hacker](doc/hacker.md)
- [Faker.HarryPotter](doc/harry_potter.md)
- [Faker.Internet](doc/internet.md)
- [Faker.LordOfTheRings](doc/lord_of_the_rings.md)
- [Faker.Lorem](doc/lorem.md)
- [Faker.Music](doc/music.md)
- [Faker.Name](doc/name.md)
Expand Down
7 changes: 7 additions & 0 deletions doc/lord_of_the_rings.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Faker.LordOfTheRings

```cs
Faker.LordOfTheRings.Character() //=> "Legolas"
Faker.LordOfTheRings.Location() //=> "Helm's Deep"
```
340 changes: 340 additions & 0 deletions src/FakerDotNet/Data/LordOfTheRingsData.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,340 @@
using System.Collections.Generic;

namespace FakerDotNet.Data
{
internal static class LordOfTheRingsData
{
public static readonly IEnumerable<string> Characters = new[]
{
"Aragorn",
"Arwen",
"Aegnor",
"Aerandir",
"Aerin",
"Aghan",
"Amandil",
"Amarië",
"Amlach",
"Amras",
"Amrod",
"Ancalagon",
"Andreth",
"Andróg",
"Angrim",
"Angrod",
"Annael",
"Ar-Adûnakhôr",
"Ar-Gimilzôr",
"Ar-Pharazôn",
"Ar-Sakalthôr",
"Ar-Zimrathôn",
"Aranwë",
"Aratan",
"Aratar",
"Aredhel",
"Arien",
"Arthad",
"Asgon",
"Aulë",
"Azaghâl",
"Bilbo Baggins",
"Frodo Baggins",
"Barach",
"Baragund",
"Barahir",
"Baran",
"Barliman Butterbur",
"Beechbone",
"Beregond and Bergil",
"Bergil",
"Bilbo",
"Fredegar Bolger",
"Tom Bombadil",
"Meriadoc Brandybuck",
"Bregalad",
"Brego",
"Beleg",
"Belegund",
"Bereg",
"Beren",
"Borlach",
"Borlad",
"Boromir (House of Bëor)",
"Borthand",
"Brandir",
"Bregolas",
"Bregor",
"Brodda",
"Bëor",
"Bór",
"Celeborn",
"Círdan",
"Calmacil",
"Caranthir",
"Carcharoth",
"Celebrimbor",
"Celegorm",
"Ciryon",
"Curufin",
"Déagol",
"Denethor",
"Dúnhere",
"Durin's Bane",
"Daeron",
"Dairuin",
"Dior",
"Dorlas",
"Draugluin",
"Elfhelm",
"Elladan and Elrohir",
"Elrond",
"Éomer",
"Éomund",
"Éothain",
"Éowyn",
"Erestor",
"Erkenbrand",
"Ecthelion of the Fountain",
"Eilinel",
"Elatan",
"Elemmírë",
"Elendil",
"Elendur",
"Elenwë",
"Elros",
"Eluréd and Elurín",
"Elwing",
"Emeldir",
"Erellont",
"Estë",
"Eärendil",
"Eärendur, Lord of Andúnië",
"Eärendur of Arnor",
"Eärendur of Númenor",
"Eärwen",
"Eöl",
"Eönwë",
"Faramir",
"Figwit",
"Forlong the Fat",
"Freda",
"Falathar",
"Finarfin",
"Finduilas",
"Fingolfin",
"Fingon",
"Finrod",
"Finwë",
"Fuinur",
"Fëanor",
"Galadriel",
"Hamfast Gamgee",
"Samwise Gamgee",
"Gamling",
"Gandalf",
"Ghân-buri-Ghân",
"Gildor Inglorion",
"Gimli",
"Glorfindel",
"Goldberry",
"Gollum",
"Gothmog",
"Gríma Wormtongue",
"Grimbold",
"Galdor",
"Gamil Zirak",
"Gelmir",
"Gelmir (of Angrod's kin)",
"Gil-galad",
"Gimilkhâd",
"Glaurung",
"Glirhuin",
"Glóredhel",
"Gorlim",
"Guilin",
"Gundor",
"Gwindor",
"Haldir of Lórien",
"Haleth",
"Háma",
"Húrin the Tall",
"Hador",
"Haldad",
"Haldan",
"Haldar",
"Halmir",
"Handir",
"Hareth",
"Hathaldir",
"Herumor",
"Huan",
"Hundad",
"Hunthor",
"Huor",
"Irolas",
"Isildur",
"Ibûn",
"Idril",
"Ilmarë",
"Eru Ilúvatar",
"Imlach",
"Indis",
"Ingwë",
"Inzilbêth",
"Iorlas",
"Irmo",
"Khim",
"Legolas Greenleaf",
"Lurtz",
"Lalaith",
"Lenwë",
"Lorgan",
"Lúthien",
"Madril",
"Farmer Maggot",
"Morwen",
"Mouth of Sauron",
"Mablung",
"Maedhros",
"Maeglin",
"Maglor",
"Mahtan",
"Malach",
"Mandos",
"Manwë",
"Marach",
"Mardil Voronwë",
"Melian",
"Melkor",
"Meneldil",
"Morwen",
"Míriel",
"Mîm",
"Nazgûl",
"Nerdanel",
"Nessa",
"Nienna",
"Nimloth",
"Nimrodel",
"Niënor",
"Númendil",
"Old Man Willow",
"Orophin",
"Ohtar",
"Olwë",
"Orodreth",
"Oromë",
"Ossë",
"Radagast",
"Radhruin",
"Ragnor",
"Rían",
"Rúmil (Noldo)",
"Samwise Gamgee",
"Saruman",
"Sauron",
"Sharku",
"Shelob",
"Smaug",
"Sador",
"Saeros",
"Salmar",
"Soronto",
"Théoden",
"Théodred",
"Peregrin Took",
"Treebeard",
"Tar-Alcarin",
"Tar-Aldarion",
"Tar-Ancalimon",
"Tar-Ancalimë",
"Tar-Anárion",
"Tar-Ardamin",
"Tar-Atanamir",
"Tar-Calmacil",
"Tar-Ciryatan",
"Tar-Elendil",
"Tar-Minastir",
"Tar-Míriel",
"Tar-Palantir",
"Tar-Súrion",
"Tar-Telemmaitë",
"Tar-Telperiën",
"Tar-Vanimeldë",
"Telchar",
"Thingol",
"Thorondor",
"Thuringwethil",
"Tilion",
"Valar",
"Witch-king of Angmar"
};

public static readonly IEnumerable<string> Locations = new[]
{
"Almaren",
"Amon Hen",
"Andram, The Long Wall",
"Anduin",
"Arnor",
"Bag End",
"Barad-dûr",
"Baranduin",
"Beleriand",
"Belegaer, The Great Sea",
"Blue Mountains",
"Bree-land",
"Brithon",
"Bruinen",
"Cuiviénen",
"Dorthonion",
"Erebor",
"Ered Luin",
"Ered Mithrin",
"Ered Nimrais",
"Eriador",
"Esgaroth",
"Falas",
"Fangorn",
"Forodwaith",
"Gelion",
"Gondolin",
"Gondor",
"Great East Road",
"Harad",
"Helm's Deep",
"Himring",
"Hithlum",
"Isengard",
"Khazad-dûm",
"Lindon & the Grey Havens",
"Lonely Mountains",
"Lothlórien",
"Minas Tirith",
"Mirkwood",
"Misty Mountains",
"Mordor",
"Mount Doom",
"Nenning",
"Nevrast",
"North-South Road",
"Ossiriand, The Land of Seven Rivers",
"Rhovanion",
"Rhûn",
"Rivendell",
"Rohan",
"Running River",
"Sirion",
"Thangorodrim",
"The Fens of Sirion",
"The Gates of Sirion",
"The Necromancer",
"The Shire",
"The Two Lamps",
"The White Mountains",
"Théoden",
"Weathertop",
"Wilderland",
};
}
}
1 change: 1 addition & 0 deletions src/FakerDotNet/Faker.cs
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ public static class Faker
public static IHackerFaker Hacker { get; } = Container.Hacker;
public static IHarryPotterFaker HarryPotter { get; } = Container.HarryPotter;
public static IInternetFaker Internet { get; } = Container.Internet;
public static ILordOfTheRingsFaker LordOfTheRings { get; } = Container.LordOfTheRings;
public static ILoremFaker Lorem { get; } = Container.Lorem;
public static IMusicFaker Music { get; } = Container.Music;
public static INameFaker Name { get; } = Container.Name;
Expand Down
3 changes: 3 additions & 0 deletions src/FakerDotNet/FakerContainer.cs
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ internal interface IFakerContainer
IHackerFaker Hacker { get; }
IHarryPotterFaker HarryPotter { get; }
IInternetFaker Internet { get; }
ILordOfTheRingsFaker LordOfTheRings { get; }
ILoremFaker Lorem { get; }
IMusicFaker Music { get; }
INameFaker Name { get; }
Expand Down Expand Up @@ -80,6 +81,7 @@ public FakerContainer()
Hacker = new HackerFaker(this);
HarryPotter = new HarryPotterFaker(this);
Internet = new InternetFaker(this);
LordOfTheRings = new LordOfTheRingsFaker(this);
Lorem = new LoremFaker(this);
Music = new MusicFaker(this);
Name = new NameFaker(this);
Expand Down Expand Up @@ -127,6 +129,7 @@ public FakerContainer()
public IHackerFaker Hacker { get; }
public IHarryPotterFaker HarryPotter { get; }
public IInternetFaker Internet { get; }
public ILordOfTheRingsFaker LordOfTheRings { get; }
public ILoremFaker Lorem { get; }
public IMusicFaker Music { get; }
public INameFaker Name { get; }
Expand Down
Loading

0 comments on commit ae67270

Please sign in to comment.