mirror of
https://github.com/codeninjasllc/codecombat.git
synced 2025-04-27 14:33:59 -04:00
Merge branch 'packagebyfeature' of https://github.com/smoratinos/codecombat into feature/server-refactor
This commit is contained in:
commit
dceb48ab04
60 changed files with 221 additions and 121 deletions
server.coffee
server
articles
campaigns
commons
files
levels
plugins
routes
users
test/server
|
@ -9,15 +9,15 @@ winston = require 'winston'
|
|||
passport = require 'passport'
|
||||
useragent = require 'express-useragent'
|
||||
|
||||
auth = require './server/auth'
|
||||
db = require './server/db'
|
||||
file = require './server/file'
|
||||
folder = require './server/folder'
|
||||
user = require './server/handlers/user'
|
||||
logging = require './server/logging'
|
||||
sprites = require './server/sprites'
|
||||
contact = require './server/contact'
|
||||
languages = require './server/languages'
|
||||
auth = require './server/routes/auth'
|
||||
db = require './server/routes/db'
|
||||
file = require './server/routes/file'
|
||||
folder = require './server/routes/folder'
|
||||
user = require './server/users/user_handler'
|
||||
logging = require './server/commons/logging'
|
||||
sprites = require './server/routes/sprites'
|
||||
contact = require './server/routes/contact'
|
||||
languages = require './server/routes/languages'
|
||||
|
||||
https = require 'https'
|
||||
http = require 'http'
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
mongoose = require('mongoose')
|
||||
plugins = require('./plugins')
|
||||
plugins = require('../plugins/plugins')
|
||||
|
||||
ArticleSchema = new mongoose.Schema(
|
||||
body: String,
|
|
@ -1,7 +1,5 @@
|
|||
winston = require('winston')
|
||||
request = require('request')
|
||||
Article = require('../models/Article')
|
||||
Handler = require('./Handler')
|
||||
Article = require('./Article')
|
||||
Handler = require('../commons/Handler')
|
||||
|
||||
ArticleHandler = class ArticleHandler extends Handler
|
||||
modelClass: Article
|
|
@ -1,4 +1,4 @@
|
|||
c = require './common'
|
||||
c = require '../commons/schemas'
|
||||
|
||||
ArticleSchema = c.object()
|
||||
c.extendNamedProperties ArticleSchema # name first
|
|
@ -1,5 +1,5 @@
|
|||
mongoose = require('mongoose')
|
||||
plugins = require('./plugins')
|
||||
plugins = require('../plugins/plugins')
|
||||
|
||||
NestedLevelSchema = new mongoose.Schema(
|
||||
name: String
|
|
@ -1,7 +1,5 @@
|
|||
winston = require('winston')
|
||||
request = require('request')
|
||||
Campaign = require('../models/Campaign')
|
||||
Handler = require('./Handler')
|
||||
Campaign = require('./Campaign')
|
||||
Handler = require('../commons/Handler')
|
||||
|
||||
CampaignHandler = class CampaignHandler extends Handler
|
||||
modelClass: Campaign
|
|
@ -1,7 +1,5 @@
|
|||
winston = require('winston')
|
||||
request = require('request')
|
||||
CampaignStatus = require('../models/CampaignStatus')
|
||||
Handler = require('./Handler')
|
||||
CampaignStatus = require('./CampaignStatus')
|
||||
Handler = require('../commons/Handler')
|
||||
|
||||
CampaignStatusHandler = class CampaignStatusHandler extends Handler
|
||||
modelClass: CampaignStatus
|
|
@ -1,7 +1,7 @@
|
|||
async = require 'async'
|
||||
mongoose = require('mongoose')
|
||||
Grid = require 'gridfs-stream'
|
||||
errors = require '../errors'
|
||||
errors = require './errors'
|
||||
|
||||
module.exports = class Handler
|
||||
# subclasses should override these properties
|
|
@ -1,5 +1,5 @@
|
|||
#this file will hold the experimental JSON schema for i18n
|
||||
c = require './common'
|
||||
c = require './schemas'
|
||||
|
||||
languageCodeArrayRegex = c.generateLanguageCodeArrayRegex()
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
#language imports
|
||||
Language = require '../languages'
|
||||
Language = require '../routes/languages'
|
||||
# schema helper methods
|
||||
|
||||
me = module.exports
|
|
@ -1,5 +1,5 @@
|
|||
mongoose = require('mongoose')
|
||||
plugins = require('./plugins')
|
||||
plugins = require('../plugins/plugins')
|
||||
|
||||
FileSchema = new mongoose.Schema()
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
File = require('../models/File')
|
||||
Handler = require('./Handler')
|
||||
File = require('./File')
|
||||
Handler = require('../commons/Handler')
|
||||
|
||||
FileHandler = class FileHandler extends Handler
|
||||
modelClass: File
|
|
@ -1,4 +1,4 @@
|
|||
c = require './common'
|
||||
c = require '../commons/schemas'
|
||||
|
||||
FileSchema = c.baseSchema()
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
mongoose = require('mongoose')
|
||||
plugins = require('./plugins')
|
||||
jsonschema = require('../schemas/level')
|
||||
plugins = require('../plugins/plugins')
|
||||
jsonschema = require('./level_schema')
|
||||
|
||||
LevelSchema = new mongoose.Schema({
|
||||
description: String
|
|
@ -1,6 +1,6 @@
|
|||
mongoose = require('mongoose')
|
||||
plugins = require('./plugins')
|
||||
jsonschema = require('../schemas/level_component')
|
||||
plugins = require('../../plugins/plugins')
|
||||
jsonschema = require('./level_component_schema')
|
||||
|
||||
LevelComponentSchema = new mongoose.Schema {
|
||||
description: String
|
|
@ -1,7 +1,5 @@
|
|||
winston = require('winston')
|
||||
request = require('request')
|
||||
LevelComponent = require('../models/LevelComponent')
|
||||
Handler = require('./Handler')
|
||||
LevelComponent = require('./LevelComponent')
|
||||
Handler = require('../../commons/Handler')
|
||||
|
||||
LevelComponentHandler = class LevelComponentHandler extends Handler
|
||||
modelClass: LevelComponent
|
|
@ -1,5 +1,5 @@
|
|||
c = require './common'
|
||||
metaschema = require './metaschema'
|
||||
c = require '../../commons/schemas'
|
||||
metaschema = require '../../commons/metaschema'
|
||||
|
||||
attackSelfCode = """
|
||||
class AttacksSelf extends Component
|
|
@ -1,5 +1,5 @@
|
|||
mongoose = require('mongoose')
|
||||
Level = require('./Level')
|
||||
Level = require('../Level')
|
||||
|
||||
LevelDraftSchema = new mongoose.Schema(
|
||||
user: {type: mongoose.Schema.ObjectId, ref: 'User'}
|
|
@ -1,7 +1,5 @@
|
|||
winston = require('winston')
|
||||
request = require('request')
|
||||
LevelDraft = require('../models/LevelDraft')
|
||||
Handler = require('./Handler')
|
||||
LevelDraft = require('./LevelDraft')
|
||||
Handler = require('../../commons/Handler')
|
||||
|
||||
LevelDraftHandler = class LevelDraftHandler extends Handler
|
||||
modelClass: LevelDraft
|
|
@ -1,8 +1,8 @@
|
|||
# TODO: not updated since rename from level_instance, or since we redid how all models are done; probably busted
|
||||
|
||||
mongoose = require('mongoose')
|
||||
plugins = require('./plugins')
|
||||
jsonschema = require('../schemas/level_feedback')
|
||||
plugins = require('../../plugins/plugins')
|
||||
jsonschema = require('./level_feedback_schema')
|
||||
|
||||
LevelFeedbackSchema = new mongoose.Schema({
|
||||
created:
|
|
@ -1,5 +1,5 @@
|
|||
LevelFeedback = require('../models/LevelFeedback')
|
||||
Handler = require('./Handler')
|
||||
LevelFeedback = require('./LevelFeedback')
|
||||
Handler = require('../../commons/Handler')
|
||||
|
||||
class LevelFeedbackHandler extends Handler
|
||||
modelClass: LevelFeedback
|
|
@ -1,4 +1,4 @@
|
|||
c = require './common'
|
||||
c = require '../../commons/schemas'
|
||||
|
||||
LevelFeedbackLevelSchema = c.object {required: ['original', 'majorVersion']}, {
|
||||
original: c.objectId({})
|
|
@ -1,10 +1,8 @@
|
|||
winston = require('winston')
|
||||
request = require('request')
|
||||
Level = require('../models/Level')
|
||||
Session = require('../models/LevelSession')
|
||||
SessionHandler = require('./level_session')
|
||||
Feedback = require('../models/LevelFeedback')
|
||||
Handler = require('./Handler')
|
||||
Level = require('./Level')
|
||||
Session = require('./sessions/LevelSession')
|
||||
SessionHandler = require('./sessions/level_session_handler')
|
||||
Feedback = require('./feedbacks/LevelFeedback')
|
||||
Handler = require('../commons/Handler')
|
||||
mongoose = require('mongoose')
|
||||
|
||||
LevelHandler = class LevelHandler extends Handler
|
|
@ -1,5 +1,5 @@
|
|||
c = require './common'
|
||||
ThangComponentSchema = require './thang_component'
|
||||
c = require '../commons/schemas'
|
||||
ThangComponentSchema = require './thangs/thang_component_schema'
|
||||
|
||||
SpecificArticleSchema = c.object()
|
||||
c.extendNamedProperties SpecificArticleSchema # name first
|
|
@ -1,8 +1,8 @@
|
|||
# TODO: not updated since rename from level_instance, or since we redid how all models are done; probably busted
|
||||
|
||||
mongoose = require('mongoose')
|
||||
plugins = require('./plugins')
|
||||
jsonschema = require('../schemas/level_session')
|
||||
plugins = require('../../plugins/plugins')
|
||||
jsonschema = require('./level_session_schema')
|
||||
|
||||
LevelSessionSchema = new mongoose.Schema({
|
||||
created:
|
|
@ -1,5 +1,5 @@
|
|||
LevelSession = require('../models/LevelSession')
|
||||
Handler = require('./Handler')
|
||||
LevelSession = require('./LevelSession')
|
||||
Handler = require('../../commons/Handler')
|
||||
|
||||
TIMEOUT = 1000 * 30 # no activity for 30 seconds means it's not active
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
c = require './common'
|
||||
c = require '../../commons/schemas'
|
||||
|
||||
LevelSessionPlayerSchema = c.object {
|
||||
id: c.objectId(links: [{rel: 'extra', href: "/db/user/{($)}"}])
|
|
@ -1,6 +1,6 @@
|
|||
mongoose = require('mongoose')
|
||||
plugins = require('./plugins')
|
||||
jsonschema = require('../schemas/level_system')
|
||||
plugins = require('../../plugins/plugins')
|
||||
jsonschema = require('./level_system_schema')
|
||||
|
||||
LevelSystemSchema = new mongoose.Schema {
|
||||
description: String
|
|
@ -1,7 +1,5 @@
|
|||
winston = require('winston')
|
||||
request = require('request')
|
||||
LevelSystem = require('../models/LevelSystem')
|
||||
Handler = require('./Handler')
|
||||
LevelSystem = require('./LevelSystem')
|
||||
Handler = require('../../commons/Handler')
|
||||
|
||||
LevelSystemHandler = class LevelSystemHandler extends Handler
|
||||
modelClass: LevelSystem
|
|
@ -1,5 +1,5 @@
|
|||
c = require './common'
|
||||
metaschema = require './metaschema'
|
||||
c = require '../../commons/schemas'
|
||||
metaschema = require '../../commons/metaschema'
|
||||
|
||||
jitterSystemCode = """
|
||||
class Jitter extends System
|
|
@ -1,5 +1,5 @@
|
|||
mongoose = require('mongoose')
|
||||
plugins = require('./plugins')
|
||||
plugins = require('../../plugins/plugins')
|
||||
|
||||
LevelComponentSchema = new mongoose.Schema(
|
||||
original: {type: mongoose.Schema.ObjectId, ref: 'level.session'}
|
|
@ -1,5 +1,5 @@
|
|||
mongoose = require('mongoose')
|
||||
plugins = require('./plugins')
|
||||
plugins = require('../../plugins/plugins')
|
||||
|
||||
ThangTypeSchema = new mongoose.Schema({
|
||||
body: String,
|
|
@ -1,4 +1,4 @@
|
|||
c = require './common'
|
||||
c = require '../../commons/schemas'
|
||||
|
||||
module.exports = ThangComponentSchema = c.object {
|
||||
title: "Component"
|
|
@ -1,7 +1,7 @@
|
|||
winston = require('winston')
|
||||
request = require('request')
|
||||
ThangType = require('../models/ThangType')
|
||||
Handler = require('./Handler')
|
||||
ThangType = require('./ThangType')
|
||||
Handler = require('../../commons/Handler')
|
||||
|
||||
ThangTypeHandler = class ThangTypeHandler extends Handler
|
||||
modelClass: ThangType
|
|
@ -1,5 +1,5 @@
|
|||
c = require './common'
|
||||
ThangComponentSchema = require './thang_component'
|
||||
c = require '../../commons/schemas'
|
||||
ThangComponentSchema = require './thang_component_schema'
|
||||
|
||||
ThangTypeSchema = c.object()
|
||||
c.extendNamedProperties ThangTypeSchema # name first
|
|
@ -1,5 +1,5 @@
|
|||
mongoose = require('mongoose')
|
||||
User = require('./User')
|
||||
User = require('../users/User')
|
||||
textSearch = require('mongoose-text-search')
|
||||
|
||||
module.exports.NamedPlugin = (schema) ->
|
|
@ -1,11 +1,11 @@
|
|||
passport = require('passport')
|
||||
winston = require('winston')
|
||||
LocalStrategy = require('passport-local').Strategy
|
||||
User = require('./models/User')
|
||||
UserHandler = require('./handlers/user')
|
||||
config = require '../server_config'
|
||||
User = require('../users/User')
|
||||
UserHandler = require('../users/user_handler')
|
||||
config = require '../../server_config'
|
||||
nodemailer = require 'nodemailer'
|
||||
errors = require './errors'
|
||||
errors = require '../commons/errors'
|
||||
|
||||
module.exports.setupRoutes = (app) ->
|
||||
passport.serializeUser((user, done) -> done(null, user._id))
|
|
@ -1,4 +1,4 @@
|
|||
config = require '../server_config'
|
||||
config = require '../../server_config'
|
||||
winston = require 'winston'
|
||||
nodemailer = require 'nodemailer'
|
||||
|
|
@ -1,12 +1,43 @@
|
|||
config = require '../server_config'
|
||||
config = require '../../server_config'
|
||||
winston = require 'winston'
|
||||
mongoose = require 'mongoose'
|
||||
Grid = require 'gridfs-stream'
|
||||
async = require 'async'
|
||||
errors = require './errors'
|
||||
errors = require '../commons/errors'
|
||||
|
||||
testing = '--unittest' in process.argv
|
||||
|
||||
|
||||
handlers =
|
||||
'article': '../../server/articles/article_handler'
|
||||
'campaign': '../../server/campaigns/campaign_handler'
|
||||
'campaign_status': '../../server/campaigns/campaign_status_handler'
|
||||
'file': '../../server/files/file_handler'
|
||||
'level': '../../server/levels/level_handler'
|
||||
'level_component': '../../server/levels/components/level_component_handler'
|
||||
'level_draft': '../../server/levels/drafts/level_draft_handler'
|
||||
'level_feedback': '../../server/levels/feedbacks/level_feedback_handler'
|
||||
'level_session': '../../server/levels/sessions/level_session_handler'
|
||||
'level_system': '../../server/levels/systems/level_system_handler'
|
||||
'thang_type': '../../server/levels/thangs/thang_type_handler'
|
||||
'user': '../../server/users/user_handler'
|
||||
|
||||
schemas =
|
||||
'article': '../../server/articles/article_schema'
|
||||
'common': '../../server/commons/schemas'
|
||||
#'file': '../../server/files/file_schema'
|
||||
'i18n': '../../server/commons/i18n_schema'
|
||||
'level': '../../server/levels/level_schema'
|
||||
'level_component': '../../server/levels/components/level_component_schema'
|
||||
'level_feedback': '../../server/levels/feedbacks/level_feedback_schema'
|
||||
'level_session': '../../server/levels/sessions/level_session_schema'
|
||||
'level_system': '../../server/levels/systems/level_system_schema'
|
||||
'metaschema': '../../server/commons/metaschema'
|
||||
'thang_component': '../../server/levels/thangs/thang_component_schema'
|
||||
'thang_type': '../../server/levels/thangs/thang_type_schema'
|
||||
'user': '../../server/users/user_schema'
|
||||
|
||||
|
||||
module.exports.connectDatabase = () ->
|
||||
dbName = config.mongo.db
|
||||
dbName += '_unittest' if testing
|
||||
|
@ -30,7 +61,8 @@ module.exports.setupRoutes = (app) ->
|
|||
return getSchema(req, res, module) if parts[1] is 'schema'
|
||||
|
||||
try
|
||||
name = "./handlers/#{module.replace '.', '_'}"
|
||||
moduleName = module.replace '.', '_'
|
||||
name = handlers[moduleName]
|
||||
module = require(name)
|
||||
return module.getLatestVersion(req, res, parts[1], parts[3]) if parts[2] is 'version'
|
||||
return module.versions(req, res, parts[1]) if parts[2] is 'versions'
|
||||
|
@ -47,8 +79,9 @@ module.exports.setupRoutes = (app) ->
|
|||
|
||||
getSchema = (req, res, moduleName) ->
|
||||
try
|
||||
name = "./schemas/#{moduleName.replace '.', '_'}"
|
||||
name = schemas[moduleName.replace '.', '_']
|
||||
schema = require(name)
|
||||
|
||||
res.send(schema)
|
||||
res.end()
|
||||
|
|
@ -3,7 +3,7 @@ Grid = require 'gridfs-stream'
|
|||
fs = require 'fs'
|
||||
request = require 'request'
|
||||
mongoose = require('mongoose')
|
||||
errors = require './errors'
|
||||
errors = require '../commons/errors'
|
||||
|
||||
module.exports.setupRoutes = (app) ->
|
||||
app.all '/file*', (req, res) ->
|
|
@ -1,7 +1,5 @@
|
|||
fs = require 'fs'
|
||||
request = require 'request'
|
||||
mongoose = require('mongoose')
|
||||
errors = require './errors'
|
||||
errors = require '../commons/errors'
|
||||
|
||||
module.exports.setupRoutes = (app) ->
|
||||
app.all '/folder*', (req, res) ->
|
|
@ -1,6 +1,6 @@
|
|||
errors = require './errors'
|
||||
errors = require '../commons/errors'
|
||||
winston = require 'winston'
|
||||
locale = require '../app/locale/locale' # requiring from app; will break if we stop serving from where app lives
|
||||
locale = require '../../app/locale/locale' # requiring from app; will break if we stop serving from where app lives
|
||||
|
||||
module.exports.setupRoutes = (app) ->
|
||||
app.all '/languages/add/:lang/:namespace', (req, res) ->
|
|
@ -1,5 +1,5 @@
|
|||
mongoose = require('mongoose')
|
||||
jsonschema = require('../schemas/user')
|
||||
jsonschema = require('./user_schema')
|
||||
crypto = require('crypto')
|
||||
{salt, isProduction} = require('../../server_config')
|
||||
|
|
@ -1,10 +1,9 @@
|
|||
winston = require('winston')
|
||||
schema = require('../schemas/user')
|
||||
schema = require('./user_schema')
|
||||
crypto = require('crypto')
|
||||
request = require('request')
|
||||
User = require('../models/User')
|
||||
Handler = require('./Handler')
|
||||
languages = require '../languages'
|
||||
User = require('./User')
|
||||
Handler = require('../commons/Handler')
|
||||
languages = require '../routes/languages'
|
||||
mongoose = require 'mongoose'
|
||||
config = require '../../server_config'
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
c = require './common'
|
||||
c = require '../commons/schemas'
|
||||
emailSubscriptions = ['announcement', 'tester', 'level_creator', 'developer', 'article_editor', 'translator', 'support', 'notification']
|
||||
|
||||
UserSchema = c.object {},
|
|
@ -6,24 +6,25 @@ _.str = require('underscore.string')
|
|||
_.mixin(_.str.exports())
|
||||
GLOBAL.mongoose = require 'mongoose'
|
||||
mongoose.connect('mongodb://localhost/coco_unittest')
|
||||
path = require('path')
|
||||
|
||||
models_path = '../../server/models/'
|
||||
|
||||
include_models = [
|
||||
'Article'
|
||||
'Campaign'
|
||||
'CampaignStatus'
|
||||
'Level'
|
||||
'LevelComponent'
|
||||
'LevelSystem'
|
||||
'LevelDraft'
|
||||
'LevelSession'
|
||||
'LevelThangType'
|
||||
'User'
|
||||
models_path = [
|
||||
'../../server/articles/Article'
|
||||
'../../server/campaigns/Campaign'
|
||||
'../../server/campaigns/CampaignStatus'
|
||||
'../../server/levels/Level'
|
||||
'../../server/levels/components/LevelComponent'
|
||||
'../../server/levels/systems/LevelSystem'
|
||||
'../../server/levels/drafts/LevelDraft'
|
||||
'../../server/levels/sessions/LevelSession'
|
||||
'../../server/levels/thangs/LevelThangType'
|
||||
'../../server/users/User'
|
||||
]
|
||||
|
||||
for m in include_models
|
||||
GLOBAL[m] = require models_path+m
|
||||
for m in models_path
|
||||
model = path.basename(m)
|
||||
#console.log('model=' + model)
|
||||
GLOBAL[model] = require m
|
||||
|
||||
async = require 'async'
|
||||
|
||||
|
|
|
@ -77,3 +77,10 @@ describe '/db/article', ->
|
|||
expect(res.statusCode).toBe(200)
|
||||
expect(body.name).toBe(new_article.name)
|
||||
done()
|
||||
|
||||
it 'get schema', (done) ->
|
||||
request.get {uri:url+'/schema'}, (err, res, body) ->
|
||||
expect(res.statusCode).toBe(200)
|
||||
body = JSON.parse(body)
|
||||
expect(body.type).toBeDefined()
|
||||
done()
|
||||
|
|
|
@ -7,7 +7,7 @@ describe 'Level', ->
|
|||
description: 'Climb a mountain.'
|
||||
permissions: simplePermissions
|
||||
|
||||
url = getURL('/db/level')
|
||||
urlLevel = '/db/level'
|
||||
|
||||
it 'clears things first', (done) ->
|
||||
clearModels [Level], (err) ->
|
||||
|
@ -16,6 +16,13 @@ describe 'Level', ->
|
|||
|
||||
it 'can make a Level.', (done) ->
|
||||
loginJoe ->
|
||||
request.post {uri:url, json:level}, (err, res, body) ->
|
||||
request.post {uri:getURL(urlLevel), json:level}, (err, res, body) ->
|
||||
expect(res.statusCode).toBe(200)
|
||||
done()
|
||||
done()
|
||||
|
||||
it 'get schema', (done) ->
|
||||
request.get {uri:getURL(urlLevel+'/schema')}, (err, res, body) ->
|
||||
expect(res.statusCode).toBe(200)
|
||||
body = JSON.parse(body)
|
||||
expect(body.type).toBeDefined()
|
||||
done()
|
||||
|
|
|
@ -139,3 +139,10 @@ describe 'LevelComponent', ->
|
|||
request.del {uri:url+'/'+components[0]._id}, (err, res) ->
|
||||
expect(res.statusCode).toBe(404)
|
||||
done()
|
||||
|
||||
it 'get schema', (done) ->
|
||||
request.get {uri:url+'/schema'}, (err, res, body) ->
|
||||
expect(res.statusCode).toBe(200)
|
||||
body = JSON.parse(body)
|
||||
expect(body.type).toBeDefined()
|
||||
done()
|
||||
|
|
12
test/server/handlers/level_feedback.spec.coffee
Normal file
12
test/server/handlers/level_feedback.spec.coffee
Normal file
|
@ -0,0 +1,12 @@
|
|||
require '../common'
|
||||
|
||||
describe 'LevelFeedback', ->
|
||||
|
||||
url = getURL('/db/level.feedback')
|
||||
|
||||
it 'get schema', (done) ->
|
||||
request.get {uri:url+'/schema'}, (err, res, body) ->
|
||||
expect(res.statusCode).toBe(200)
|
||||
body = JSON.parse(body)
|
||||
expect(body.type).toBeDefined()
|
||||
done()
|
12
test/server/handlers/level_session.spec.coffee
Normal file
12
test/server/handlers/level_session.spec.coffee
Normal file
|
@ -0,0 +1,12 @@
|
|||
require '../common'
|
||||
|
||||
describe 'LevelFeedback', ->
|
||||
|
||||
url = getURL('/db/level.session')
|
||||
|
||||
it 'get schema', (done) ->
|
||||
request.get {uri:url+'/schema'}, (err, res, body) ->
|
||||
expect(res.statusCode).toBe(200)
|
||||
body = JSON.parse(body)
|
||||
expect(body.type).toBeDefined()
|
||||
done()
|
|
@ -128,3 +128,10 @@ describe 'LevelSystem', ->
|
|||
request.del {uri:url+'/'+systems[0]._id}, (err, res) ->
|
||||
expect(res.statusCode).toBe(404)
|
||||
done()
|
||||
|
||||
it 'get schema', (done) ->
|
||||
request.get {uri:url+'/schema'}, (err, res, body) ->
|
||||
expect(res.statusCode).toBe(200)
|
||||
body = JSON.parse(body)
|
||||
expect(body.type).toBeDefined()
|
||||
done()
|
||||
|
|
12
test/server/handlers/level_thang_component.spec.coffee
Normal file
12
test/server/handlers/level_thang_component.spec.coffee
Normal file
|
@ -0,0 +1,12 @@
|
|||
require '../common'
|
||||
|
||||
describe 'Level Thang Component', ->
|
||||
|
||||
url = getURL('/db/thang.component')
|
||||
|
||||
it 'get schema', (done) ->
|
||||
request.get {uri:url+'/schema'}, (err, res, body) ->
|
||||
expect(res.statusCode).toBe(200)
|
||||
body = JSON.parse(body)
|
||||
expect(body.type).toBeDefined()
|
||||
done()
|
12
test/server/handlers/level_thang_type.spec.coffee
Normal file
12
test/server/handlers/level_thang_type.spec.coffee
Normal file
|
@ -0,0 +1,12 @@
|
|||
require '../common'
|
||||
|
||||
describe 'Level Thang Type', ->
|
||||
|
||||
url = getURL('/db/thang.type')
|
||||
|
||||
it 'get schema', (done) ->
|
||||
request.get {uri:url+'/schema'}, (err, res, body) ->
|
||||
expect(res.statusCode).toBe(200)
|
||||
body = JSON.parse(body)
|
||||
expect(body.type).toBeDefined()
|
||||
done()
|
|
@ -136,6 +136,13 @@ describe 'GET /db/user', ->
|
|||
form.append('username', 'admin@afc.com')
|
||||
form.append('password', '80yqxpb38j')
|
||||
|
||||
it 'get schema', (done) ->
|
||||
request.get {uri:getURL(urlUser+'/schema')}, (err, res, body) ->
|
||||
expect(res.statusCode).toBe(200)
|
||||
body = JSON.parse(body)
|
||||
expect(body.type).toBeDefined()
|
||||
done()
|
||||
|
||||
it 'is able to do a sweet query', (done) ->
|
||||
conditions = [
|
||||
['limit', 20]
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue