Skip to content

Instantly share code, notes, and snippets.

@ChangJoo-Park
Created January 1, 2019 15:53
Show Gist options
  • Save ChangJoo-Park/038fa4bdefe75a7326819a40978b817f to your computer and use it in GitHub Desktop.
Save ChangJoo-Park/038fa4bdefe75a7326819a40978b817f to your computer and use it in GitHub Desktop.
Aqueduct Live and File Template
#set( $CAMEL_NAME = ${StringUtils.removeAndHump(${NAME})})
import 'package:aqueduct/aqueduct.dart';
import 'package:${PROJECT_NAME}/${PROJECT_NAME}.dart';
class ${CAMEL_NAME} extends ManagedObject<_${CAMEL_NAME}> implements _${CAMEL_NAME} {
@override
void willUpdate() {
}
@override
void willInsert() {
}
}
class _${CAMEL_NAME} {
@primaryKey
int id;
}
#set( $CAMEL_NAME = ${StringUtils.removeAndHump(${NAME})})
import 'package:aqueduct/aqueduct.dart';
import 'package:${PROJECT_NAME}/${PROJECT_NAME}.dart';
class ${CAMEL_NAME} extends ResourceController {
}
import 'harness/app.dart';
Future main() async {
final harness = Harness()..install();
test("Example", () async {
final response = await harness.agent.get("/path");
expectResponse(response, 200);
});
}
/// Bind Body
@Bind.body() $TYPE$ $CAMEL_TYPE$
/// Bind Header
@Bind.header("$HEADER_NAME$") String $CAMEL_HEADER_NAME$
/// Bind Path Variable
@Bind.path("$PATH_KEY$") String $CAMEL_PATH_KEY$
/// Bind Query Parameter
@Bind.query("$QUERY_KEY$") String $CAMEL_QUERY_KEY$
/// Managed Object Column
@Column($ATTRIBUTES$)
$TYPE$ $NAME$;
/// Operation Method
@Operation.$HTTP_METHOD$()
Future<Response> $LOWERCASE_HTTP_METHOD$() async {
}
/// Property Selector
(o) => o.$END$
/// Managed Object Relationship
@Relate(#$INVERSE$)
$TYPE$ $RELATIONSHIP_NAME$;
/// Test Case
test("$NAME$", () {
$END$
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment