SCM

SCM Repository

[matrix] Diff of /pkg/tests/Class+Meth.R
ViewVC logotype

Diff of /pkg/tests/Class+Meth.R

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1225, Mon Mar 13 14:06:17 2006 UTC revision 1226, Mon Mar 13 14:07:58 2006 UTC
# Line 126  Line 126 
126                    ## improve: cat.(  captureOutput(show(m) ) )                    ## improve: cat.(  captureOutput(show(m) ) )
127                  else cat.("     -- no show() yet \n")                  else cat.("     -- no show() yet \n")
128    
129                  if(all(clNam != not.coerce0)) {## coer                  if(all(clNam != not.coerce0)) {## coerce to 'matrix'
130                      m.m <- as(m, "matrix")                      m.m <- as(m, "matrix")
131                      ## and test 'dim()' as well:                      ## and test 'dim()' as well:
132                      stopifnot(identical(dim(m.m), dim(m)))                      stopifnot(identical(dim(m.m), dim(m)))
133                  } else stopifnot(length(dim(m)) == 2)                  } else stopifnot(length(dim(m)) == 2)
134    
135    ### FIXME: organize differently :
136    ### 1) produce 'mM'  and 'mm' for the other cases,
137    ### 2) use identical code for all cases
138                  if(is(m, "dMatrix") && is(m, "compMatrix")) {                  if(is(m, "dMatrix") && is(m, "compMatrix")) {
139                      if(any(clNam == not.coerce1))                      if(any(clNam == not.coerce1))
140                          cat.("not coercable_1\n")                          cat.("not coercable_1\n")
# Line 139  Line 142 
142                          cat.("as(dge*, <class>): ")                          cat.("as(dge*, <class>): ")
143                          m2 <- as(mM, clNam)                          m2 <- as(mM, clNam)
144                          cat("valid:", validObject(m2), "\n")                          cat("valid:", validObject(m2), "\n")
145                            ## as.vector()
146                            stopifnot(as.vector(m2) == as.vector(mM))
147                      }                      }
148                      if(all(clNam != not.coerce2)) {                      if(all(clNam != not.coerce2)) {
149                          cat.("as(matrix, <class>): ")                          cat.("as(matrix, <class>): ")
# Line 147  Line 152 
152                      }                      }
153                  }                  }
154                  else { ## not numeric composite: logical / triangular/diagonal ..                  else { ## not numeric composite: logical / triangular/diagonal ..
155                        if(any(clNam == not.coerce1))
156                            cat.("not coercable_1\n")
157                        else {
158                      ## FIXME: also add tests for these                      ## FIXME: also add tests for these
159                      if(is(m, "triangularMatrix")) {                          if(is(m, "lMatrix")) {
160                            }
161                            else if(is(m, "triangularMatrix")) {
162                                mm. <- mm
163                                i0 <- if(m@uplo == "L")
164                                    upper.tri(mm.) else lower.tri(mm.)
165                                mm.[i0] <- 0
166                                cat.("as(matrix, <class>): ")
167                                m3 <- as(mm., clNam)
168                                cat("valid:", validObject(m3), "\n")
169                            }
170                            else { ## diagonal (only one)?
171                                ## TODO
172                            }
173                      }                      }
174                  }                  }
175    

Legend:
Removed from v.1225  
changed lines
  Added in v.1226

root@r-forge.r-project.org
ViewVC Help
Powered by ViewVC 1.0.0  
Thanks to:
Vienna University of Economics and Business University of Wisconsin - Madison Powered By FusionForge