Fix getTiddler query
This commit is contained in:
parent
a16338ce11
commit
2f09c32d2d
|
@ -284,22 +284,14 @@ SqlTiddlerStore.prototype.getTiddler = function(title,recipename) {
|
||||||
SELECT field_name, field_value
|
SELECT field_name, field_value
|
||||||
FROM fields
|
FROM fields
|
||||||
WHERE tiddler_id = (
|
WHERE tiddler_id = (
|
||||||
SELECT tt.tiddler_id
|
SELECT t.tiddler_id
|
||||||
FROM (
|
FROM bags AS b
|
||||||
SELECT bb.bag_id, t.tiddler_id
|
INNER JOIN recipe_bags AS rb ON b.bag_id = rb.bag_id
|
||||||
FROM (
|
INNER JOIN recipes AS r ON rb.recipe_id = r.recipe_id
|
||||||
SELECT b.bag_id
|
INNER JOIN tiddlers AS t ON b.bag_id = t.bag_id
|
||||||
FROM bags AS b
|
WHERE r.recipe_name = $recipe_name
|
||||||
INNER JOIN recipe_bags AS rb ON b.bag_id = rb.bag_id
|
AND t.title = $title
|
||||||
INNER JOIN recipes AS r ON rb.recipe_id = r.recipe_id
|
ORDER BY rb.position DESC
|
||||||
WHERE r.recipe_name = $recipe_name
|
|
||||||
ORDER BY rb.position
|
|
||||||
) AS bb
|
|
||||||
INNER JOIN tiddlers AS t ON bb.bag_id = t.bag_id
|
|
||||||
WHERE t.title = $title
|
|
||||||
) AS tt
|
|
||||||
ORDER BY tt.tiddler_id DESC
|
|
||||||
LIMIT 1
|
|
||||||
)
|
)
|
||||||
`,{
|
`,{
|
||||||
title: title,
|
title: title,
|
||||||
|
|
|
@ -47,6 +47,7 @@ describe("SQL tiddler store", function() {
|
||||||
expect(sqlTiddlerStore.getTiddler("Another Tiddler","recipe-rho")).toEqual({ title: "Another Tiddler", text: "I'm in alpha", tags: "one two three" });
|
expect(sqlTiddlerStore.getTiddler("Another Tiddler","recipe-rho")).toEqual({ title: "Another Tiddler", text: "I'm in alpha", tags: "one two three" });
|
||||||
expect(sqlTiddlerStore.getTiddler("Hello There","recipe-sigma")).toEqual({ title: "Hello There", text: "I'm in gamma", tags: "seven eight nine" });
|
expect(sqlTiddlerStore.getTiddler("Hello There","recipe-sigma")).toEqual({ title: "Hello There", text: "I'm in gamma", tags: "seven eight nine" });
|
||||||
expect(sqlTiddlerStore.getTiddler("Another Tiddler","recipe-sigma")).toEqual({ title: "Another Tiddler", text: "I'm in alpha", tags: "one two three" });
|
expect(sqlTiddlerStore.getTiddler("Another Tiddler","recipe-sigma")).toEqual({ title: "Another Tiddler", text: "I'm in alpha", tags: "one two three" });
|
||||||
|
expect(sqlTiddlerStore.getTiddler("Hello There","recipe-upsilon")).toEqual({title: "Hello There",text: "I'm in beta",tags: "four five six"});
|
||||||
// Delete a tiddlers to ensure the underlying tiddler in the recipe shows through
|
// Delete a tiddlers to ensure the underlying tiddler in the recipe shows through
|
||||||
sqlTiddlerStore.deleteTiddler("Hello There","bag-beta");
|
sqlTiddlerStore.deleteTiddler("Hello There","bag-beta");
|
||||||
expect(sqlTiddlerStore.getRecipeTiddlers("recipe-rho")).toEqual([ "Another Tiddler", "Hello There"]);
|
expect(sqlTiddlerStore.getRecipeTiddlers("recipe-rho")).toEqual([ "Another Tiddler", "Hello There"]);
|
||||||
|
|
Loading…
Reference in New Issue