You can subscribe to this list here.
2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(57) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2003 |
Jan
(44) |
Feb
(151) |
Mar
(131) |
Apr
(171) |
May
(125) |
Jun
(43) |
Jul
(26) |
Aug
(19) |
Sep
(10) |
Oct
|
Nov
(4) |
Dec
(28) |
2004 |
Jan
(134) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <de...@us...> - 2003-09-09 21:50:23
|
Update of /cvsroot/pymerase/pymerase/pymerase/input In directory sc8-pr-cvs1:/tmp/cvs-serv25406 Modified Files: parseXMI.py Log Message: Attempt to handle one to one links Index: parseXMI.py =================================================================== RCS file: /cvsroot/pymerase/pymerase/pymerase/input/parseXMI.py,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -d -r1.25 -r1.26 *** parseXMI.py 25 Jul 2003 00:41:07 -0000 1.25 --- parseXMI.py 9 Sep 2003 21:50:15 -0000 1.26 *************** *** 266,284 **** otherEndType = otherEnd.getType() if thisEnd.getMultiplicity() != fkeyTypes.OneToOne and otherEnd.getMultiplicity() != fkeyTypes.OneToOne: err = "Pymerase doesn't support Many To Many relationships"+ os.linesep err += "please add a linking table" warn(err, RuntimeWarning) - elif thisEnd.getMultiplicity() != fkeyTypes.OneToOne: - # put the key in this end - # FIXME: should we use the association name or the primary key name? - #fkeyName = otherEndType.getRootClass().getName(None) + "_fk" - fkeyName = otherEnd.getType().getName(None) + "_fk" - #fkeyName = thisEnd.getAssociation().getName(None) +"_fk" - if thisEndType.getAttributeByName(fkeyName, None) is None: - foreignKey = constructForeignKey(pymeraseConfig, - classesInModel, - fkeyName) - thisEndType.addAttribute(foreignKey) elif otherEnd.getMultiplicity() != fkeyTypes.OneToOne: # put the key in the other end #fkeyName = thisEndType.getRootClass().getName(None) + "_fk" --- 266,275 ---- otherEndType = otherEnd.getType() if thisEnd.getMultiplicity() != fkeyTypes.OneToOne and otherEnd.getMultiplicity() != fkeyTypes.OneToOne: + # Handle: (or at least faily informatively about many to many) err = "Pymerase doesn't support Many To Many relationships"+ os.linesep err += "please add a linking table" warn(err, RuntimeWarning) elif otherEnd.getMultiplicity() != fkeyTypes.OneToOne: + # Handle: one to many # put the key in the other end #fkeyName = thisEndType.getRootClass().getName(None) + "_fk" *************** *** 293,297 **** otherEndType.addAttribute(foreignKey) else: ! raise SyntaxError("Unrecognized multiplicity") --- 284,298 ---- otherEndType.addAttribute(foreignKey) else: ! # Handel: many to one or one to one ! # put the key in this end ! # FIXME: should we use the association name or the primary key name? ! #fkeyName = otherEndType.getRootClass().getName(None) + "_fk" ! fkeyName = otherEnd.getType().getName(None) + "_fk" ! #fkeyName = thisEnd.getAssociation().getName(None) +"_fk" ! if thisEndType.getAttributeByName(fkeyName, None) is None: ! foreignKey = constructForeignKey(pymeraseConfig, ! classesInModel, ! fkeyName) ! thisEndType.addAttribute(foreignKey) |
From: <mas...@us...> - 2003-08-22 04:14:20
|
Update of /cvsroot/pymerase/pymerase/examples/umlExamples In directory sc8-pr-cvs1:/tmp/cvs-serv28046/umlExamples Log Message: Directory /cvsroot/pymerase/pymerase/examples/umlExamples added to the repository |
From: <ki...@us...> - 2003-08-22 03:49:54
|
Update of /cvsroot/pymerase/pymerase/pymweb/cgi In directory sc8-pr-cvs1:/tmp/cvs-serv14305 Modified Files: pymweb.py Log Message: Fix for bug# 792162 Index: pymweb.py =================================================================== RCS file: /cvsroot/pymerase/pymerase/pymweb/cgi/pymweb.py,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** pymweb.py 8 Aug 2003 01:54:35 -0000 1.16 --- pymweb.py 20 Aug 2003 20:40:09 -0000 1.17 *************** *** 63,67 **** cd %s if [ -e %s ] ; then ! zip %s.zip %s > /dev/null else cat %s.bs --- 63,67 ---- cd %s if [ -e %s ] ; then ! zip -r %s.zip %s > /dev/null else cat %s.bs |
From: <mas...@us...> - 2003-08-21 23:51:29
|
Update of /cvsroot/pymerase/pymerase/examples/umlExamples In directory sc8-pr-cvs1:/tmp/cvs-serv28660/umlExamples Added Files: Automobile.zargo EstrogenExp.zargo README animal.zargo animal2.zargo author.zargo board.zargo bookshelf.zargo car.zargo computer.zargo house.zargo shoe.zargo Log Message: Various UML examples testing multiplicity. --- NEW FILE: Automobile.zargo --- (This appears to be a binary file; contents omitted.) --- NEW FILE: EstrogenExp.zargo --- (This appears to be a binary file; contents omitted.) --- NEW FILE: README --- simple Test Cases: Multiplicity Name Labeled Ends? author.zargo 0..* -> 1..* with label automobile.zargo none none //Have not tried testing board.zargo 0..1 -> 0..1 with label //Has problem reported bug bookshelf.zargo 1..* -> 0..1 with label car.zargo 1 -> 0..* without label computer.zargo 1..* -> 1 with label house.zargo 1 -> 1 without label //Has problem reported bug shoe.zargo 1 -> 0..1 with label //Had problem Complex Cases: Multiplicity Name Labeled Ends? animal.zargo 1..* -> 0..* with label //Has typing error animal2.zargo 1..* -> 0..* with label estrogen.zargo with label --- NEW FILE: animal.zargo --- (This appears to be a binary file; contents omitted.) --- NEW FILE: animal2.zargo --- (This appears to be a binary file; contents omitted.) --- NEW FILE: author.zargo --- (This appears to be a binary file; contents omitted.) --- NEW FILE: board.zargo --- (This appears to be a binary file; contents omitted.) --- NEW FILE: bookshelf.zargo --- (This appears to be a binary file; contents omitted.) --- NEW FILE: car.zargo --- (This appears to be a binary file; contents omitted.) --- NEW FILE: computer.zargo --- (This appears to be a binary file; contents omitted.) --- NEW FILE: house.zargo --- (This appears to be a binary file; contents omitted.) --- NEW FILE: shoe.zargo --- (This appears to be a binary file; contents omitted.) |
From: <ki...@us...> - 2003-08-14 00:21:50
|
Update of /cvsroot/pymerase/Docs/dev_road_map In directory sc8-pr-cvs1:/tmp/cvs-serv11771 Modified Files: dev_road_map.tex Log Message: Updated non-implemented features Index: dev_road_map.tex =================================================================== RCS file: /cvsroot/pymerase/Docs/dev_road_map/dev_road_map.tex,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** dev_road_map.tex 8 Aug 2003 21:34:59 -0000 1.1 --- dev_road_map.tex 14 Aug 2003 00:06:02 -0000 1.2 *************** *** 28,32 **** \author{Brandon King and Diane Trout \\ Copyright \copyright~ California Institute of Technology} ! \date{Version 0.1.1\\\today} \maketitle \thispagestyle{empty} --- 28,32 ---- \author{Brandon King and Diane Trout \\ Copyright \copyright~ California Institute of Technology} ! \date{Version 0.1.2\\\today} \maketitle \thispagestyle{empty} *************** *** 76,83 **** \bf RFE\# & \bf BUG\# & \bf Title & \bf Priority & \bf Sig. of Change & \bf Project Support \\ \hline & 785597 & Fix Type System & 7 & ! & A \\ \hline 785599 & & Support More of UML & 5 & ! & SM \\ \hline 693319 & & SSUML I-Module & 5 & - & S \\ \hline ! 785600 & & Java OM O-Module & & & \\ \hline ! & & & & & \\ \hline \end{tabular} --- 76,96 ---- \bf RFE\# & \bf BUG\# & \bf Title & \bf Priority & \bf Sig. of Change & \bf Project Support \\ \hline & 785597 & Fix Type System & 7 & ! & A \\ \hline + 769919 & & SeperateOM/Persist. Layer & 7 & ! & A \\ \hline 785599 & & Support More of UML & 5 & ! & SM \\ \hline + 769916 & & OO-Query & 5 & ! & A \\ \hline + 785608 & & XML Serialization & 4 & ! & M \\ \hline + 785614 & & OJB via Corba Serial & 8 & & S \\ \hline + 785600 & & Java OM O-Module & 6 & - & S \\ \hline 693319 & & SSUML I-Module & 5 & - & S \\ \hline ! 785601 & & IDL O-Module & 5 & - & S \\ \hline ! 693238 & & Single Sequence Support & 4 & - & G \\ \hline ! 693245 & & View Based Security & 4 & & G \\ \hline ! 693247 & & Sratch/Dynamic Support & 4 & & G \\ \hline ! 693243 & & Cursor Support & 4 & & G \\ \hline ! 742064 & & IDL I-Module & 1 & - & B \\ \hline ! 785611 & & Shelve Serialization & 1 & - & B\\ \hline ! 785616 & & Ouput module setup.py & 1 & - & B\\ \hline ! 769917 & & RDF Support & 1 & ? & B\\ \hline ! \end{tabular} |
From: <mas...@us...> - 2003-08-13 23:25:15
|
Update of /cvsroot/pymerase/Docs/install In directory sc8-pr-cvs1:/tmp/cvs-serv4973 Modified Files: install.tex Log Message: Spelling/Grammar Corrections Index: install.tex =================================================================== RCS file: /cvsroot/pymerase/Docs/install/install.tex,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** install.tex 7 May 2003 23:57:58 -0000 1.5 --- install.tex 13 Aug 2003 23:21:16 -0000 1.6 *************** *** 28,32 **** \author{Diane Trout \\ Copyright \copyright California Institute of Technology} ! \date{Version 0.1.5\\\today} \maketitle \thispagestyle{empty} --- 28,32 ---- \author{Diane Trout \\ Copyright \copyright California Institute of Technology} ! \date{Version 0.1.6\\\today} \maketitle \thispagestyle{empty} *************** *** 62,66 **** UML support is reasonably well supported now. ! At minimum pymerase requires an XML parser. The default python XML parser is called expat, newer versions are available at http://sourceforge.net/projects/pyxml. Later versions of this might --- 62,66 ---- UML support is reasonably well supported now. ! At minimum, pymerase requires an XML parser. The default python XML parser is called expat, newer versions are available at http://sourceforge.net/projects/pyxml. Later versions of this might *************** *** 95,99 **** Parsing UML files depends on the SMW library. Currently you'll need to ! download it from the SMW site and add then add the package to your python path. --- 95,99 ---- Parsing UML files depends on the SMW library. Currently you'll need to ! download it from the SMW site and add the package to your python path. *************** *** 115,117 **** feature, and so is currently dependent on postgresql. ! \end{document} \ No newline at end of file --- 115,117 ---- feature, and so is currently dependent on postgresql. ! \end{document} |
From: <mas...@us...> - 2003-08-13 23:21:22
|
Update of /cvsroot/pymerase/Docs/pymweb In directory sc8-pr-cvs1:/tmp/cvs-serv4630 Modified Files: ChangeLog pymweb-install.tex pymweb-manual.tex Log Message: Spelling/Grammar Correction Index: ChangeLog =================================================================== RCS file: /cvsroot/pymerase/Docs/pymweb/ChangeLog,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** ChangeLog 30 May 2003 02:44:47 -0000 1.2 --- ChangeLog 13 Aug 2003 23:19:35 -0000 1.3 *************** *** 1,2 **** --- 1,3 ---- + 2003-08-13 - Corrected minor grammatical errors 2003-05-29 - Pymweb Manual: Added Debugging Information *************** *** 8,10 **** Removed coming soon notice Added some URLs ! Minor wording changes \ No newline at end of file --- 9,11 ---- Removed coming soon notice Added some URLs ! Minor wording changes Index: pymweb-install.tex =================================================================== RCS file: /cvsroot/pymerase/Docs/pymweb/pymweb-install.tex,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** pymweb-install.tex 30 May 2003 02:40:18 -0000 1.3 --- pymweb-install.tex 13 Aug 2003 23:19:35 -0000 1.4 *************** *** 28,32 **** \author{Brandon King \\ Copyright \copyright ~2003 California Institute of Technology} ! \date{Version 0.1.3\\\today} \maketitle \thispagestyle{empty} --- 28,32 ---- \author{Brandon King \\ Copyright \copyright ~2003 California Institute of Technology} ! \date{Version 0.1.4\\\today} \maketitle \thispagestyle{empty} *************** *** 135,139 **** \end{verbatim} ! Once you have made the change, you will need to restart apache. You can do so by running the following command on a Debian system: --- 135,139 ---- \end{verbatim} ! Once you have made the changes, you will need to restart apache. You can do so by running the following command on a Debian system: *************** *** 160,162 **** questions or need help debuging. ! \end{document} \ No newline at end of file --- 160,162 ---- questions or need help debuging. ! \end{document} Index: pymweb-manual.tex =================================================================== RCS file: /cvsroot/pymerase/Docs/pymweb/pymweb-manual.tex,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** pymweb-manual.tex 30 May 2003 02:40:18 -0000 1.3 --- pymweb-manual.tex 13 Aug 2003 23:19:35 -0000 1.4 *************** *** 28,32 **** \author{Brandon King \\ Copyright \copyright ~2003 California Institute of Technology} ! \date{Version 0.1.3\\\today} \maketitle \thispagestyle{empty} --- 28,32 ---- \author{Brandon King \\ Copyright \copyright ~2003 California Institute of Technology} ! \date{Version 0.1.4\\\today} \maketitle \thispagestyle{empty} *************** *** 43,48 **** \subsection{\cb Description} Pymweb is a web front end for Pymerase. The goal of Pymweb is to ! provide a method of allowing multiple people to use Pymerase without ! having to install Pymerase on their computer. \subsection{\cb Installation} --- 43,48 ---- \subsection{\cb Description} Pymweb is a web front end for Pymerase. The goal of Pymweb is to ! provide a method for allowing multiple people to use Pymerase without ! having to install Pymerase onto their computer. \subsection{\cb Installation} *************** *** 64,69 **** In Figure 1, you will find a screenshot of the Pymweb which you can ! reference as I briefly describe it's use. I will go into more detail ! in subsequent sections. There a five things you need to provide for Pymerase to work properly. First, you need to provide a schema. Second, choose which input module you would like to --- 64,69 ---- In Figure 1, you will find a screenshot of the Pymweb which you can ! reference as I briefly describe its use. I will go into more detail ! in subsequent sections. There are five things you need to provide for Pymerase to work properly. First, you need to provide a schema. Second, choose which input module you would like to *************** *** 74,83 **** destination file name or directory name depending on the output module you choose. And last but not least, you should choose what type of ! compression do you want Pymweb to use on your output file. \subsection{\cb Schema} In Pymerase, there are currently two methods you can use for defining ! a schema; UML or XML. \subsubsection{\cb UML/XMI}\label{xmi} --- 74,83 ---- destination file name or directory name depending on the output module you choose. And last but not least, you should choose what type of ! compression you want Pymweb to use on your output file. \subsection{\cb Schema} In Pymerase, there are currently two methods you can use for defining ! a schema: UML or XML. \subsubsection{\cb UML/XMI}\label{xmi} *************** *** 98,102 **** \subsubsection{\cb table.dtd XML}\label{table.dtd} If you have decided to use the table.dtd XML format, things will be a ! little bit more complicate when using Pymweb, but it's still manageable. --- 98,102 ---- \subsubsection{\cb table.dtd XML}\label{table.dtd} If you have decided to use the table.dtd XML format, things will be a ! little bit more complicated when using Pymweb, but it's still manageable. *************** *** 108,113 **** called 'schema.tar.gz'. ! In case I have managed to confuse some people, here is a ficitious ! directory tree that I will us as an example. \begin{verbatim} --- 108,113 ---- called 'schema.tar.gz'. ! In case I have managed to confuse some people, here is a fictitious ! directory tree that I will use as an example. \begin{verbatim} *************** *** 162,180 **** \subsection{\cb Output File/Dir Name} Every output module has a different type of output, so you need to ! give a proper output name for them work correctly. If you take a look at the 'Output' format column in section \ref{output}, you will see what type of output each module generates. This table should by mostly ! sufficiant in guiding you in choosing a File or Directory name. Although a few output modules are a little sensitive to the ! names you choose. Below is more information you will need to know about the output modules and their output. \subsubsection{\cb CreateDBAPI} ! CreateDBAPI creates a Python package (directory of python files) that need to know about the name of their package. If you are using UML/XMI, it's currently defined as the namespace, or package. So, if you followed 'Pymerase Docs - ArgoUML for Pymerase', ! there is a step where you change the name of the namespace. What ever you entered as the name of the namespace, is the name you should use as the output directory name in Pymweb. If you do not do this, you --- 162,180 ---- \subsection{\cb Output File/Dir Name} Every output module has a different type of output, so you need to ! give a proper output name for them to work correctly. If you take a look at the 'Output' format column in section \ref{output}, you will see what type of output each module generates. This table should by mostly ! sufficient in guiding you to choosing a File or Directory name. Although a few output modules are a little sensitive to the ! names you choose, below is more information you will need to know about the output modules and their output. \subsubsection{\cb CreateDBAPI} ! CreateDBAPI creates a Python package (directory of python files) that you need to know about the name of their package. If you are using UML/XMI, it's currently defined as the namespace, or package. So, if you followed 'Pymerase Docs - ArgoUML for Pymerase', ! there is a step where you change the name of the namespace. Whatever you entered as the name of the namespace, is the name you should use as the output directory name in Pymweb. If you do not do this, you *************** *** 210,214 **** implemented in the current CreatePyTkDBWidgets. One-to-many and many-to-many associations need to be implemented before it will be ! complete. I can still be useful in it's current state, and you can always sub-class the Entry library files to implement your own features. --- 210,214 ---- implemented in the current CreatePyTkDBWidgets. One-to-many and many-to-many associations need to be implemented before it will be ! complete. It can still be useful in it's current state, and you can always sub-class the Entry library files to implement your own features. *************** *** 225,229 **** Tar \& Gzip is most common on Linux/Unix based systems. Zip is most ! common on Windows systems. None is offered to make downloads easier for single file downloads, and for debuging. --- 225,229 ---- Tar \& Gzip is most common on Linux/Unix based systems. Zip is most ! common on Windows systems. Option None is offered to make downloads easier for single file downloads, and for debuging. *************** *** 280,282 **** it to this documentation. ! \end{document} \ No newline at end of file --- 280,282 ---- it to this documentation. ! \end{document} |
From: <mas...@us...> - 2003-08-13 23:17:16
|
Update of /cvsroot/pymerase/Docs/linkDB-tutorial In directory sc8-pr-cvs1:/tmp/cvs-serv4010 Modified Files: linkdb-tutorial.tex Log Message: Spelling/Grammar Corrections Index: linkdb-tutorial.tex =================================================================== RCS file: /cvsroot/pymerase/Docs/linkDB-tutorial/linkdb-tutorial.tex,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** linkdb-tutorial.tex 30 Apr 2003 23:45:44 -0000 1.7 --- linkdb-tutorial.tex 13 Aug 2003 23:16:35 -0000 1.8 *************** *** 33,37 **** \author{Brandon King \\ Copyright \copyright 2003 California Institute of Technology} ! \date{Version 0.1.7\\\today} \maketitle \thispagestyle{empty} --- 33,37 ---- \author{Brandon King \\ Copyright \copyright 2003 California Institute of Technology} ! \date{Version 0.1.8\\\today} \maketitle \thispagestyle{empty} *************** *** 49,53 **** simple application to help us with the task of updating keywords on a webpage with links. Why might we want to create such a program? For ! example, you might be writting a webpage about all your favorate Python modules and what you've done with them. If you decide you want to create a link to http://www.python.org/ every time the word 'Python' --- 49,53 ---- simple application to help us with the task of updating keywords on a webpage with links. Why might we want to create such a program? For ! example, you might be writting a webpage about all your favorite Python modules and what you've done with them. If you decide you want to create a link to http://www.python.org/ every time the word 'Python' *************** *** 130,135 **** \section{\cb Tutorial: LinkDB Schema} \subsection{\cb Description}\label{linkdb-desc} ! Now that we know what we want to do we have to design the ! schema. If you haven't read section \ref{the_goal}, you may want to do so now. There are two ways that currently exist in Pymerase. An XML format defined by table.dtd. If you decide to use this format, you --- 130,135 ---- \section{\cb Tutorial: LinkDB Schema} \subsection{\cb Description}\label{linkdb-desc} ! Now that we know what we want to do we have to design that schema. If you ! haven't read section \ref{the_goal}, you may want to do so now. There are two ways that currently exist in Pymerase. An XML format defined by table.dtd. If you decide to use this format, you *************** *** 361,365 **** \subsection{\cb CreateSQL} ! Time to create the sql for the database. Executed the following command. --- 361,365 ---- \subsection{\cb CreateSQL} ! Time to create the sql for the database. Execute the following command. *************** *** 426,430 **** \subsection{\cb CreatePyTkWidgets} ! Excute the following command to generate the Python Tkinter Widget library for your schema. --- 426,430 ---- \subsection{\cb CreatePyTkWidgets} ! Execute the following command to generate the Python Tkinter Widget library for your schema. *************** *** 452,456 **** All \emph{allOther}Widget.py files can be executed to see if they were ! contstructed properly. They don't do much in this state, but the have functions for getting and setting the ValiditingEntrys. Each of widgets can be subclassed and given save() and load() functions which --- 452,456 ---- All \emph{allOther}Widget.py files can be executed to see if they were ! constructed properly. They don't do much in this state, but they have functions for getting and setting the ValiditingEntrys. Each of widgets can be subclassed and given save() and load() functions which *************** *** 465,469 **** The widgets will need a copy of the LinkAPI package you generated in section \ref{linkapi}. You can copy, move, or create a symbolic link ! for this purpose. Excute the following command to copy the pakage from your tutorial directory into the widget directory. --- 465,469 ---- The widgets will need a copy of the LinkAPI package you generated in section \ref{linkapi}. You can copy, move, or create a symbolic link ! for this purpose. Execute the following command to copy the package from your tutorial directory into the widget directory. *************** *** 472,477 **** \end{verbatim} ! \subsection{\cb CreatePyTkDBWidgets}\label{pytkdb} ! Excute the following command to generate the Python Tkinter Database Widget library for your schema. --- 472,477 ---- \end{verbatim} ! \subsection{\cb CreaetePyTkDBWidgets}\label{pytkdb}co ! Execute the following command to generate the Python Tkinter Database Widget library for your schema. *************** *** 486,490 **** your widget directory. Each of these programs can be executed upon creation. Each one if hooked up to the generic DB connection widget ! and will prompt for infomation neccisary to connect to the database. It can become annoying sometimes when you have to enter that information every time you want to connect to the same database. So, --- 486,490 ---- your widget directory. Each of these programs can be executed upon creation. Each one if hooked up to the generic DB connection widget ! and will prompt for infomation necessary to connect to the database. It can become annoying sometimes when you have to enter that information every time you want to connect to the same database. So, *************** *** 525,531 **** \end{verbatim} ! If you get the message 'CREATE DATABASE', the command succeded. Next you need to feed the SQL statements into the database to generate the ! proper tables. User the following command. \begin{verbatim} --- 525,531 ---- \end{verbatim} ! If you get the message 'CREATE DATABASE', the command succeeded. Next you need to feed the SQL statements into the database to generate the ! proper tables. Use the following command. \begin{verbatim} *************** *** 548,552 **** \subsection{\cb Input Data Using DB Widgets} Now that we have our database, lets put some data in it for us to ! use. Goto the widgets directory in your tutorial directory. Execute the following command. --- 548,552 ---- \subsection{\cb Input Data Using DB Widgets} Now that we have our database, lets put some data in it for us to ! use. Go to the widgets directory in your tutorial directory. Execute the following command. *************** *** 624,632 **** file included in the linkDB example included with Pymerase, or you can reference the same program in the appendix on page ! \pageref{cmdline}. Or if your really daring, you can right it yourself from scratch. If you decide to use the appendix or example code provided, the python ! code is commented and should be fairly self explanitory. If you don't agree or you run into problems, post to the mailing list mentioned in section \ref{pymdevel} are always welcome. --- 624,632 ---- file included in the linkDB example included with Pymerase, or you can reference the same program in the appendix on page ! \pageref{cmdline}. Or if you're really daring, you can write it yourself from scratch. If you decide to use the appendix or example code provided, the python ! code is commented and should be fairly self explanatory. If you don't agree or you run into problems, post to the mailing list mentioned in section \ref{pymdevel} are always welcome. *************** *** 645,649 **** and replaces them with a link. ! Useage: linker.py [options] -g group -f file --- 645,649 ---- and replaces them with a link. ! Usage: linker.py [options] -g group -f file *************** *** 666,670 **** \subsection{\cb Prepare the HTML File} ! Before we can test the program we need an html file to use. Create a new text file called 'tutorial.html' and paste in the html code below. --- 666,670 ---- \subsection{\cb Prepare the HTML File} ! Before we can test the program we need a html file to use. Create a new text file called 'tutorial.html' and paste in the html code below. *************** *** 703,707 **** 'tutorial.html' file in a file called 'tutorial.html.bak'. ! The end result if everything went well should look like the following. \begin{verbatim} --- 703,707 ---- 'tutorial.html' file in a file called 'tutorial.html.bak'. ! The end result, if everything went well, should look like the following: \begin{verbatim} *************** *** 723,727 **** \subsection{\cb How You Can Help} ! If you have an questions, comments, ideas, spelling corrections etc., please voice your comments. Open Source projects strive on feedback from the community. If you would like to contibute to any part of the --- 723,727 ---- \subsection{\cb How You Can Help} ! If you have any questions, comments, ideas, spelling corrections etc., please voice your comments. Open Source projects strive on feedback from the community. If you would like to contibute to any part of the *************** *** 970,972 **** \end{document} ! %\printindex \ No newline at end of file --- 970,972 ---- \end{document} ! %\printindex |
From: <ki...@us...> - 2003-08-12 23:12:48
|
Update of /cvsroot/pymerase/htdocs/images In directory sc8-pr-cvs1:/tmp/cvs-serv6705 Added Files: pymerase-runpymweb.jpg pymerase-wiki.jpg Log Message: added two new buttons --- NEW FILE: pymerase-runpymweb.jpg --- (This appears to be a binary file; contents omitted.) --- NEW FILE: pymerase-wiki.jpg --- (This appears to be a binary file; contents omitted.) |
From: <ki...@us...> - 2003-08-12 23:11:10
|
Update of /cvsroot/pymerase/htdocs/menus In directory sc8-pr-cvs1:/tmp/cvs-serv7330 Modified Files: docs_menu.shtml main_menu.shtml Log Message: updated menus with wiki and pymweb Index: docs_menu.shtml =================================================================== RCS file: /cvsroot/pymerase/htdocs/menus/docs_menu.shtml,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** docs_menu.shtml 8 May 2003 01:18:10 -0000 1.8 --- docs_menu.shtml 12 Aug 2003 23:04:52 -0000 1.9 *************** *** 36,41 **** --- 36,46 ---- <a href="http://sourceforge.net/mail/?group_id=63836"> <img border="0" src="http://pymerase.sf.net/images/pymerase-mail_lists.jpg" width="108" height="31"></a><br> + <a href="http://pymerase.caltech.edu/"> + <img border="0" src="http://pymerase.sf.net/images/pymerase-runpymweb.jpg"></a><br> <a href="http://pymerase.sf.net/sysreq/"> <img border="0" src="http://pymerase.sf.net/images/pymerase-sysreq.jpg"></a><br> + + <a href="http://pymerase.caltech.edu/PymeraseWiki/"> + <img border="0" src="http://pymerase.sf.net/images/pymerase-wiki.jpg"></a><br> <!--#include virtual="/projhtml.cache" --> Index: main_menu.shtml =================================================================== RCS file: /cvsroot/pymerase/htdocs/menus/main_menu.shtml,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** main_menu.shtml 28 May 2003 20:07:38 -0000 1.10 --- main_menu.shtml 12 Aug 2003 23:04:52 -0000 1.11 *************** *** 22,27 **** --- 22,31 ---- <a href="http://sourceforge.net/mail/?group_id=63836"> <img border="0" src="http://pymerase.sf.net/images/pymerase-mail_lists.jpg" width="108" height="31"></a><br> + <a href="http://pymerase.caltech.edu/"> + <img border="0" src="http://pymerase.sf.net/images/pymerase-runpymweb.jpg"></a><br> <a href="http://pymerase.sf.net/sysreq/"> <img border="0" src="http://pymerase.sf.net/images/pymerase-sysreq.jpg"></a><br> + <a href="http://pymerase.caltech.edu/PymeraseWiki/"> + <img border="0" src="http://pymerase.sf.net/images/pymerase-wiki.jpg"></a><br> <table border=0 width="100%" bgcolor="#6C8AFF"> |
From: <ki...@us...> - 2003-08-11 18:09:08
|
Update of /cvsroot/pymerase/pymerase/pymweb/www In directory sc8-pr-cvs1:/tmp/cvs-serv14386 Modified Files: pymweb.html Log Message: updated web interface to include link to bug report page, etc. Index: pymweb.html =================================================================== RCS file: /cvsroot/pymerase/pymerase/pymweb/www/pymweb.html,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** pymweb.html 22 Jul 2003 00:54:01 -0000 1.11 --- pymweb.html 11 Aug 2003 17:57:28 -0000 1.12 *************** *** 3,14 **** <html> <head> ! <title>Pymerase Web</title> </head> <body> <table> <tr> <td> <div align="center"> ! <img src="/images/pymerase-title.jpg" alt="Pymerase v0.1"> <form action="cgi-bin/pymweb.py" method="POST" enctype="multipart/form-data"><br> <table> --- 3,68 ---- <html> <head> ! <title>Pymweb - Pymerase Web Interface</title> </head> <body> + <div align="center"> <table> <tr> <td> <div align="center"> ! <a href="http://pymerase.sf.net/"> ! <img src="/images/pymerase-title.jpg" border=0 alt="Pymerase"> ! </a> ! <h2>Welcome to Pymweb</h2> ! <p> ! If you find and bugs in Pymerase or Pymweb, <a ! href="http://sourceforge.net/tracker/?atid=505345&group_id=63836&func=browse"> ! click here</a> to file a bug report. ! </p> ! <p> ! <table> ! ! <tr> ! <td> ! <b>Resource</b> ! </td> ! <td> ! <b>Description</b> ! </td> ! </tr> ! ! <tr> ! <td> ! <a href="http://pymerase.sourceforge.net/docs/pymweb/"> ! Pymweb Docs</a> ! </td> ! <td> ! Pymweb Install & User Manuals ! </td> ! ! </tr> ! <tr> ! <td> ! <a href="http://pymerase.sourceforge.net"> ! Pymerase</a> ! </td> ! <td> ! Home Page of Pymerase ! </td> ! ! </tr> ! <tr> ! <td> ! <a href="http://woldlab.caltech.edu"> ! Wold Lab</a> ! </td> ! <td> ! Origional location of Pymerase Developement ! </td> ! ! </tr> ! </table> ! </p> ! <h2>Use the form below to run Pymerase via Pymweb</h2> <form action="cgi-bin/pymweb.py" method="POST" enctype="multipart/form-data"><br> <table> *************** *** 58,61 **** --- 112,116 ---- </tr> </table> + </div> </body> </html> |
From: <ki...@us...> - 2003-08-08 21:35:03
|
Update of /cvsroot/pymerase/Docs/dev_road_map In directory sc8-pr-cvs1:/tmp/cvs-serv8551 Added Files: dev_road_map.tex Log Message: Dev Road Map, start --- NEW FILE: dev_road_map.tex --- % Pymerase Docs - Template % Copyright (c) California Institute of Technology % % Authors: Brandon King % $Revision: 1.1 $ % Modified $Date: 2003/08/08 21:34:59 $ \documentclass{article} \usepackage{graphicx} \usepackage{color} \usepackage[margin=3cm,noheadfoot]{geometry} \setlength{\parindent}{0in} \setlength{\parskip}{2mm} %colors \newcommand{\cb}{\color{blue}} %new commands \newcommand{\pymlink}{http://pymerase.sf.net} %document \begin{document} %title page \begin{titlepage} \title{\cb Pymerase Docs - Development Road Map} \author{Brandon King and Diane Trout \\ Copyright \copyright~ California Institute of Technology} \date{Version 0.1.1\\\today} \maketitle \thispagestyle{empty} \end{titlepage} \tableofcontents \thispagestyle{empty} \newpage %Document Body \setcounter{page}{1} \section{\cb Development Road Map} \subsection{\cb Milestones} \begin{tabular}{c|l} \bf Milestone Number & \bf Requirements \\ \hline v0.2.0 & Fix remaining major bugs \\ \hline v0.2.* & Misc bug fixes and enhancements \\ \hline v0.3.0 & Fix type system \\ & Seperate Object Model and Persistance Layer \\ & Add additional UML support \\ \hline \end{tabular} \subsection{\cb Non-implemented Pymerase Features} Key - Significance of Change \begin{tabular}{c|c} \bf Symbol & \bf Meaning \\ \hline ! & Major \\ \hline - & Minor \\ \hline ? & Unknown \\ \hline \end{tabular} Key - Project Support \begin{tabular}{c|c} \bf Symbol & \bf Meaning \\ \hline A & All/General \\ \hline M & MAGE \\ \hline S & Sigmoid \\ \hline G & GeneX \\ \hline B & Bonus \\ \hline \end{tabular} \begin{tabular}{c|c|c|c|c|c} \bf RFE\# & \bf BUG\# & \bf Title & \bf Priority & \bf Sig. of Change & \bf Project Support \\ \hline & 785597 & Fix Type System & 7 & ! & A \\ \hline 785599 & & Support More of UML & 5 & ! & SM \\ \hline 693319 & & SSUML I-Module & 5 & - & S \\ \hline 785600 & & Java OM O-Module & & & \\ \hline & & & & & \\ \hline \end{tabular} \end{document} |
From: <ki...@us...> - 2003-08-08 21:34:28
|
Update of /cvsroot/pymerase/Docs/dev_road_map In directory sc8-pr-cvs1:/tmp/cvs-serv8457 Added Files: Makefile Log Message: for generating pdf file --- NEW FILE: Makefile --- dev_road_map.pdf: dev_road_map.tex rubber --pdf dev_road_map.tex gv dev_road_map.pdf |
From: <ki...@us...> - 2003-08-08 21:33:24
|
Update of /cvsroot/pymerase/Docs/dev_road_map In directory sc8-pr-cvs1:/tmp/cvs-serv8278/dev_road_map Log Message: Directory /cvsroot/pymerase/Docs/dev_road_map added to the repository |
From: <ki...@us...> - 2003-08-08 01:54:41
|
Update of /cvsroot/pymerase/pymerase/pymweb/cgi In directory sc8-pr-cvs1:/tmp/cvs-serv21134 Modified Files: pymweb.py Log Message: Added links bug reports, support requests, feature requests, patches, and mailing lists. Index: pymweb.py =================================================================== RCS file: /cvsroot/pymerase/pymerase/pymweb/cgi/pymweb.py,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** pymweb.py 30 May 2003 02:00:50 -0000 1.15 --- pymweb.py 8 Aug 2003 01:54:35 -0000 1.16 *************** *** 232,235 **** --- 232,255 ---- print text html += text + + text = "<b>Report Bug:</b> <a href=\"http://sourceforge.net/tracker/?atid=505345&group_id=63836&func=browse\">click here</a><br>\n" + print text + html += text + + text = "<b>Support Request:</b> <a href=\"http://sourceforge.net/tracker/?group_id=63836&atid=505346\">click here</a><br>\n" + print text + html += text + + text = "<b>Feature Request:</b> <a href=\"http://sourceforge.net/tracker/?group_id=63836&atid=505348\">click here</a><br>\n" + print text + html += text + + text = "<b>Patches:</b> <a href=\"http://sourceforge.net/tracker/?group_id=63836&atid=505347\">click here</a><br>\n" + print text + html += text + + text = "<b>Mailing Lists:</b> <a href=\"http://sourceforge.net/mail/?group_id=63836\">click here</a><br><br>\n\n" + print text + html += text form = cgi.FieldStorage() |
From: <mas...@us...> - 2003-08-07 22:38:03
|
Update of /cvsroot/pymerase/pymerase/tests/pymerase/util In directory sc8-pr-cvs1:/tmp/cvs-serv23073/util Added Files: TestNameMangling.py Log Message: Tests NameMangling --- NEW FILE: TestNameMangling.py --- #!/usr/bin/env python2.2 from __future__ import nested_scopes import copy import re import os import sys import string import types import unittest import pymerase from pymerase.util import NameMangling class TestNameMangling(unittest.TestCase): def testNullMangler(self): #tests mangle nullMangler = NameMangling.nullMangler() self.failUnless(nullMangler.mangle("test") == "test", "Mangle: test didn't equal test") #tests createGetter self.failUnless(nullMangler.createGetter("createGetter") == "getcreateGetter", "CreateGetter didn't equal") self.failUnless(nullMangler.createGetter("**createGetter") == "get**createGetter", "CreateGetter didn't equal") #tests createSetter self.failUnless(nullMangler.createSetter("createSetter") == "setcreateSetter", "CreateSetter didn't equal") self.failUnless(nullMangler.createSetter("**createSetter") == "set**createSetter", "CreateSetter didn't equal") #tests createAppender self.failUnless(nullMangler.createAppender("createAppender") == "appendcreateAppender", "CreateAppender didn't equal") self.failUnless(nullMangler.createAppender("**createAppender") == "append**createAppender", "CreateAppender didn't equal") def testCapWord(self): capword= NameMangling.CapWord() #tests lower -> uppercase self.failUnless(capword.mangle("checkinguppercase") == "Checkinguppercase") self.failUnless(capword.mangle("1upperCase") == "1upperCase") #test CapWord() self.failUnless(capword.mangle("upper_case") == "UpperCase") self.failUnless(capword.mangle("with spaces_Are Cool_") == "WithSpacesAreCool") self.failUnless(capword.mangle("_upper_ caSe") == "UpperCaSe") self.failUnless(capword.mangle("**upper_ 3case") == "**upper3case") self.failUnless(capword.mangle("3upper_3case") == "3upper3case") def testUnderscore_word(self): underscore = NameMangling.underscore_word() #tests for underscore words self.failUnless(underscore.mangle("Under_Scored_Word_") == "under_scored_word") self.failUnless(underscore.mangle("UNDER SCORE WORD") == "under_scored_word") self.failUnless(underscore.mangle("Under_3Scored") == "under_3_scored") self.failUnless(underscore.mangle("under_scored_word") == "under_scored_word") self.failUnless(underscore.mangle("UnderScoreWord") == "under_score_word") self.failUnless(underscore.mangle("3Upper 3Case") == "3_upper_3_Case") def testEnglishWord(self): english = NameMangling.EnglishWord() #tests English words self.failUnless(english.mangle("capitalized_words") == "Capitalized words") self.failUnless(english.mangle("CapitalizeWords") == "Capitalize words") self.failUnless(english.mangle("Capitalize_2_words") == "Capitalize 2 words") self.failUnless(english.mangle("tHIS is english") == "This is english") self.failUnless(english.mangle("3Upper_3case") == "3 upper 3case") def testLowercaseword(self): lowercase = NameMangling.lowercaseword() #tests Lowercasewords self.failUnless(lowercase.mangle("*$LOWER_case") == "*$lower_case") self.failUnless(lowercase.mangle("WITH_SPACES_LOWER") == "with_spaces_lower") self.failUnless(lowercase.mangle("Lower_3Case") == "lower_3case") self.failUnless(lowercase.mangle("THIS IS SPACED") == "this is spaced") self.failUnless(lowercase.mangle("3Upper_3CaSe") == "3upper_3case") def testRelationalKey(self): relation = NameMangling.RelationalKey() #test primaryKey self.failUnless(cmp(map(relation.getPrimaryKey, re.split(", ", "helpk, JOHNK, PuNPK, Pumpkin, pkorn, popPk")), re.split(", ", "helpk, JOHNK_pk, PuNPK, Pumpkin_pk, pkorn_pk, popPk")) == 0) self.failUnless(cmp(map(relation.getPrimaryKey, re.split(", ", "fkab, houseFK, fake, helpfK, popPk")), re.split (", ", "fkab_pk, housepk, fake_pk, helppk, popPk")) == 0) #test foreighKey self.failUnless(cmp(map(relation.getForeignKey, re.split(", ", "helpk, JOHNK, PuNPK, Pumpkin, pkorn, popPk")), re.split("," , "helpfk, JOHNK_fk, PuNfk, Pumpkin_fk, pkorn_fk, popfk")) == 0) self.failUnless(cmp(map(relation.getForeignKey, re.split(", ", "fkab, houseFK, fake, helpfK, popPk")), re.split(", ", "fkab_fk, houseFK, fake_fk, helpfK, popfk")) == 0) def suite(): return unittest.defaultTestLoader.loadTestsFromTestCase(TestNameMangling) if __name__ == "__main__": unittest.main(defaultTest="suite") |
From: <mas...@us...> - 2003-08-07 22:36:19
|
Update of /cvsroot/pymerase/pymerase/tests/pymerase/util In directory sc8-pr-cvs1:/tmp/cvs-serv22931/util Log Message: Directory /cvsroot/pymerase/pymerase/tests/pymerase/util added to the repository |
From: <de...@us...> - 2003-08-04 18:42:23
|
Update of /cvsroot/pymerase/pymerase/tests/pymerase In directory sc8-pr-cvs1:/tmp/cvs-serv22262/pymerase Added Files: TestClassMembers.py Log Message: Add some unit tests --- NEW FILE: TestClassMembers.py --- #!/usr/bin/env python2.2 from __future__ import nested_scopes import copy import os import re import string import sys import types import unittest import pymerase from pymerase import ClassMembers import pymerase.util.PymeraseType import pymerase.util.NameMangling #from pymerase.util import NameMangling class ClassMemberTestCases(unittest.TestCase): def setUp(self): self.config = pymerase.PymeraseConfig() nullMangler = pymerase.util.NameMangling.nullMangler() self.config.setNameMangler(nullMangler) def tearDown(self): self.config = None def testModelElement(self): """Test all the various functions of the ModelElement class """ # can we be named me = ClassMembers.ModelElement(self.config, "testModelElement") self.failUnless(me.getName(None) == "testModelElement") # does the friendly name default properly? self.failUnless(me.getFriendlyName() == "testModelElement") me.setFriendlyName("test the model") self.failUnless(me.getFriendlyName() == "test the model") # get description me.setDescription("this is a description") self.failUnless(me.getDescription() == "this is a description") # also get a minor test of PymeraseType me.setType(pymerase.util.PymeraseType.PymeraseType('integer')) self.failUnless(me.getType().getPythonTypeStr() == 'types.IntType') # cannot set a uuid to none try: me.setUUID(None) except RuntimeError, e: pass else: self.fail("me.setUUID(None) didn't fail") # get uuid me.setUUID('12345') self.failUnless(me.getUUID()=='12345') # make sure location list is maintained correctly self.failUnless(len(me.getLocations())==0) me.appendLocation('testCaseMembers: line 1234') self.failUnless(me.getLocations()[0] == 'testCaseMembers: line 1234') # does isDefined have the correct default? self.failUnless(not me.getDefined()) me.setDefined(1) self.failUnless(me.getDefined()) # test naming utilities self.failUnless(me.getGetterName(None) == 'gettestModelElement') self.failUnless(me.getSetterName(None) == 'settestModelElement') self.failUnless(me.getAppenderName(None) == 'appendtestModelElement') def testClassAttribute(self): """I bet you guessed this function tests the capabilities of ClassAttribute """ ca = ClassMembers.ClassAttribute(self.config, "testClassAttribute") # isRequired test self.failUnless(not ca.isRequired()) ca.setRequired(1) self.failUnless(ca.isRequired()) # isUnique self.failUnless(not ca.isUnique()) ca.setUnique(1) self.failUnless(ca.isUnique()) # is indexed? self.failUnless(not ca.isIndexed()) ca.setIndexed(1) self.failUnless(ca.isIndexed()) # does isKey start as false? self.failUnless(not ca.isKey()) # try setting as primary key self.failUnless(not ca.isPrimaryKey()) ca.setPrimaryKey(1) self.failUnless(ca.isPrimaryKey()) self.failUnless(ca.isKey()) # can't be both primary and foreign key? (I don't know if that should be # true, but I decided to code that) try: ca.setForeignKey(1) except ValueError, e: pass else: self.fail("a key cannot be both a primary and foreign key") # reset primary key to false to test foreign key ca.setPrimaryKey(0) self.failUnless(not ca.isPrimaryKey()) # test foreign key self.failUnless(not ca.isForeignKey()) ca.setForeignKey(1) self.failUnless(ca.isKey()) try: ca.setPrimaryKey(1) except ValueError, e: pass else: self.fail("a key cannot be both a primary and foreign key") def testAssociationEnd(self): """Test parts of an AssociationEnd that doesn't depend on being in an Association """ ae = ClassMembers.AssociationEnd(self.config, "testAssociationEnd") ae.setAttributeName('attribute') self.failUnless(ae.getAttributeName(None) == 'attribute') cmi = ClassMembers.ClassMetaInfo(self.config, 'ClassMetaInfo') ae.setType(cmi) self.failUnless(ae.getType() == cmi) self.failUnless(ae.getClassName(None) == 'ClassMetaInfo') self.failUnless(ae.getMultiplicity() is None) ae.setMultiplicity(1) self.failUnless(ae.getMultiplicity() == 1) self.failUnless(not ae.isNavigable()) ae.setNavigable(1) self.failUnless(ae.isNavigable()) self.failUnless(ae.getGetterName(None) == 'gettestAssociationEnd') self.failUnless(ae.getSetterName(None) == 'settestAssociationEnd') self.failUnless(ae.getAppenderName(None) == 'appendtestAssociationEnd') def testAssociation(self): """Test Association and AssociationEnd components that work in an association """ leftAE = ClassMembers.AssociationEnd(self.config, 'leftAssociationEnd') rightAE = ClassMembers.AssociationEnd(self.config, 'rightAssociationEnd') leftAE.setAttributeName('left') rightAE.setAttributeName('right') leftCMI = ClassMembers.ClassMetaInfo(self.config, 'leftCMI') rightCMI = ClassMembers.ClassMetaInfo(self.config, 'rightCMI') leftAE.setType(leftCMI) rightAE.setType(rightCMI) A = ClassMembers.createAssociation(self.config, leftAE, rightAE, "ends") self.failUnless(A.getName(None) == "ends") self.failUnless(len(A) == 2) self.failUnless(leftAE.getAssociation() == A) self.failUnless(rightAE.getAssociation() == A) self.failUnless(leftAE.getOppositeEnd() == rightAE) self.failUnless(rightAE.getOppositeEnd() == leftAE) A.removeAssociationEnd(leftAE) A.removeAssociationEnd(rightAE) self.failUnless(len(A) == 0) self.failUnless(leftAE.getAssociation() is None) self.failUnless(rightAE.getAssociation() is None) # test name construction A = ClassMembers.createAssociation(self.config, leftAE, rightAE) self.failUnless(A.getName(None) == 'leftAssociationEndrightAssociationEnd') def testClassMetaInfo(self): root1 = ClassMembers.ClassMetaInfo(self.config, "root1") root1Attrib = ClassMembers.ClassAttribute(self.config, 'root1Attrib') root2 = ClassMembers.ClassMetaInfo(self.config, "root2") root2Attrib = ClassMembers.ClassAttribute(self.config, 'root2Attrib') cmi = ClassMembers.ClassMetaInfo(self.config, "testClassMetaInfo") cmi.setFilename("/a/b/c/d") self.failUnless(cmi.getFilename() == "/a/b/c/d") self.failUnless(not cmi.getAbstract()) cmi.setAbstract(1) self.failUnless(cmi.getAbstract()) # FIXME: test adding an association end? attrib1 = ClassMembers.ClassAttribute(self.config, 'attrib1') attrib2 = ClassMembers.ClassAttribute(self.config, 'attrib2') self.failUnless(len(cmi.getAttributes() == 0)) cmi.addAttribute(attrib1) cmi.addAttribute(attrib2) self.failUnless(len(cmi.getAttributes() == 2)) self.failUnless(cmi.getAttributeByName('attrib1') == attrib1) self.failUnless(len(cmi.getAttributeNames()) == 2) self.failUnless('attrib1' in cmi.getAttributeNames()) cmi.appendBaseClass(root1) cmi.appendBaseClass(root2) self.failUnless(root1 in cmi.getBaseClasses()) self.failUnless('root1' in cmi.getBaseClassNames(None)) self.failUnless(root2 in cmi.getBaseClasses()) self.failUnless('root2' in cmi.getBaseClassNames(None)) self.failUnless(len(cmi.getBaseClasses()) == 2) self.failUnless(len(cmi.getBaseClassNames()) == 2) self.failUnless(not cmi.isRootClass()) self.failUnless(root1.isRootClass()) self.failUnless(root2.isRootClass()) self.failUnless(cmi.getRootClass() == root1) self.failUnless(cmi.getBasePrimaryKeyName(None) == 'root1Attrib_pk') self.failUnless(smi.getForeignKeyName(None) == 'testClassMetaInfo_fk') def suite(): return unittest.defaultTestLoader.loadTestsFromTestCase(ClassMemberTestCases) if __name__ == "__main__": unittest.main(defaultTest="suite") |
From: <de...@us...> - 2003-08-04 18:42:23
|
Update of /cvsroot/pymerase/pymerase/tests In directory sc8-pr-cvs1:/tmp/cvs-serv22262 Added Files: .cvsignore Log Message: Add some unit tests --- NEW FILE: .cvsignore --- *.pyc *.class |
From: <de...@us...> - 2003-08-04 18:30:35
|
Update of /cvsroot/pymerase/pymerase/tests/pymerase In directory sc8-pr-cvs1:/tmp/cvs-serv20439/pymerase Log Message: Directory /cvsroot/pymerase/pymerase/tests/pymerase added to the repository |
From: <ki...@us...> - 2003-07-25 02:18:38
|
Update of /cvsroot/pymerase/pymerase/pymerase/output In directory sc8-pr-cvs1:/tmp/cvs-serv20874 Modified Files: CreateDbTableBrowser.py Log Message: Defaulted to loading all object, otherwise error is thrown. Index: CreateDbTableBrowser.py =================================================================== RCS file: /cvsroot/pymerase/pymerase/pymerase/output/CreateDbTableBrowser.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** CreateDbTableBrowser.py 25 Jul 2003 02:03:20 -0000 1.3 --- CreateDbTableBrowser.py 25 Jul 2003 02:18:35 -0000 1.4 *************** *** 248,252 **** #FIXME: Need to have some way of overriding these values! ! dbs = DBSession('localhost', 'arab_oligo', 'king') if query is not None and field is not None: --- 248,252 ---- #FIXME: Need to have some way of overriding these values! ! dbs = DBSession('localhost', 'tabdata', 'king') if query is not None and field is not None: *************** *** 271,279 **** objList = dbs.getObjectsWhere(dbs.%CLASS_NAME%, '%s' % (sqlSearch)) else: ! #objList = dbs.getAllObjects(dbs.%CLASS_NAME%) ! tmpObj = dbs.%CLASS_NAME%() ! objList = dbs.getObjectsWhere(dbs.%CLASS_NAME%, ! '%s BETWEEN %s AND %s ORDER BY %s%s' % \\ ! (tmpObj.getPrimaryKeyName(), 1, 50, getField(sortField), sortDirect)) return objList --- 271,281 ---- objList = dbs.getObjectsWhere(dbs.%CLASS_NAME%, '%s' % (sqlSearch)) else: ! objList = dbs.getAllObjects(dbs.%CLASS_NAME%) ! #NOTE: Comment out the line above if number of objects is too large ! # Then uncomment the 4 lines below ! #tmpObj = dbs.%CLASS_NAME%() ! #objList = dbs.getObjectsWhere(dbs.%CLASS_NAME%, ! # '%s BETWEEN %s AND %s ORDER BY %s%s' % \\ ! # (tmpObj.getPrimaryKeyName(), 1, 50, getField(sortField), sortDirect)) return objList |
From: <ki...@us...> - 2003-07-25 02:03:23
|
Update of /cvsroot/pymerase/pymerase/pymerase/output In directory sc8-pr-cvs1:/tmp/cvs-serv18807 Modified Files: CreateDbTableBrowser.py Log Message: overlaping fields.pickle file... fixed Index: CreateDbTableBrowser.py =================================================================== RCS file: /cvsroot/pymerase/pymerase/pymerase/output/CreateDbTableBrowser.py,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** CreateDbTableBrowser.py 25 Jul 2003 01:58:19 -0000 1.2 --- CreateDbTableBrowser.py 25 Jul 2003 02:03:20 -0000 1.3 *************** *** 541,550 **** rec = dbs.%CLASS_NAME%() try: ! f = open(os.path.abspath('./data/fields.pickle'), 'r') FLD_LIST = pickle.load(f) f.close() except: FLD_LIST = rec.fields.values() ! f = open(os.path.abspath('./data/fields.pickle'), 'w') pickle.dump(FLD_LIST, f) f.close() --- 541,550 ---- rec = dbs.%CLASS_NAME%() try: ! f = open(os.path.abspath('./data/%PACKAGE_NAME%%CLASS_NAME%Fields.pickle'), 'r') FLD_LIST = pickle.load(f) f.close() except: FLD_LIST = rec.fields.values() ! f = open(os.path.abspath('./data/%PACKAGE_NAME%%CLASS_NAME%Fields.pickle'), 'w') pickle.dump(FLD_LIST, f) f.close() |
From: <ki...@us...> - 2003-07-25 01:58:23
|
Update of /cvsroot/pymerase/pymerase/pymerase/output In directory sc8-pr-cvs1:/tmp/cvs-serv17884 Modified Files: CreateDbTableBrowser.py Log Message: error generating cfg file name Index: CreateDbTableBrowser.py =================================================================== RCS file: /cvsroot/pymerase/pymerase/pymerase/output/CreateDbTableBrowser.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** CreateDbTableBrowser.py 19 Jul 2003 00:34:16 -0000 1.1 --- CreateDbTableBrowser.py 25 Jul 2003 01:58:19 -0000 1.2 *************** *** 114,118 **** #CONFIG FILE PATH ! CONFIG_FILE = os.path.abspath('./%PACKAGE_NAME%_%CLASS_NAME%.cfg') #DEFAULT DIRS --- 114,118 ---- #CONFIG FILE PATH ! CONFIG_FILE = os.path.abspath('./%PACKAGE_NAME%%CLASS_NAME%.cfg') #DEFAULT DIRS |
From: <ki...@us...> - 2003-07-25 01:49:29
|
Update of /cvsroot/pymerase/pymerase/pymerase/output In directory sc8-pr-cvs1:/tmp/cvs-serv16841 Modified Files: CreateTabDelimitedParser.py Log Message: made better defaults Index: CreateTabDelimitedParser.py =================================================================== RCS file: /cvsroot/pymerase/pymerase/pymerase/output/CreateTabDelimitedParser.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** CreateTabDelimitedParser.py 8 Jul 2003 00:49:41 -0000 1.3 --- CreateTabDelimitedParser.py 25 Jul 2003 01:49:25 -0000 1.4 *************** *** 278,283 **** if len(sys.argv) > 1: fileName = sys.argv[1] ! parser = %CLASSNAME%Parser() ! obj = parser.parse(fileName) print 'Data Parsed and returned', obj else: --- 278,283 ---- if len(sys.argv) > 1: fileName = sys.argv[1] ! parser = %CLASSNAME%Parser(%CLASSNAME%DbMaster) ! obj = parser.parse(fileName, startLine=1) print 'Data Parsed and returned', obj else: |
From: <de...@us...> - 2003-07-25 00:41:10
|
Update of /cvsroot/pymerase/pymerase/pymerase/input In directory sc8-pr-cvs1:/tmp/cvs-serv6376/pymerase/input Modified Files: parseXMI.py Log Message: Add support for tracking to see if something is a foreign key reference Index: parseXMI.py =================================================================== RCS file: /cvsroot/pymerase/pymerase/pymerase/input/parseXMI.py,v retrieving revision 1.24 retrieving revision 1.25 diff -C2 -d -r1.24 -r1.25 *** parseXMI.py 23 Jul 2003 01:53:09 -0000 1.24 --- parseXMI.py 25 Jul 2003 00:41:07 -0000 1.25 *************** *** 363,366 **** --- 363,367 ---- fkey = ClassAttribute(pymeraseConfig, attributeName) fkey.setType(PymeraseType('int')) + fkey.setForeignKey(1) return fkey |