mirror of https://github.com/koreader/koreader
commit
c69f77d5ab
@ -1 +1 @@
|
|||||||
Subproject commit e8385ad081470ba8aab214a187887b7870c1ada2
|
Subproject commit ce27f6ed762ec1046c94a540cc0d555eaeda9efd
|
@ -0,0 +1,109 @@
|
|||||||
|
require("commonrequire")
|
||||||
|
local DocumentRegistry = require("document/documentregistry")
|
||||||
|
local ReaderUI = require("apps/reader/readerui")
|
||||||
|
local Event = require("ui/event")
|
||||||
|
local DEBUG = require("dbg")
|
||||||
|
|
||||||
|
describe("Readerrolling module", function()
|
||||||
|
local sample_epub = "spec/front/unit/data/juliet.epub"
|
||||||
|
local readerui = ReaderUI:new{
|
||||||
|
document = DocumentRegistry:openDocument(sample_epub),
|
||||||
|
}
|
||||||
|
local rolling = readerui.rolling
|
||||||
|
describe("test in portrait screen mode", function()
|
||||||
|
it("should goto portrait screen mode", function()
|
||||||
|
readerui:handleEvent(Event:new("ChangeScreenMode", "portrait"))
|
||||||
|
end)
|
||||||
|
it("should goto certain page", function()
|
||||||
|
for i = 1, 10, 5 do
|
||||||
|
rolling:gotoPage(i)
|
||||||
|
assert.are.same(i, rolling.current_page)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
it("should goto relative page", function()
|
||||||
|
for i = 20, 40, 5 do
|
||||||
|
rolling:gotoPage(i)
|
||||||
|
rolling:onGotoViewRel(1)
|
||||||
|
assert.are.same(i + 1, rolling.current_page)
|
||||||
|
rolling:onGotoViewRel(-1)
|
||||||
|
assert.are.same(i, rolling.current_page)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
it("should goto next chapter", function()
|
||||||
|
local toc = readerui.toc
|
||||||
|
for i = 30, 50, 5 do
|
||||||
|
rolling:gotoPage(i)
|
||||||
|
rolling:onDoubleTapForward()
|
||||||
|
assert.are.same(toc:getNextChapter(i, 0), rolling.current_page)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
it("should goto previous chapter", function()
|
||||||
|
local toc = readerui.toc
|
||||||
|
for i = 60, 80, 5 do
|
||||||
|
rolling:gotoPage(i)
|
||||||
|
rolling:onDoubleTapBackward()
|
||||||
|
assert.are.same(toc:getPreviousChapter(i, 0), rolling.current_page)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
end)
|
||||||
|
describe("test in landscape screen mode", function()
|
||||||
|
it("should go to landscape screen mode", function()
|
||||||
|
readerui:handleEvent(Event:new("ChangeScreenMode", "landscape"))
|
||||||
|
end)
|
||||||
|
it("should goto certain page", function()
|
||||||
|
for i = 1, 10, 5 do
|
||||||
|
rolling:gotoPage(i)
|
||||||
|
assert.are.same(i, rolling.current_page)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
it("should goto relative page", function()
|
||||||
|
for i = 20, 40, 5 do
|
||||||
|
rolling:gotoPage(i)
|
||||||
|
rolling:onGotoViewRel(1)
|
||||||
|
assert.are.same(i + 1, rolling.current_page)
|
||||||
|
rolling:onGotoViewRel(-1)
|
||||||
|
assert.are.same(i, rolling.current_page)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
it("should goto next chapter", function()
|
||||||
|
local toc = readerui.toc
|
||||||
|
for i = 30, 50, 5 do
|
||||||
|
rolling:gotoPage(i)
|
||||||
|
rolling:onDoubleTapForward()
|
||||||
|
assert.are.same(toc:getNextChapter(i, 0), rolling.current_page)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
it("should goto previous chapter", function()
|
||||||
|
local toc = readerui.toc
|
||||||
|
for i = 60, 80, 5 do
|
||||||
|
rolling:gotoPage(i)
|
||||||
|
rolling:onDoubleTapBackward()
|
||||||
|
assert.are.same(toc:getPreviousChapter(i, 0), rolling.current_page)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
end)
|
||||||
|
describe("switching screen mode should not change current page number", function()
|
||||||
|
it("for portrait-landscape-portrait switching", function()
|
||||||
|
for i = 80, 100, 10 do
|
||||||
|
readerui:handleEvent(Event:new("ChangeScreenMode", "portrait"))
|
||||||
|
rolling:onGotoPage(i)
|
||||||
|
assert.are.same(i, rolling.current_page)
|
||||||
|
readerui:handleEvent(Event:new("ChangeScreenMode", "landscape"))
|
||||||
|
assert.are_not.same(i, rolling.current_page)
|
||||||
|
readerui:handleEvent(Event:new("ChangeScreenMode", "portrait"))
|
||||||
|
assert.are.same(i, rolling.current_page)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
it("for landscape-portrait-landscape switching", function()
|
||||||
|
for i = 110, 130, 10 do
|
||||||
|
readerui:handleEvent(Event:new("ChangeScreenMode", "landscape"))
|
||||||
|
rolling:onGotoPage(i)
|
||||||
|
assert.are.same(i, rolling.current_page)
|
||||||
|
readerui:handleEvent(Event:new("ChangeScreenMode", "portrait"))
|
||||||
|
assert.are_not.same(i, rolling.current_page)
|
||||||
|
readerui:handleEvent(Event:new("ChangeScreenMode", "landscape"))
|
||||||
|
assert.are.same(i, rolling.current_page)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
end)
|
||||||
|
end)
|
Loading…
Reference in New Issue