Frontend: Add unit tests
This commit is contained in:
parent
428491c537
commit
dcbfe39303
|
@ -315,6 +315,22 @@ Mock.onPut("api/v1/markers/mDC123ghytr", { SubjSrc: "manual", Name: "testname" }
|
|||
mockHeaders
|
||||
);
|
||||
Mock.onDelete("api/v1/markers/mEC123ghytr/subject").reply(200, { success: "ok" }, mockHeaders);
|
||||
Mock.onPut("api/v1/faces/f123ghytrfggd", { Hidden: false }).reply(
|
||||
200,
|
||||
{
|
||||
success: "ok",
|
||||
},
|
||||
mockHeaders
|
||||
);
|
||||
Mock.onPut("api/v1/faces/f123ghytrfggd", { Hidden: true }).reply(
|
||||
200,
|
||||
{
|
||||
success: "ok",
|
||||
},
|
||||
mockHeaders
|
||||
);
|
||||
Mock.onPost("api/v1/subjects/s123ghytrfggd/like").reply(200, { status: "ok" }, mockHeaders);
|
||||
Mock.onDelete("api/v1/subjects/s123ghytrfggd/like").reply(200, { status: "ok" }, mockHeaders);
|
||||
|
||||
//Mock.onPost().reply(200);
|
||||
//Mock.onDelete().reply(200);
|
||||
|
|
121
frontend/tests/unit/model/face_test.js
Normal file
121
frontend/tests/unit/model/face_test.js
Normal file
|
@ -0,0 +1,121 @@
|
|||
import "../fixtures";
|
||||
import Face from "model/face";
|
||||
|
||||
let chai = require("chai/chai");
|
||||
let assert = chai.assert;
|
||||
|
||||
describe("model/face", () => {
|
||||
it("should get face defaults", () => {
|
||||
const values = {};
|
||||
const face = new Face(values);
|
||||
const result = face.getDefaults();
|
||||
assert.equal(result.ID, "");
|
||||
assert.equal(result.SampleRadius, 0.0);
|
||||
});
|
||||
|
||||
it("should get route view", () => {
|
||||
const values = { ID: "f123ghytrfggd", Samples: 5 };
|
||||
const face = new Face(values);
|
||||
const result = face.route("test");
|
||||
assert.equal(result.name, "test");
|
||||
assert.equal(result.query.q, "face:f123ghytrfggd");
|
||||
});
|
||||
|
||||
it("should return classes", () => {
|
||||
const values = { ID: "f123ghytrfggd", Samples: 5 };
|
||||
const face = new Face(values);
|
||||
const result = face.classes(true);
|
||||
assert.include(result, "is-face");
|
||||
assert.include(result, "id-f123ghytrfggd");
|
||||
assert.include(result, "is-selected");
|
||||
assert.notInclude(result, "is-hidden");
|
||||
const result2 = face.classes(false);
|
||||
assert.include(result2, "is-face");
|
||||
assert.include(result2, "id-f123ghytrfggd");
|
||||
assert.notInclude(result2, "is-selected");
|
||||
assert.notInclude(result2, "is-hidden");
|
||||
const values2 = { ID: "f123ghytrfggd", Samples: 5, Hidden: true };
|
||||
const face2 = new Face(values2);
|
||||
const result3 = face2.classes(true);
|
||||
assert.include(result3, "is-face");
|
||||
assert.include(result3, "id-f123ghytrfggd");
|
||||
assert.include(result3, "is-selected");
|
||||
assert.include(result3, "is-hidden");
|
||||
});
|
||||
|
||||
it("should get face entity name", () => {
|
||||
const values = { ID: "f123ghytrfggd", Samples: 5 };
|
||||
const face = new Face(values);
|
||||
const result = face.getEntityName();
|
||||
assert.equal(result, "f123ghytrfggd");
|
||||
});
|
||||
|
||||
it("should get face title", () => {
|
||||
const values = { ID: "f123ghytrfggd", Samples: 5 };
|
||||
const face = new Face(values);
|
||||
const result = face.getTitle();
|
||||
assert.equal(result, undefined);
|
||||
});
|
||||
|
||||
it("should get thumbnail url", () => {
|
||||
const values = {
|
||||
ID: "f123ghytrfggd",
|
||||
Samples: 5,
|
||||
Marker: {
|
||||
UID: "ABC123ghytr",
|
||||
FileUID: "fhjouohnnmnd",
|
||||
Type: "face",
|
||||
Src: "image",
|
||||
Thumb: "nicethumbuid",
|
||||
},
|
||||
};
|
||||
const face = new Face(values);
|
||||
const result = face.thumbnailUrl("xyz");
|
||||
assert.equal(result, "/api/v1/t/nicethumbuid/public/xyz");
|
||||
|
||||
const values2 = { ID: "f123ghytrfggd", Samples: 5 };
|
||||
const face2 = new Face(values2);
|
||||
const result2 = face2.thumbnailUrl();
|
||||
assert.equal(result2, "/api/v1/svg/portrait");
|
||||
});
|
||||
|
||||
it("should get date string", () => {
|
||||
const values = {
|
||||
ID: "f123ghytrfggd",
|
||||
Samples: 5,
|
||||
CreatedAt: "2012-07-08T14:45:39Z",
|
||||
};
|
||||
const face = new Face(values);
|
||||
const result = face.getDateString();
|
||||
assert.equal(result, "Jul 8, 2012, 2:45 PM");
|
||||
});
|
||||
|
||||
it("show and hide face", () => {
|
||||
const values = {
|
||||
ID: "f123ghytrfggd",
|
||||
Samples: 5,
|
||||
CreatedAt: "2012-07-08T14:45:39Z",
|
||||
Hidden: true,
|
||||
};
|
||||
const face = new Face(values);
|
||||
assert.equal(face.Hidden, true);
|
||||
face.show();
|
||||
assert.equal(face.Hidden, false);
|
||||
face.hide();
|
||||
assert.equal(face.Hidden, true);
|
||||
});
|
||||
|
||||
it("should return batch size", () => {
|
||||
assert.equal(Face.batchSize(), 24);
|
||||
});
|
||||
|
||||
it("should get collection resource", () => {
|
||||
const result = Face.getCollectionResource();
|
||||
assert.equal(result, "faces");
|
||||
});
|
||||
|
||||
it("should get model name", () => {
|
||||
const result = Face.getModelName();
|
||||
assert.equal(result, "Face");
|
||||
});
|
||||
});
|
212
frontend/tests/unit/model/subject_test.js
Normal file
212
frontend/tests/unit/model/subject_test.js
Normal file
|
@ -0,0 +1,212 @@
|
|||
import "../fixtures";
|
||||
import Subject from "model/subject";
|
||||
|
||||
let chai = require("chai/chai");
|
||||
let assert = chai.assert;
|
||||
|
||||
describe("model/subject", () => {
|
||||
it("should get face defaults", () => {
|
||||
const values = {};
|
||||
const subject = new Subject(values);
|
||||
const result = subject.getDefaults();
|
||||
assert.equal(result.UID, "");
|
||||
assert.equal(result.Favorite, false);
|
||||
});
|
||||
|
||||
it("should get route view", () => {
|
||||
const values = { UID: "s123ghytrfggd", Type: "person", Src: "manual" };
|
||||
const subject = new Subject(values);
|
||||
const result = subject.route("test");
|
||||
assert.equal(result.name, "test");
|
||||
assert.equal(result.query.q, "subject:s123ghytrfggd");
|
||||
const values2 = {
|
||||
UID: "s123ghytrfggd",
|
||||
Type: "person",
|
||||
Src: "manual",
|
||||
Name: "Jane Doe",
|
||||
Slug: "jane-doe",
|
||||
};
|
||||
const subject2 = new Subject(values2);
|
||||
const result2 = subject2.route("test");
|
||||
assert.equal(result2.name, "test");
|
||||
assert.equal(result2.query.q, "person:jane-doe");
|
||||
});
|
||||
|
||||
it("should return classes", () => {
|
||||
const values = {
|
||||
UID: "s123ghytrfggd",
|
||||
Type: "person",
|
||||
Src: "manual",
|
||||
Name: "Jane Doe",
|
||||
Slug: "jane-doe",
|
||||
Favorite: false,
|
||||
Excluded: true,
|
||||
Private: true,
|
||||
};
|
||||
const subject = new Subject(values);
|
||||
const result = subject.classes(true);
|
||||
assert.include(result, "is-subject");
|
||||
assert.include(result, "uid-s123ghytrfggd");
|
||||
assert.include(result, "is-selected");
|
||||
assert.notInclude(result, "is-favorite");
|
||||
assert.include(result, "is-private");
|
||||
assert.include(result, "is-excluded");
|
||||
const values2 = {
|
||||
UID: "s123ghytrfggd",
|
||||
Type: "person",
|
||||
Src: "manual",
|
||||
Name: "Jane Doe",
|
||||
Slug: "jane-doe",
|
||||
Favorite: true,
|
||||
Excluded: false,
|
||||
Private: false,
|
||||
};
|
||||
const subject2 = new Subject(values2);
|
||||
const result2 = subject2.classes(false);
|
||||
assert.include(result2, "is-subject");
|
||||
assert.include(result2, "uid-s123ghytrfggd");
|
||||
assert.notInclude(result2, "is-selected");
|
||||
assert.include(result2, "is-favorite");
|
||||
assert.notInclude(result2, "is-private");
|
||||
assert.notInclude(result2, "is-excluded");
|
||||
});
|
||||
|
||||
it("should get subject entity name", () => {
|
||||
const values = {
|
||||
UID: "s123ghytrfggd",
|
||||
Type: "person",
|
||||
Src: "manual",
|
||||
Name: "Jane Doe",
|
||||
Slug: "jane-doe",
|
||||
Favorite: false,
|
||||
Excluded: true,
|
||||
Private: true,
|
||||
};
|
||||
const subject = new Subject(values);
|
||||
const result = subject.getEntityName();
|
||||
assert.equal(result, "jane-doe");
|
||||
});
|
||||
|
||||
it("should get subject title", () => {
|
||||
const values = {
|
||||
UID: "s123ghytrfggd",
|
||||
Type: "person",
|
||||
Src: "manual",
|
||||
Name: "Jane Doe",
|
||||
Slug: "jane-doe",
|
||||
Favorite: false,
|
||||
Excluded: true,
|
||||
Private: true,
|
||||
};
|
||||
const subject = new Subject(values);
|
||||
const result = subject.getTitle();
|
||||
assert.equal(result, "Jane Doe");
|
||||
});
|
||||
|
||||
it("should get thumbnail url", () => {
|
||||
const values = {
|
||||
UID: "s123ghytrfggd",
|
||||
Type: "person",
|
||||
Src: "manual",
|
||||
Name: "Jane Doe",
|
||||
Slug: "jane-doe",
|
||||
Favorite: false,
|
||||
Excluded: true,
|
||||
Private: true,
|
||||
Thumb: "nicethumb",
|
||||
};
|
||||
const subject = new Subject(values);
|
||||
const result = subject.thumbnailUrl("xyz");
|
||||
assert.equal(result, "/api/v1/t/nicethumb/public/xyz");
|
||||
const result2 = subject.thumbnailUrl();
|
||||
assert.equal(result2, "/api/v1/t/nicethumb/public/tile_160");
|
||||
const values2 = {
|
||||
UID: "s123ghytrfggd",
|
||||
Type: "person",
|
||||
Src: "manual",
|
||||
Name: "Jane Doe",
|
||||
Slug: "jane-doe",
|
||||
Favorite: false,
|
||||
Excluded: true,
|
||||
Private: true,
|
||||
};
|
||||
const subject2 = new Subject(values2);
|
||||
const result3 = subject2.thumbnailUrl("xyz");
|
||||
assert.equal(result3, "/api/v1/svg/portrait");
|
||||
});
|
||||
|
||||
it("should get date string", () => {
|
||||
const values = {
|
||||
UID: "s123ghytrfggd",
|
||||
Type: "person",
|
||||
Src: "manual",
|
||||
Name: "Jane Doe",
|
||||
Slug: "jane-doe",
|
||||
Favorite: false,
|
||||
Excluded: true,
|
||||
Private: true,
|
||||
Thumb: "nicethumb",
|
||||
CreatedAt: "2012-07-08T14:45:39Z",
|
||||
};
|
||||
const subject = new Subject(values);
|
||||
const result = subject.getDateString();
|
||||
assert.equal(result, "Jul 8, 2012, 2:45 PM");
|
||||
});
|
||||
|
||||
it("should like subject", () => {
|
||||
const values = {
|
||||
UID: "s123ghytrfggd",
|
||||
Type: "person",
|
||||
Src: "manual",
|
||||
Name: "Jane Doe",
|
||||
Slug: "jane-doe",
|
||||
Favorite: false,
|
||||
};
|
||||
const subject = new Subject(values);
|
||||
assert.equal(subject.Favorite, false);
|
||||
subject.like();
|
||||
assert.equal(subject.Favorite, true);
|
||||
});
|
||||
|
||||
it("should unlike subject", () => {
|
||||
const values = {
|
||||
UID: "s123ghytrfggd",
|
||||
Type: "person",
|
||||
Src: "manual",
|
||||
Name: "Jane Doe",
|
||||
Slug: "jane-doe",
|
||||
Favorite: true,
|
||||
};
|
||||
const subject = new Subject(values);
|
||||
assert.equal(subject.Favorite, true);
|
||||
subject.unlike();
|
||||
assert.equal(subject.Favorite, false);
|
||||
});
|
||||
|
||||
it("should toggle like", () => {
|
||||
const values = {
|
||||
UID: "s123ghytrfggd",
|
||||
Type: "person",
|
||||
Src: "manual",
|
||||
Name: "Jane Doe",
|
||||
Slug: "jane-doe",
|
||||
Favorite: true,
|
||||
};
|
||||
const subject = new Subject(values);
|
||||
assert.equal(subject.Favorite, true);
|
||||
subject.toggleLike();
|
||||
assert.equal(subject.Favorite, false);
|
||||
subject.toggleLike();
|
||||
assert.equal(subject.Favorite, true);
|
||||
});
|
||||
|
||||
it("should get collection resource", () => {
|
||||
const result = Subject.getCollectionResource();
|
||||
assert.equal(result, "subjects");
|
||||
});
|
||||
|
||||
it("should get model name", () => {
|
||||
const result = Subject.getModelName();
|
||||
assert.equal(result, "Subject");
|
||||
});
|
||||
});
|
Loading…
Reference in New Issue
Block a user