aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarak <[email protected]>2016-10-01 17:52:17 -0400
committerGitHub <[email protected]>2016-10-01 17:52:17 -0400
commit7e96b93869b422af5a63c115e04ff0206bf7b228 (patch)
tree839ae9dd40324810ca15f94bd14829e427cba756
parent2ad5b70d4134e4b68a64d32cc3c9a9322ef6af9a (diff)
parentfc9d5351cd34d741538a364a31d22ae0c0f8101e (diff)
downloadfaker-7e96b93869b422af5a63c115e04ff0206bf7b228.tar.xz
faker-7e96b93869b422af5a63c115e04ff0206bf7b228.zip
Merge pull request #418 from cvega/master
[api] Added `internet.ipv6` method
-rw-r--r--lib/internet.js26
-rw-r--r--test/internet.unit.js8
2 files changed, 34 insertions, 0 deletions
diff --git a/lib/internet.js b/lib/internet.js
index 2d7ff530..4b0bfd8a 100644
--- a/lib/internet.js
+++ b/lib/internet.js
@@ -215,6 +215,32 @@ var Internet = function (faker) {
};
/**
+ * ipv6
+ *
+ * @method faker.internet.ipv6
+ */
+ self.ipv6 = function () {
+ var randHash = function () {
+ var result = "";
+ for (var i = 0; i < 4; i++) {
+ result += (faker.random.arrayElement(["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"]));
+ }
+ return result
+ };
+
+ var result = [];
+ for (var i = 0; i < 8; i++) {
+ result[i] = randHash();
+ }
+ return result.join(":");
+ };
+
+ self.ipv6.schema = {
+ "description": "Generates a random IPv6 address.",
+ "sampleResults": ["2001:0db8:6276:b1a7:5213:22f1:25df:c8a0"]
+ };
+
+ /**
* userAgent
*
* @method faker.internet.userAgent
diff --git a/test/internet.unit.js b/test/internet.unit.js
index eb244829..12da8eec 100644
--- a/test/internet.unit.js
+++ b/test/internet.unit.js
@@ -146,6 +146,14 @@ describe("internet.js", function () {
});
});
+ describe("ipv6()", function () {
+ it("returns a random IPv6 address with eight parts", function () {
+ var ip = faker.internet.ipv6();
+ var parts = ip.split(':');
+ assert.equal(parts.length, 8);
+ });
+ });
+
describe("userAgent()", function () {
it("returns a valid user-agent", function () {
var ua = faker.internet.userAgent();