mirror of
git://git.psyc.eu/libpsyc
synced 2024-08-15 03:19:02 +00:00
testRender now automaticable
This commit is contained in:
parent
d1ec497ef3
commit
b5f604c352
1 changed files with 13 additions and 37 deletions
|
@ -7,11 +7,11 @@
|
||||||
#define myUNI "psyc://10.100.1000/~ludwig"
|
#define myUNI "psyc://10.100.1000/~ludwig"
|
||||||
|
|
||||||
/* example renderer generating a presence packet */
|
/* example renderer generating a presence packet */
|
||||||
int writePresence(const char *avail, int availlen, const char *desc, int desclen)
|
int testPresence(const char *avail, int availlen, const char *desc, int desclen, const char *rendered)
|
||||||
{
|
{
|
||||||
psycModifier routing[] = {
|
psycModifier routing[] = {
|
||||||
psyc_newModifier2(C_GLYPH_OPERATOR_SET, PSYC_C2ARG("_source"), PSYC_C2ARG(myUNI),
|
// psyc_newModifier2(C_GLYPH_OPERATOR_SET, PSYC_C2ARG("_source"), PSYC_C2ARG(myUNI),
|
||||||
PSYC_MODIFIER_ROUTING),
|
// PSYC_MODIFIER_ROUTING),
|
||||||
psyc_newModifier2(C_GLYPH_OPERATOR_SET, PSYC_C2ARG("_context"), PSYC_C2ARG(myUNI),
|
psyc_newModifier2(C_GLYPH_OPERATOR_SET, PSYC_C2ARG("_context"), PSYC_C2ARG(myUNI),
|
||||||
PSYC_MODIFIER_ROUTING),
|
PSYC_MODIFIER_ROUTING),
|
||||||
};
|
};
|
||||||
|
@ -33,41 +33,17 @@ int writePresence(const char *avail, int availlen, const char *desc, int desclen
|
||||||
|
|
||||||
char buffer[512];
|
char buffer[512];
|
||||||
psyc_render(&packet, buffer, sizeof(buffer));
|
psyc_render(&packet, buffer, sizeof(buffer));
|
||||||
write(0, buffer, packet.length);
|
// write(0, buffer, packet.length);
|
||||||
|
return strncmp(rendered, buffer, packet.length);
|
||||||
/*
|
|
||||||
psycRenderState *pb; // a chunk of mem will host both struct and buf1
|
|
||||||
// char *t;
|
|
||||||
// unsigned int l;
|
|
||||||
|
|
||||||
unless (availlen) availlen = strlen(avail);
|
|
||||||
unless (desclen) desclen = strlen(desc);
|
|
||||||
|
|
||||||
if (!(pb = malloc(512))) {
|
|
||||||
P0(("Out of memory\n"))
|
|
||||||
return -1;
|
|
||||||
}
|
}
|
||||||
// if (psyc_initBuffer(pb, WHATEVER)) die("psyc_initBuffer hates me");
|
|
||||||
|
|
||||||
(void) psyc_renderModifier(pb, "_context", 0,
|
|
||||||
myUNI, sizeof(myUNI), PSYC_RENDER_ROUTING, 0);
|
|
||||||
|
|
||||||
// the first call to psyc_renderHeader() without PSYC_RENDER_ROUTING adds the
|
|
||||||
// extra newline to the buffer. later vars with PSYC_RENDER_ROUTING cause an error.
|
|
||||||
(void) psyc_renderModifier(pb, "_degree_availability", 0, avail, availlen, 0, C_GLYPH_OPERATOR_ASSIGN);
|
|
||||||
(void) psyc_renderModifier(pb, "_description_presence", 0, desc, desclen, 0, C_GLYPH_OPERATOR_ASSIGN);
|
|
||||||
// presence is to be assigned permanently in distributed state
|
|
||||||
|
|
||||||
(void) psyc_renderBody(pb, "_notice_presence", 0,
|
|
||||||
NULL, 0); // no data in packet
|
|
||||||
// (void) psyc_doneRender(pb, &t, &l);
|
|
||||||
// write(stdout, t, l);
|
|
||||||
free(pb);
|
|
||||||
*/
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
int main() {
|
int main() {
|
||||||
return writePresence(PSYC_C2ARG("_here"), PSYC_C2ARG("I'm omnipresent right now"));
|
return testPresence(PSYC_C2ARG("_here"), PSYC_C2ARG("I'm omnipresent right now"), "\
|
||||||
|
:_context\tpsyc://10.100.1000/~ludwig\n\
|
||||||
|
\n\
|
||||||
|
=_degree_availability\t_here\n\
|
||||||
|
=_description_presence\tI'm omnipresent right now\n\
|
||||||
|
_notice_presence\n\
|
||||||
|
|\n");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue